本教程将引导您完成在 CentOS 7 和 8 系统上使用 certbot 绑定自定义域名的详细步骤。certbot 是一个免费的开源工具,用于自动获取和安装 TLS/SSL 证书。
先决条件
具有 root 权限的 CentOS 7 或 8 服务器
已注册的自定义域
指向您服务器的 DNS 记录
第 1 步:安装 certbot
使用以下命令安装 certbot:
```shellsudo yum install certbot python2-certbot-nginx```
第 2 步:创建证书
使用 certbot 创建证书,替换为您的自定义域名:
```shellsudo certbot certonly --nginx -d example.com```
第 3 步:为 nginx 配置证书
编辑 nginx 配置文件,通常位于 /etc/nginx/conf.d/default.conf:
```shellsudo nano /etc/nginx/conf.d/default.conf```
添加以下内容:
```server {listen 80 default_server;listen [::]:80 default_server;server_name example.com;return 301 https:// $host$request_uri;}server {listen 443 ssl http2 default_server;listen [::]:443 ssl http2 default_server;server_name example.com;ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;include /etc/letsencrypt/options-ssl-nginx.conf;root /var/www/html;}```
第 4 步:重新启动 nginx
重新启动 nginx 以应用更改:
```shellsudo systemctl restart nginx```
第 5 步:测试您的域名
使用浏览器访问您的自定义域名。您应该看到一个安全的 HTTPS 连接。
第 6 步:安排自动更新
使用 certbot 安排证书的自动更新:
```shellsudo certbot renew --dry-run```
要查看更新 cron 作业的详细信息,请运行以下命令:
```shellsudo crontab -l```
第 7 步:排除故障
如果您遇到任何问题,请查看以下排除故障步骤:
检查您的 DNS 记录是否正确。
确保您已将正确的域名添加到 certbot 命令中。
检查 nginx 配置文件是否存在语法错误。
查看 certbot 日志以获取更多信息:```shell
cat /var/log/letsencrypt/letsencrypt.log```
结论
在 CentOS 7 和 8 系统上使用 certbot 绑定自定义域名是一个相对简单的过程。通过遵循本教程中的步骤,您可以确保您的网站安全且易于访问。