申请lets encrypt https证书并配置nginx

本文详细介绍了如何使用Let's Encrypt免费SSL证书,包括通过Git下载脚本、执行letsencrypt-auto工具获取证书,以及配置Nginx服务器以启用HTTPS,确保网站数据传输的安全。

1. 使用git下载脚本
 git clone https://github.com/letsencrypt/letsencrypt
 
2. 进入到脚本所在目录
 cd letsencrypt
 
3. 查看 letsencrypt-auto 工具的用法
 ./letsencrypt-auto --help

4.执行./letsencrypt-auto --help后,是否显示完整帮助信息,
如果
①.出现Could not install OS dependencies
执行package-cleanup --dupes
package-cleanup --cleandupes
package-cleanup --problems
yum update
②.出现let’s Encrypt 证书之安装故障 Could not bind to IPv4 or IPv6.
请关闭nginx服务,执行

5../letsencrypt-auto certonly --standalone --email 58472399@qq.com -d www.17zhujiu.com 获取证书【邮箱,域名填写自己的】
生成证书

 

6.配置nginx
    # HTTPS server
    
    server {
        listen       443 ssl;
        server_name  www.17zhujiu.com;

        ssl_certificate      /etc/letsencrypt/live/www.17zhujiu.com/fullchain.pem;
        ssl_certificate_key  /etc/letsencrypt/live/www.17zhujiu.com/privkey.pem;
	
	ssl_protocols SSLv3 TLSv1;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }

 

注:443端口服务器是否开启

 

 

7.启动nginx

/home/nginx/sbin/nginx -s reload

8.测试是否成功

 

### 如何申请 Let's Encrypt SSL 证书 Let’s Encrypt 是一种免费、开放和自动化的证书颁发机构 (CA),由互联网安全研究小组 (ISRG) 运营。它通过 ACME 协议实现自动化流程,允许开发者轻松获取安装有效期为 90 天的 SSL/TLS 证书[^2]。 以下是关于如何申请 Let’s Encrypt SSL 证书的具体说明: #### 准备工作 在开始申请前,需满足以下条件: - **域名**:确保已经注册好要使用的域名,配置其 DNS 解析记录使其能够正常访问。 - **服务器环境**:目标服务器应运行 Linux 操作系统(如 CentOS),且 Web 服务程序(如 Nginx 或 Apache)已正确部署[^4]。 #### 安装 Certbot 工具 Certbot 是官方推荐用于管理 Let’s Encrypt 的工具之一,它可以简化证书请求过程以及后续维护操作。对于基于 RedHat/CentOS 的发行版来说,可以通过 EPEL 软件源来安装 certbot 及相关插件模块;而对于 Debian/Ubuntu 类型,则可以直接利用 apt-get 来完成安装任务。 ```bash # 对于CentOS/RHEL 用户 sudo yum install epel-release sudo yum install python-certbot-apache # 对于Debian/Ubuntu 用户 sudo add-apt-repository ppa:certbot/certbot sudo apt update sudo apt install python-certbot-apache ``` #### 请求新证书 一旦完成了上述准备活动之后就可以正式向 letencrypt 组织提交认证请求了。如果采用的是 apache webserver ,那么执行如下命令即可全自动处理整个验证环节直至成功获得所需文件为止: ```bash sudo certbot --apache certonly ``` 如果是 nginx server 则替换为下面这条语句 : ```bash sudo certbot --nginx certonly ``` 此过程中会引导用户输入电子邮件地址接收重要通知邮件以及其他必要参数设定比如指定哪些子域也需要保护等等 。最后一步确认无误后即刻生成一对私钥公钥组合连同对应的 crt 文件存放在 /etc/letsencrypt/live/{your_domain}/目录下供以后查阅调用之便。 #### 自动化续订机制设置 由于每张证书的有效期限仅为三个月时间长度较短的缘故所以建议开启定时任务计划表定期检查剩余可用日期在即将到期前提醒或者直接重新签发新的版本覆盖掉旧有的那个从而避免因忘记而导致的服务中断现象发生. 编辑 crontab 配置文件加入一行代码安排每周日凌晨四点钟执行一次检测动作: ```bash crontab -e ``` 添加内容如下所示: ```cronjob 0 4 * * 0 /usr/bin/certbot renew >> /var/log/le-renew.log ``` 这样就能保证即使管理员忙碌也不会错过任何一张快要失效的安全凭证啦! --- ### 注意事项 虽然 Let’s Encrypt 提供完全免费的服务但是仍然存在一些局限性需要注意的地方比如说不支持通配符形式(*.example.com)类型的多级子域名绑定需求就必须单独针对每一个具体实例分别去索取才行另外就是某些老旧客户端可能无法识别这种新型加密方式因此还需要额外考虑向下兼容性的解决方案例如文中提到的同时兼顾低版本 OpenSSL(<1.0.2g) 和 Android<7.1.1 设备的情况[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值