文档中心
NginxSSL璇佷功瀹夎鏁欑▼鎵嬫妸鎵嬫暀浣犻厤缃瓾TTPS鍔犲瘑缃戠珯
时间 : 2025-09-27 16:26:10浏览量 : 3

关键词:Nginx SSL证书安装教程
一、为什么你的网站需要SSL证书?
想象一下:你开了一家网店,顾客在结账时需要输入信用卡号。如果网站没有加密(HTTP),这些信息就像写在明信片上邮寄,黑客可以轻松截获。而SSL证书(HTTPS)相当于给数据装上了“保险箱”,确保传输过程不被偷窥。
真实案例:
2025年,某电商平台因未启用HTTPS,导致用户登录凭证被中间人攻击窃取,最终被罚款数百万美元。现在主流浏览器(如Chrome)甚至会直接标记HTTP网站为“不安全”。
二、准备工作:获取SSL证书
常见的免费证书选择:
1. Let's Encrypt(推荐):免费、自动化,适合个人和小型企业。
2. 付费证书(如DigiCert、GeoTrust):提供更长的有效期和保险保障,适合企业级需求。
*以Let's Encrypt为例*,用Certbot工具申请证书:
```bash
sudo apt install certbot python3-certbot-nginx
Ubuntu/Debian
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
```
运行后会生成两个关键文件:
- 证书文件:`/etc/letsencrypt/live/yourdomain.com/fullchain.pem`
- 私钥文件:`/etc/letsencrypt/live/yourdomain.com/privkey.pem`
三、Nginx配置SSL证书详细步骤
步骤1:修改Nginx配置文件
找到你的站点配置文件(通常在`/etc/nginx/sites-available/yourdomain.conf`),添加以下内容:
```nginx
server {
listen 443 ssl;
启用HTTPS默认端口
server_name yourdomain.com www.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
强化安全性配置
ssl_protocols TLSv1.2 TLSv1.3;
禁用老旧协议
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384';
location / {
root /var/www/html;
index index.html;
}
}
HTTP强制跳转HTTPS(重要!)
listen 80;
return 301 https://$host$request_uri;
步骤2:测试并重启Nginx
sudo nginx -t
检查语法是否正确
sudo systemctl restart nginx
四、常见问题排查
Q1: 访问HTTPS报错“证书不受信任”?
- 原因:可能是中间证书未包含。确保使用`fullchain.pem`(包含完整证书链)。
- 验证工具:[SSL Labs测试](https://www.ssllabs.com/ssltest/)
Q2: Nginx重启失败?
- 错误日志:查看`/var/log/nginx/error.log`,常见问题如私钥权限不对(需600权限):
sudo chmod 600 /etc/letsencrypt/live/yourdomain.com/privkey.pem
Q3: Let's Encrypt证书如何自动续期?
添加定时任务(每月自动续期):
sudo crontab -e
添加一行:
0 */12 * * * certbot renew --quiet && systemctl reload nginx
五、高级安全优化建议
1. 启用HSTS(强制浏览器只走HTTPS):
```nginx
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload";
```
2. 禁用TLSv1.0/v1.1(已发现漏洞):
ssl_protocols TLSv1.2 TLSv1.3;
通过本文的Nginx SSL证书安装教程,你的网站已经从“裸奔”升级为“装甲车”。实际操作中如果遇到问题,欢迎在评论区留言讨论!记得定期检查证书有效期哦~ ??
TAG:nginx ssl证书安装教程,nginx ssl证书生成,nginx部署ssl证书,nginx ssl 版本,nginx ssl pem,nginx的ssl证书