程序员 第36章 Let'sEncrypt

2022-07-21

一、申请

1、下载 Windows认证客户端

2、在 windows 服务器中,解压文件并打开客户端 letsencrypt.exe 进行认证

① 配置邮箱 —— 用于接收认证相关信息,如证书过期提醒,续签结果提醒等

② 同意 let's encrypt 认证条款

https://file.lulublog.cn/images/3/2022/08/V3Q383CfOcgffb51PCFQfCg2fF8gOq.png

③ 选择证书生成方式

④ 配置认证域名

⑤ 配置项目的根目录

https://file.lulublog.cn/images/3/2022/08/iZi006TeYyEYYY1v8ythhhhTI8MamH.png

生成的证书所在目录

https://file.lulublog.cn/images/3/2022/08/sk82aeEhg99JkEEo2c0EZ0eX2jCXOk.png

⑥ 配置自动续签计划任务(ACME Client 客户端软件位置请不要移动,计划任务续签会使用客户端

https://file.lulublog.cn/images/3/2022/08/MRdQXh2rf424O0AggGgUooRtTfddOq.png

二、nginx

server {
        listen       80;
        listen       443 ssl;      # 对 443 端口进行 SSL 加密
        server_name  luluqi.cn;
        root   "C:/phpStudy/WWW/lulublog/web";
        # Let"s encrypt 生成的 SSL 证书的存放位置
        ssl_certificate           "C:/Users/Administrator/AppData/Roaming/letsencrypt-win-simple/httpsacme-v01.api.letsencrypt.org/luluqi.cn-chain.pem";
        ssl_certificate_key       "C:/Users/Administrator/AppData/Roaming/letsencrypt-win-simple/httpsacme-v01.api.letsencrypt.org/luluqi.cn-key.pem";
        # 其他 SSL 相关设置
        ssl_session_timeout       10m;
        ssl_protocols             TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers               EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES;
        ssl_prefer_server_ciphers on;
        # 所有 HTTP 访问都永久重定向(301)到 HTTPS
        if ( $scheme = http ) {
          rewrite ^/(.*) https://$server_name/$1 permanent;
        }
        location / {
            index  index.html index.htm index.php;
            if (!-e $request_filename){  
              rewrite ^/(.*) /index.php last;  
            }
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}

配置回重启 nginx,大功告成。

三、细节

①、ACME Client 客户端 运行结束后会在你项目根目录生成如下文件

https://file.lulublog.cn/images/3/2022/08/wH7E99bN1Z95eYd97h4nRccZb2cCFF.png

②、证书的有效期为 90 天

https://file.lulublog.cn/images/3/2022/08/NRhIRRYyk5eTk0IAQrYU55irjYDdJe.png01.png

阅读 105

程序员文章

带到手机上看