Nginx with Let’s Encrypt on WordPress

使用Lets Encrypt提供免费的ssl证书


获取cerbot项目

git clone https://github.com/certbot/certbot.git

重点关注certbot-auto脚本,因为使用是lnmp进行blog搭建在生成证书时需要指定nginx插件来配合,这样在生成证书后会在nginx配置文件中自动写入证书配置

./certbot-auto --nginx –d “website”

而后会需要选择一些必要的信息注意console输出,需要注意的是由于使用的是aws的实例在执行脚本时会出现错误大概意思就是aws提供的linux系统不被识别,可以通过修改脚本来忽略这个检查,大概在810行处

elif [ -f /etc/redhat-release ]; then

替换为

elif [ -f /etc/redhat-release ] || grep 'cpe:.*:amazon_linux:2' /etc/os-release > /dev/null 2>&1; then

由于在命令中使用了nginx插件脚本在执行时会去找nginx和nginx配置文件,lnmp在安装nginx时没有将nginx.conf放置在/etc这个目录下,解决的方式是创建软连接,通过执行./certbot-auto –nginx –d “website”命令可见

The nginx plugin is not working; there may be problems with your existing configuration.
The error was: MisconfigurationError('Error while running nginx -c /etc/nginx/nginx.conf -t.\n\nnginx: [emerg] open() "/etc/nginx/nginx.conf" failed (2: No such file or directory)\nnginx: configuration file /etc/nginx/nginx.conf test failed\n',)

执行

ln -s /usr/local/nginx/conf/ /etc/nginx

重启lnmp访问站点可发现原有的证书颁发者变成了Let’sEncrypt Authority X3

如果证书过期尝试执行,会根据之前证书生成的记录尝试更新证书

./certbot-auto renew

发表评论

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