本站启用HTTPS访问

本站自即日(2020年3月8日)起启用HTTPS访问。本文记述一下阿里云ECS启用HTTPS的过程。

HTTPS是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。在HTTP协议的基础上,HTTPS增加了SSL层,用于安全验证和加密。

本站部署在阿里云ECS上,因此启用HTTPS的第一步便是申请阿里云的SSL证书。在阿里云的管理控制台,点击左侧汉堡菜单,选择“产品与服务”->“安全(云盾)”->“SSL证书(应用安全)”。

选择“SSL证书(应用安全)”
选择“SSL证书(应用安全)”

在SSL证书管理控制台中,选择购买证书。不用担心,个人版的证书并不收费。在弹出的云盾证书服务页面中,选择“免费版(个人)”,其他选项选择默认即可。完毕后点击“确认支付”按钮,完成支付过程(0元)。

购买证书
购买证书
选择免费版证书
选择免费版证书

支付完毕后,在证书管理控制台页面便可以看到所有已申请证书。已签发的代表已经签发完毕可以应用的。未签发代表尚未申请或申请尚未审批完毕的。在未签发页签中,点击“证书申请”按钮,弹出证书申请页面。按照要求填写相关信息即可。若域名是通过万网或者阿里云申请的,则选择“自动DNS”即可。若不是,则需选择“手动DNS”,以便解析域名正常。点击下一步,验证相关信息。点击“验证”按钮,完成信息验证,然后点击“提交审核”,证书申请步骤则已完成。一般而言,快则一个小时,慢则一天证书即可申请完毕。证书签发成功后会有短信和邮件提示,注意查收即可。

申请证书
申请证书

完成证书申请后,需要将SSL证书部署到ECS上。在已签发页签中,选择“下载”按钮。根据Web页面的部署中间件,点击相应的“下载”。本站采用Apache部署,故选择Apache的“下载”按钮。下载后的压缩包解压备用。

下载证书
下载证书

不同部署中间件的具体方法可以点击“帮助”按钮。此处记录一下Apache的主要部署步骤。

1、为Apache添加SSL模块。一般的Apache在安装时均未默认安装SSL模块,需要先添加SSL模块。对于Cent OS系统而言,输入yum install mod_ssl openssl即可。

2、修改httpd.conf,增加SSL Module,引入SSL配置文件。一般而言,httpd.conf位于/etc/httpd/conf路径下

LoadModule ssl_module modules/mod_ssl.so 
Include conf.d/ssl.conf  

3、将下载完毕的文件上传至/usr/cert目录下。该目录与后续ssl.conf目录中密钥路径保持一致即可。

4、修改ssl.conf文件

<VirtualHost *:443>     
    ServerName   # 修改为申请证书时绑定的域名www.xxx.com                 
    DocumentRoot  /var/www/html  # Apache内容目录 
    SSLEngine on   
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
    SSLHonorCipherOrder on
    SSLCertificateFile /usr/cert/xxx_public.crt   # 证书文件
    SSLCertificateKeyFile /usr/cert/xxx.key   # 密钥文件
    SSLCertificateChainFile /usr/cert/xxx_chain.crt  # 证书链文件
</VirtualHost>

5、重启httpd服务。service httpd restart。

一般情况下,此时已经可以通过HTTPS访问相关域名了。若提示404,需检查阿里云是否开放了443端口。具体在“云服务器ECS”中选择相关的部署实例,在安全组的配置规则中,增加HTTPS相关规则。

添加443端口
添加443端口

WordPress的配置在此不再赘述。主要有两步,一是调整站点地址为https开头,二是调整所有现有附件链接地址为https。后者可以直接通过修改wp_post表完成。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注