SSL

[教程] WordPress 网站部署 SSL 证书启用 HTTPS

小白向教程,只需两分钟,即可为网站部署好SSL证书。

WordPress 建站教程:Ubuntu20.04+Nginx+PHP 7.4+MySQL 搭建 WordPress 网站一文中,我们详细介绍了如何搭建 WordPress 网站。在网站部署好之后,我们需要给网站部署 SSL 证书,开启 HTTPS 加密访问。

什么是 HTTPS

HTTPS 代表”超文本传输协议安全”(Hypertext Transfer Protocol Secure),它是一种用于在互联网上安全传输数据的通信协议。HTTPS 通过加密数据来保护用户在浏览网页、发送信息或进行在线交易时的隐私和安全。

HTTPS 与 HTTP(超文本传输协议)类似,都用于传输网页和其他互联网资源,但有一个重要区别:HTTPS 使用加密技术来加密数据传输。这种加密过程使用 SSL(安全套接层)或其后继者 TLS(传输层安全)协议来实现。当你访问一个使用 HTTPS 的网站时,你会注意到网址以”https://”开头,而不是”http://”。

以下是 HTTPS 的一些关键特点和好处:

  1. 数据加密: HTTPS 使用加密算法将数据在客户端(你的计算机或设备)和服务器之间传输时进行加密。这意味着即使有人截获了数据流,他们也无法轻松地解读其中的内容,因为数据是加密的。
  2. 身份验证: HTTPS 还提供了对服务器身份的验证。这确保了你连接到的网站确实是你打算访问的网站,而不是恶意的仿冒网站。这种验证是通过 SSL 证书完成的。
  3. 信任和安全: 使用 HTTPS 可以建立用户对网站的信任,因为他们知道他们的数据受到保护。这对于敏感信息如信用卡号码、密码和个人资料的传输非常重要。
  4. 搜索引擎排名: 搜索引擎(如Google)通常更喜欢排名使用 HTTPS 的网站,因为它们提供更安全的用户体验。因此,使用 HTTPS 可以有助于提高你的网站在搜索结果中的排名。

总之,HTTPS是一种重要的安全协议,用于确保在互联网上传输的数据的保密性和完整性。越来越多的网站和在线服务正在采用HTTPS,以提供更高的安全性和隐私保护。用户在访问网站时,特别是在提供敏感信息时,应始终确保网站使用了HTTPS协议。

为什么要为网站部署 SSL 证书

网站部署 SSL 证书后,使用 HTTPS 加密协议访问,可激活客户端浏览器与网站服务器之间的 SSL 加密通道(SSL 协议),从而实现高强度双向加密传输,防止传输数据被泄露或篡改。

HTTPS 比 HTTP 更有利于搜索引擎的收录和排名。早在2014年,Google Search Central Blog 就已发文 HTTPS as a ranking signal 明确表示Google已经开始使用 HTTPS 作为影响搜索排名算法的信号之一。

HTTPS as a ranking signal

For these reasons, over the past few months we’ve been running tests taking into account whether sites use secure, encrypted connections as a signal in our search ranking algorithms. We’ve seen positive results, so we’re starting to use HTTPS as a ranking signal. (Thursday, August 07, 2014)

次年,百度站长平台也发布公告表示,百度搜索引擎认为权值相同的站点,采用 HTTPS 协议的页面更加安全,排名上会优先对待。

百度开放收录https站点公告

为了给用户提供一个安全可靠的网络环境,继启用 https 加密之后,百度搜索再次重磅推出:全面支持 https 页面直接收录;另外从相关性的角度,百度搜索引擎认为权值相同的站点,采用 https 协议的页面更加安全,排名上会优先对待

此次技术升级之后,百度搜索将同一个域名的 http 版和 https 版作为一个站点来处理,优先收录 https 页面;这种情况建议站长将 http 页面设置301跳转到对应的 https 页面。(2015年5月25日)

由此可见,无论我们的网站面向的是国内市场还是海外市场,给网站部署 SSL 证书,使用 HTTPS 加密访问都是很有必要的。

此外,部署 SSL 证书,是一个网站专业性的表现,是对用户信息安全负责的体现,“https” 开头的前缀及小锁标志,都可以在不同程度上给访问网站的用户带来安全感。

如何给网站部署 SSL 证书

为了在我们的网站上启用 HTTPS,我们需要从证书颁发机构(CA)获取证书(一种文件)。Let’s Encrypt 是一个证书颁发机构(CA),它可以免费为我们的网站域名颁发 SSL 证书。本文将以 Ubuntu 20.04 操作系统为例,演示如何为网站域名获取 Let’s Encrypt SSL 证书。

准备工作

  • 拥有需要获取 SSL 证书的网站域名
  • 拥有命令行访问权限

开始部署

本文档默认使用 root 用户操作。

1. SSH root 用户登录服务器。

2. 依次执行以下命令:

sudo apt update
sudo apt install certbot
sudo apt-get install python3-certbot-nginx
certbot --nginx

3. 输入用于接收证书续签通知提醒的个人邮箱,按 Enter 继续。

4. 输入 AEnter,同意服务条款;再输入 nEnter,不共享个人邮箱。

5. 输入对应序号选择想要申请证书的域名,按下 Enter,开始获取证书。

Which names would you like to activate HTTPS for?
 
1: example.com
 
Select the appropriate numbers separated by commas and/or spaces, or leave input blank to select all options shown (Enter 'c' to cancel): 1

6. 输入 12 以选择是否将 HTTP 流量重定向到 HTTPS,从而移除 HTTP 访问。 由于本教程演示的网站这是一个新站点,所以在这里我们输入 2 并按 Enter,将 HTTP 流量重定向到 HTTPS。

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
 
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration.
 
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

7. 执行以下命令开始创建一个更新证书的计划任务:

crontab -e

8. 输入 2Enter 继续:

Select an editor.  To change later, run 'select-editor'.
 /bin/nano        <---- easiest
 /usr/bin/vim.basic
 /usr/bin/vim.tiny
 /bin/ed 
 Choose 1-4 [1]: 2

9. 输入 i 键进入编辑模式。新起一行,添加以下命令:

0 0 */5 * * /usr/bin/certbot renew &>/var/log/certbot-renew.log

10. 添加好后,按下 Esc 退出编辑;按下 :wq 保存修改。


在浏览器中输入自己的网站域名访问站点。你将会看到网站已经开启了 HTTPS。而且,即使输入了 http: 格式的 URL 进行访问,网站也会自动跳转为 https: 格式的 URL。


Image by upklyak on Freepik

More Reading

Post navigation

Leave a Comment

Leave a Reply

Your email address will not be published. Required fields are marked *