NGINX + Let's encrypt免费SSL证书

本文介绍如何在Linux环境下使用certbot为Nginx服务器安装Let'sencrypt免费SSL证书,并配置Nginx以实现HTTPS加密连接。文章详细说明了安装openssl、certbot,生成DH参数文件及SSL证书的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装与配置过程不算复杂:

1、安装openssl和certbot

sudo apt-get install openssl ssl-cert
sudo apt-get install python-certbot-nginx -t stretch-backports

certbot安装命令和Linux发行版有关,详情请查看 https://certbot.eff.org/

2、生成DH参数文件(可选)

sudo openssl dhparam -out /etc/nginx/dhparams.pem 2048

3、获取Let's encrypt免费SSL证书

sudo certbot certonly --webroot -w /var/www/XXX/ -d www.XXX.com

注意:把上面命令中的“var/www/XXX/”和“www.XXX.com”替换成你真正的网站目录和域名。中间需要输入邮箱信息并有少量其他提示。最后生成的证书文件位于 /etc/letsencrypt/live/www.XXX.com/ 目录下。


4、启用SSL证书

在nginx相应的server设置中添加/修改以下设置:

listen 443 ssl;
server_name www.XXX.com;
root /var/www/XXX;
ssl on;
ssl_certificate 	       /etc/letsencrypt/live/www.XXX.com/cert.pem;
ssl_certificate_key      /etc/letsencrypt/live/www.XXX.com/privkey.pem;
ssl_dhparam             /etc/nginx/dhparams.pem;

如果需要全站使用HTTPS可在80端口服务配置中使用301跳转。保存后重载nginx设置:

sudo /etc/init.d/nginx reload

5、证书定期更新

Let's encrypt证书有效期仅90天,设置/etc/crontab让它每周检查一次(有效期小于30天才更新):

0 22    * * 6    root    certbot renew --dry-run  && /etc/init.d/nginx reload
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值