安装Let's Encrypt ssl证书,虽然安装的是centos7,运行还是要用centos6的方法,这是阿里云比较奇特的一个地方吧……如果用centos7的方法安装会出现各种无法解决的错误。
wget https://dl.eff.org/certbot-auto
chmod a+x ./certbot-auto
./certbot-auto
Let's Encrypt证书的有效期为三个月,所以Let's Encrypt证书到期时,要使用Certbot更新证书,Certbot推荐使用Cron或者Systemd Timer每天运行两次更新证书命令,当证书不到期时,不会更新证书,当证书到期后,会自动更新证书。
1)定义Systemd服务certbot.service:
sudo vi /usr/lib/systemd/system/certbot.service
内容如下:
[Unit]
Description=Lets Encrypt renewal
[Service]
Type=oneshot
ExecStart=/usr/bin/certbot renew --quiet --agree-tos
ExecStart:要指向你系统中certbot命令,因为你可能使用其他方式安装。
2)定义Systemd Timer:
sudo vi /usr/lib/systemd/system/certbot.timer
内容如下:
[Unit]
Description=Twice daily renewal of Lets Encrypts certificates
[Timer]
OnCalendar=0/12:00:00
RandomizedDelaySec=1h
Persistent=true
[Install]
WantedBy=timers.target
3)使Timer开机自动运行
sudo systemctl enable certbot.timer
4)启动Timer
sudo systemctl start certbot.timer
References:
https://certbot.eff.org/lets-encrypt/centos6-apache
https://certbot.eff.org/lets-encrypt/centosrhel7-apache
https://www.yuzhi100.com/article/centos-7-install-lets-encrypt-certbot