摘要:為了推廣協(xié)議,電子前哨基金會成立了,提供免費證書。部署,包含申請域名部署應(yīng)用,并開啟服務(wù)。安裝使用獲取證書對于,使用的插件獲取。
為了推廣HTTPS協(xié)議,電子前哨基金會EFF成立了 Let"s Encrypt,提供免費證書。
Let"s Encrypt
一個于2015年三季度推出的數(shù)字證書認證機構(gòu),將通過旨在消除當(dāng)前手動創(chuàng)建和安裝證書的復(fù)雜過程的自動化流程,為安全網(wǎng)站提供免費的SSL/TLS證書。
部署HTTPS,包含
申請域名
部署 Web 應(yīng)用,并開啟服務(wù)。如 Nginx,Apache 等
獲取證書
配置 Web,如商品監(jiān)聽,指定證書等。
本篇總結(jié)在 CentOS 和 Nginx 上安裝 Let"s Encrypt 簽發(fā)的證書的過程。
安裝 certbot使用 certbot 獲取 SSL 證書
sudo yum install epel-release
sudo yum install certbot
對于 Nignx ,certbot 使用 webroot 的插件獲取 SSL。這款插件會在 [your webroot path]/.well-known 生成特殊的文件,在申請證書時,Let"s Encrypt 服務(wù)會通過 Http 來訪問此文件,以簽證服務(wù)器,所以在使用 certbot 獲取證書之前,你需要確保此目錄能被外界使用訪問。
修改Nginx配置
可以先不修改 nginx 的配置,繼續(xù)往下走,如果獲取證書過程中提示無法訪問 /.well-known,才去修改 nginx 的配置,在 server 塊里添加如下代碼
location ~ /.well-known { allow all; }
然后,重啟或 reload nginx,即 sudo service nginx restart
獲取證書sudo certbot certonly -a webroot --webroot-path=/usr/share/nginx/html -d example.com -d www.example.com
--webroot-path 改為你的 webroot path, webroot插件會在此目錄下生成前面提到的 .well-known
使用 -d 指定域名。example.com改為你的域名,如果有多個域名,可以多次 -d 指定
最終會在 /etc/letsencrypt/live/example.com 下,生成四個 PEM 文件
cert.pem: 域名證書
chain.pem:Let"s Enctrypt chain certificate
fullchain.pem:cert.pem 和 chain.pem 組成
privkey.pem:證書的私鑰
執(zhí)行 sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
生成 generate a strong Diffie-Hellman group,這一步不一定要
upstream product{ server 127.0.0.1:3001; } server{ ### ssl 配置開始 ### listen 443 ssl; ssl_certificate /etc/letsencrypt/live/stu.kenniu.top/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/stu.kenniu.top/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA"; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_stapling on; ssl_stapling_verify on; add_header Strict-Transport-Security max-age=15768000; ### SSL 配置結(jié)束 ##### server_name stu.kenniu.top; #charset koi8-r; #access_log logs/host.access.log main; # location ~ /.well-known{ # allow all; # } location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_pass http://product; } }
ssl 相關(guān)的配置即完成了,在瀏覽器試一下 Https 已經(jīng)可以訪問
接下來新建一個Nginx的配置,將http的請求轉(zhuǎn)發(fā)為https
自動更新證書因為 Let"s Encrypt 的證書有效期是90天,到期前要更新證書。certbot 提供了更新證書的命令 sudo cerbot renew。添加一個 conb job 來實現(xiàn)自動更新
sudo crontab -e
輸入
30 2 1 /usr/bin/certbot renew >> /var/log/le-renew.log
35 2 1 /usr/bin/systemctl reload nginx
保存即可創(chuàng)建 cron job。以后每周1的凌晨2點30自動更新證書,2點35自動重啟nginx。
參考鏈接
https://www.digitalocean.com/...
https://certbot.eff.org/
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/39366.html
摘要:四操作步驟使用自動生成證書注意使用該命令,可以自動改變配置文件如果下圖中沒有合適的,需要指定證書對應(yīng)的如下配置更新自動更新注意需要重新添加阿里云證書使用查看是否成功 一、參考鏈接 1. HTTP 協(xié)議入門, by 阮一峰2. HTTPS 升級指南, by 阮一峰3. let encrypt, getting start4. certbot5. SSL Server Test 二、環(huán)境...
摘要:四操作步驟使用自動生成證書注意使用該命令,可以自動改變配置文件如果下圖中沒有合適的,需要指定證書對應(yīng)的如下配置更新自動更新注意需要重新添加阿里云證書使用查看是否成功 一、參考鏈接 1. HTTP 協(xié)議入門, by 阮一峰2. HTTPS 升級指南, by 阮一峰3. let encrypt, getting start4. certbot5. SSL Server Test 二、環(huán)境...
摘要:四操作步驟使用自動生成證書注意使用該命令,可以自動改變配置文件如果下圖中沒有合適的,需要指定證書對應(yīng)的如下配置更新自動更新注意需要重新添加阿里云證書使用查看是否成功 一、參考鏈接 1. HTTP 協(xié)議入門, by 阮一峰2. HTTPS 升級指南, by 阮一峰3. let encrypt, getting start4. certbot5. SSL Server Test 二、環(huán)境...
閱讀 3915·2021-11-16 11:50
閱讀 927·2021-11-11 16:55
閱讀 3659·2021-10-26 09:51
閱讀 856·2021-09-22 15:03
閱讀 3409·2019-08-30 15:54
閱讀 3260·2019-08-30 15:54
閱讀 2468·2019-08-30 14:04
閱讀 919·2019-08-30 13:53