给nginx全自动添加ssl证书以及自动续签
Posted 扈书宁
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给nginx全自动添加ssl证书以及自动续签相关的知识,希望对你有一定的参考价值。
第一步:
安装 snapd
将 EPEL 存储库添加到您的 CentOS 安装后,只需安装snapd包:
$ sudo yum install snapd
安装后,需要启用管理主 snap 通信套接字的systemd单元:
$ sudo systemctl enable --now snapd.socket
要启用经典snap 支持,请输入以下内容以在/var/lib/snapd/snap
和之间创建符号链接/snap
:
$ sudo ln -s /var/lib/snapd/snap /snap
注销并重新登录或重新启动系统以确保正确更新 snap 的路径。
使用reboot进行重启很重,重要的事情说三遍。
然后在根据以下连接进行继续的操作。
确保您的 snapd 版本是最新的
在机器上的命令行上执行以下说明,以确保您拥有最新版本的snapd。
sudo snap install core; 安装核心如果报错请检查第一步
sudo snap refresh core 刷新核心
- 删除 certbot-auto 和任何 Certbot OS 包 这一步没有可以不操作。。。。。。。。。。。有的话就执行一下。
如果您使用apt、dnf或yum等操作系统包管理器安装了任何 Certbot 包 ,则应在安装 Certbot snap 之前将其删除,以确保在运行命令 certbot 时使用的是 snap,而不是从您的操作系统包安装经理。执行此操作的确切命令取决于您的操作系统,但常见示例是sudo apt-get remove certbot、sudo dnf remove certbot或sudo yum remove certbot。
如果您之前通过 certbot-auto 脚本使用过 Certbot,您还应该按照此处的说明删除其安装。
- 安装证书机器人
在机器上的命令行上运行此命令以安装 Certbot。
sudo snap install --classic certbot
- 准备 Certbot 命令
在机器上的命令行执行以下指令,确保certbot命令可以运行。
sudo ln -s /snap/bin/certbot /usr/bin/certbot
- 选择您希望如何运行 Certbot
- 要么获取并安装您的证书...
运行此命令以获取证书并让 Certbot 自动编辑您的 nginx 配置以提供服务,只需一步即可打开 HTTPS 访问。
sudo certbot --nginx
- 或者,只需获得证书
如果您感觉更保守并希望手动更改 Nginx 配置,请运行此命令。
sudo certbot certonly --nginx
- 要么获取并安装您的证书...
- 测试自动续订
您系统上的 Certbot 软件包带有一个 cron 作业或 systemd 计时器,它们会在您的证书到期之前自动更新您的证书。除非您更改配置,否则您无需再次运行 Certbot。您可以通过运行以下命令来测试证书的自动续订:
sudo certbot 更新 --dry-run和下面一行翻译前一样。。。。。
-
sudo certbot renew --dry-run
-
如果该命令正确完成,您的证书将在后台自动更新。
- 确认 Certbot 工作
要确认您的站点设置正确,请在浏览器中访问https://yourwebsite.com/并在 URL 栏中查找锁定图故障排除?
本系统使用centos7和NGINX,不一样的自己选择。
请参考 https://certbot.eff.org/lets-encrypt/centosrhel7-nginx
以上是关于给nginx全自动添加ssl证书以及自动续签的主要内容,如果未能解决你的问题,请参考以下文章