在Apache上安装Let’s Encrypt多域名证书

背景

因为WoSign(沃通)未经授权就为GitHub的域名之一颁发了证书,这促使了一项Mozilla和安全社区合作进行的公开调查,调查发现了许多其他WoSign误解的案例,调查还发现Wosign已经秘密收购StartCom,并且后者已经开始使用Wosign的基础设施、员工、政策、签发系统。

最终,从Chrome 56开始,由WoSign和StartCom在2016年10月21日00:00:00 UTC后颁发的证书不受信任。

Apple Root Certificate Program 2016年10月01日 正式宣布在即将发布的安全更新中对沃通的 “WoSign CA Free SSL Certificate G2” 取消信任,所有已经发布到 CT 的旧证书不受影响。正在采取进一步的措施,将阻止来自WoSign和StartCom根CA的证书。

Mozilla 于10月20日公布了对 沃通CA 的最终处理意见,它不再信任在10月21日之后签发的WoSign和StartCom根CA的证书,从 Firefox 51 起移除对4个沃通根证书的信任。

使用Let’s Encrypt免费证书

去年3月以来,behindgfw.com使用的是startcom的免费证书,因为旧的证书还可以用,所以一直没有更换。now,it’s time。

使用Let’s Encrypt官方推荐使用certbot客户端,因为要支持SNI多域名,在tanteng.me上使用了acme-tiny完成验证签发,看了半天觉得还是比较繁琐。研究最后发现certbot也是可以达到SNI多域名功能。示例如下:

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
./certbot-auto certonly --webroot -w /var/www/behindgfw.com/public_html  -d behindgfw.com -d www.behindgfw.com -w /var/www/behindgfw.org/public_html -d behindgfw.org -d www.behindgfw.org

certonly –webroot选项可以在发证过程中不停止Web服务器,使用本地网络服务器验证,–webroot-path或-w使用包含由您的Web服务器提供的文件的顶级目录(“web根目录”)。

……

Saving debug log to /var/log/letsencrypt/letsencrypt.log

……

Performing the following challenges:
http-01 challenge for behindgfw.com
http-01 challenge for www.behindgfw.com
http-01 challenge for behindgfw.org
http-01 challenge for www.behindgfw.org
Using the webroot path /var/www/behindgfw.org/public_html for all unmatched domains.
Waiting for verification…
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0000_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0000_csr-certbot.pem

IMPORTANT NOTES:
– Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/behindgfw.com/fullchain.pem. Your cert will
expire on 2017-06-13. To obtain a new or tweaked version of this
certificate in the future, simply run certbot-auto again. To
non-interactively renew *all* of your certificates, run
“certbot-auto renew”

……

使用/etc/letsencrypt/live目录下的fullchain.pem、privkey.pem修改Apache设置:

SSLCertificateFile /etc/letsencrypt/live/behindgfw.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/behindgfw.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/behindgfw.com/fullchain.pem

Tagged , , .