nginx使用免費ssl證書


nginx開啟https

使用Letsencrypt為域名申請免費證書,不是泛域名的方式,是單域名或者多域名方式,會有多個公鑰跟私鑰

使用standalone方式獲取證書

安裝letsencrypt

git clone https://github.com/letsencrypt/letsencrypt

進入目錄

cd letsencrypt

執行命令獲取證書,注意用standalone方式獲取證書,需要關閉服務器的80端口,因為會占用這個端口

--email制定證書過期通知郵件,-d制定要為那個域名申請證書,可以通過-d指定多域名

注意,指定的域名必須可以查到a記錄,在域名供應商那邊有綁定固定IP

./letsencrypt-auto certonly --standalone --email xxx@qq.com -d www.xxx.com

生成的證書公鑰,私鑰在/etc/letsencrypt/live里面,以域名為名字的目錄

修改nginx的配置文件,啟用ssl證書驗證

server {
    listen 443 ssl;
    server_name 填入域名 ;
    error_log    logs/apple_app_error.log    error;
    access_log    logs/apple_access.log    main;
    ssl on;
    #指定證書公鑰
    ssl_certificate /etc/letsencrypt/live/app.blockmango.net/fullchain.pem;
    #指定證書私鑰
    ssl_certificate_key /etc/letsencrypt/live/app.blockmango.net/privkey.pem;

    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   # ssl_protocols SSLv3 TLSv1;

#    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; 

    ssl_prefer_server_ciphers on;
        location /apple-app-site-association {
            default_type application/json;
            expires 1d;
        }
        location / {
            root   html;
            index  index.html index.htm;
            expires 1d;
        }
        #error_page  404              /404.html;

        #redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }



}

  重啟nginx服務即可

注意通過免費的方式申請的證書,只有三個月有效期,三個月后要為過期的證書更新

還有使用standalone這種方式申請或者更新的,操作前都需要關閉http服務,更新后再打開http服務

還有一種方式比較好用的,是webroot,但是這種方式需要在改服務器還沒有申請過證書前,即nginx的配置文件沒修改成ssl模式前使用

因為本次對服務器申請證書,是之前已經有過其他域名證書申請了,且是用standalone方式申請的,現在改為webroot的話有點麻煩,所以繼續使用standalone方式為新域名申請證書

當然這樣的話,就必須維護多個證書

參考鏈接:https://blog.csdn.net/dancen/article/details/81311688

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM