首页 » Web服务器 » Nginx » 正文

阿里云 CentOS7 + Nginx 部署Let’s Encrypt SSL证书

上一篇讲了在CentOS6+nginx环境下如何用Let’s Encrypt签发免费的SSL证书,本篇将介绍在CentOS7环境下的签发方法。

在CentOS7环境下比在CentOS6环境下更简单,只要按照步骤做,基本不会有问题。

系统环境:CentOS Linux release 7.9.2009 (Core)

官方文档:https://certbot.eff.org/lets-encrypt/centosrhel7-nginx

 

环境准备:

Let’s Encrypt 自动签发证书时需要寻找的文件和目录有 /etc/nginx , /usr/bin/nginx ,如果你是yum安装的nginx,那就不用改什么了,直接跳过此步骤。

如果你是自定义安装的,那么请自行创建软链接。

比如:我的是我手动编译安装的,安装到了目录 /data/app/nginx ,所以需要稍微修改一下:

ln -s /data/app/nginx/sbin/nginx /usr/bin/nginx
ln -s /data/app/nginx/conf/ /etc/nginx

安装snapd

1. 安装snapd

yum install snapd

启动snapd:

systemctl start snapd

开机启动:

systemctl enable snapd

2. 确保你的snapd是最新的,执行下面两条命令:

snap install core  # 受网络影响,可能会比较慢
snap refresh core

3. 创建软链接,后面安装certbot时需要用到:

ln -s /var/lib/snapd/snap /snap

安装certbot

1. 如果之前安装过 certbot 请先卸载:

yum remove certbot

2. 使用snap安装certbot:

snap install --classic certbot

3. 创建certbot软链接:

ln -s /snap/bin/certbot /usr/bin/certbot

4. 安装证书

这里有两种方式,看个人喜欢或实际情况决定。

方式一(推荐):证书签发与部署全自动完成,成功后即可使用https进行访问。

certbot --nginx

方式二:只生成证书,需要你自己进行nginx配置。

certbot certonly --nginx

5. 自动续期

现在你不用像centOS6上那样需要自己设置自动续期脚本或者计划任务了,过期之前certbot会自动帮你做,因为certbot自动的在系统上创建了定时任务,可以通过 systemctl list-timers 进行查看。

但你仍然可以测试自动续期是否成功:

certbot renew --dry-run

6. 验证证书是否签发成功

直接使用https方式打开你的网站,如 https://www.domain.com/ 即可看到。

 

 

发表评论

验证码加载中....