如何使用 Certbot 快速为网站申请 SSL 证书
如何使用 Certbot 快速为网站申请 SSL 证书
前提条件
- 操作系统: Debian 或 Ubuntu 系统。
- 已安装 Nginx: 确保 Nginx 已安装并运行。
- 域名解析: 域名已经解析到服务器的 IP 地址。
- 开放必要端口: 服务器允许 80 和 443 端口的流量。
- Nginx 配置文件: 网站的 Nginx 配置文件位于
/etc/nginx/sites-available/
,并链接到/etc/nginx/sites-enabled/
。
Step 1: 安装 Certbot 和插件
安装 Certbot 及其 Nginx 插件:
sudo apt update
sudo apt install certbot python3-certbot-nginx
Step 2: 配置 Nginx
Certbot 会自动检测 Nginx 的站点配置文件,因此需要确保每个站点配置正确。
以下是 default
文件的示例配置,位于 /etc/nginx/sites-available/default
:
server {
# 注意此处不应该有SSL监听443的配置,即不能有任何改动listen指令。
# 只要保证server_name 后面的域名对,listen端口对,root网站所在路径对,就行了。
# certbot不管location块。
listen 80;
server_name example.com www.example.com;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
确保将 server_name
替换为你的实际域名。
激活配置:
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
sudo nginx -t # 测试配置文件是否正确
sudo systemctl reload nginx
Step 3: 使用 Certbot 申请证书
运行以下命令:
sudo certbot --nginx
Certbot 会自动检测到配置的域名,并提示你选择要申请证书的域名。
按照certbot的指令,添加DNS记录或者什么都不用做。英文看不懂就点翻译。
选择后,Certbot 会自动更新 Nginx 配置以启用 HTTPS。
Step 4: 验证安装
访问你的域名,例如 https://example.com
,确认是否正确加载 HTTPS。
Step 5: 配置自动续期
Certbot 默认会自动续期 SSL 证书。你可以使用以下命令测试续期功能:
sudo certbot renew --dry-run
故障排查
- 域名未正确解析: 确保域名 DNS 已解析到服务器 IP。
- 端口被防火墙阻止: 确认 80 和 443 端口未被阻塞。
- Nginx 配置问题: 使用
sudo nginx -t
测试配置是否正确。
通过以上步骤,你可以快速为网站配置 SSL 证书,让你的网站更安全,用户更放心!
如何使用 Certbot 快速为网站申请 SSL 证书
https://blog.mxdyeah.top/mxdyeah_blog_post/certbot_request_ssl_common.html