美文网首页nginx
SSL For Free网站获取Let's Encryp

SSL For Free网站获取Let's Encryp

作者: 种个太阳砸死你 | 来源:发表于2017-01-23 23:37 被阅读688次

    0.序言

    随着小程序的开放,自己也尝试去写一些,但是发现对于后台接口必须使用HTTPS,申请证书成了一个问题,谷歌下,发现了Let's Encrypt免费SSL证书。于是开始申请并部署,记录下来。

    1.申请证书

    1.1 登陆网站

    网址:https://www.sslforfree.com/
    

    如下图:


    网站首页

    1.2 输入域名

    会看到一个搜索框,输入我们需要获取SSL证书的网址。然后点击后面的Create Free SSL Certificate按钮

    例如:www.hao123.com
    
    输入域名

    1.3 手工/自动获取权限上传验证文件

    验证方式选择

    选择手工获取证书文件,点击Manual Verification 按钮

    1.4 验证网站所有权

    下载证书文件

    将两个文件下载到本地,然后在Nginx网站目录中创建.well-know以及里面再创建一个acme-challenge目录,再将上面下载的2个文件丢进去。最后点击按钮验证。这一部分花了我很长时间,主要是网站的Nginx配置有些问题。

    1.5 获取证书下载本地

    证书文件截图

    验证网站之后,就能够下载SSL安全证书的文件。接下来可以部署在网站上。

    3 证书部署(Nginx)

    SSL证书压缩包里有3个文件,分别是certificate.crt、ca_bundle.crt,以及private.key。在Nginx部署证书,需要在nginx.conf文件中进行配置,同时,也需要对证书文件合并。我们一步一步进行总结。

    3.1 合并证书文件

    需要将certificate.crt、ca_bundle.crt合并到一起,两个文件用EditPlus软件打开,将ca_bundle.crt内容粘贴进入certificate.crt尾部即可。

    在服务器D盘创建一个目录

    D:/cert
    

    将合并后的certificate.crt和private.key放入文件夹下。

    3.2 Nginx配置文件

    配置文件需要打开443端口的监听,具体如下:

    # nginx.conf
     server {
            listen       443 ssl;
            server_name  www.hao123.com;
    
            ssl_certificate      D:/cert/certificate.crt;
            ssl_certificate_key  D:/cert/private.key;
    
            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;
            }
        }
    

    同时,可以在监听80端口的配置上进行修改,让所有的请求都从443过。

    server{
            listen 80;
            charset      utf-8;
            server_name  www.hao123.com;
            rewrite ^/(.*) https://www.hao123.com/$1 permanet;
    }
    

    此时,访问https://www.hao123.com可以看到

    地址栏

    4.感激

    感谢博客
    老蒋部落
    老左博客
    Let's Encrypt中文笔记

    相关文章

      网友评论

      • Apa琦:博主,续期应该怎么操作尼
      • 225268c79e1c:博主 你好 我也卡在你写的文章
        1.4 验证网站所有权 最后一段 卡在nginx 配置上了 nginx 无法访问到那个目录 请问 该如何配置呢?
        种个太阳砸死你:@225268c79e1c 恩恩
        225268c79e1c:@种个太阳砸死你 多谢 博主 我已经解决了 在windows服务器上面 需要 先这样配置
        #此配置用来获取ssl证书文件。路径必须这样配置才可以。惨痛教训 次奥;而且 必须是nginx初始化配置文件配置才可以(nginx解压包中的config文件加上此配置才行)
        location /\.*$ {
        root html/.well-known/acme-challenge;
        index index.html index.htm;
        }
        通过验证之后 再进行项目配置就可以了 只是为了 验证一下证书是不是通过你申请证书的域名下载的 所有 之后就可以删掉这个配置了
        种个太阳砸死你:抱歉,才看到,就是按照我下面说的,放到指定的目录下,你可以自己按照网站给出的路径去访问下,看看能不能访问到

      本文标题:SSL For Free网站获取Let's Encryp

      本文链接:https://www.haomeiwen.com/subject/ywxzbttx.html