温馨提示×

如何利用letsencrypt实现Ubuntu自动续签

小樊
81
2024-10-11 02:52:38
栏目: 智能运维

Let’s Encrypt 提供了免费的 SSL 证书,但它们会在 90 天后过期。为了实现自动续签,你可以使用 Certbot 和它的自动续签功能。以下是在 Ubuntu 上设置自动续签的步骤:

  1. 首先,确保你已经安装了 certbot 和 certbot-apache。如果没有,请使用以下命令安装:
sudo apt update
sudo apt install certbot python3-certbot-apache

对于 Nginx 服务器,请使用以下命令安装:

sudo apt install certbot python3-certbot-nginx
  1. 安装完成后,运行 certbot 命令来获取并安装证书。对于 Apache 服务器:
sudo certbot --apache

对于 Nginx 服务器:

sudo certbot --nginx
  1. certbot 会提示你选择一个域名进行认证。输入你的域名,然后按照提示完成认证过程。成功后,你的网站将使用 Let’s Encrypt 颁发的 SSL 证书。

  2. 为了实现自动续签,你需要配置 certbot 的定时任务。在 Ubuntu 上,你可以使用 cron 来实现。首先,打开 crontab 编辑器:

crontab -e
  1. 在编辑器中,添加以下行以每小时运行一次 certbot 的自动续签脚本。这将确保证书在到期前自动更新。
0 * * * * certbot renew --quiet && systemctl reload nginx

对于 Apache 服务器,将 nginx 替换为 apache

0 * * * * certbot renew --quiet && systemctl reload apache2
  1. 保存并退出编辑器。现在,你的 Ubuntu 系统将每小时运行一次 certbot 的自动续签脚本,确保你的 SSL 证书始终保持最新。

注意:自动续签脚本在第一次运行时可能会失败,因为它需要下载并安装新的证书。但在此之后的运行应该可以成功续签证书。如果你遇到问题,请检查 certbot 的日志文件以获取更多信息。

0