申請免費的SSL,使用SSLforfree
TLS、SSL 到底是什麼??
依據維基百科:
- 傳輸層安全性協定(英語:Transport Layer Security,縮寫:TLS)
-
安全通訊協定(英語:Secure Sockets Layer,縮寫:SSL)
最古老的開始是從SSL創先的,不過目前SSL因為已知漏洞,故目前加密都是以TLS版憑證(更新及安全的SSL加密)不過習慣還是會稱呼安全性憑證為 SSL ~~~
使用Azure ubuntu 18.04 當範例,各大公有雲配置可使用此方式
使用Nginx當作Web伺服器,並且已經配置好DNS(配置方式請參閱)
何謂Nginx,請參考維基百科
-
登入SSL For Free網站並且註冊會員
-
點擊創建SSL權證
-
輸入Domain
-
選擇90天期限
-
自動生成CSR
-
選擇免費版然後下一步
-
選擇http檔案上傳認證方式,並下載授權檔案
-
將下載文件貼至Azure機器內
:information_desk_person:
是Nginx預設靜態網頁的根目錄唷~~/var/www/html/
-
點擊網站確認可以顯示認證檔案
-
下載SSL權證,選擇Nginx
下載完會有三個檔案!!
-
將檔案放入Azure機器內(各大雲放入方式請參閱各家廠商SCP方式)
1 => 登入Azure的金鑰
2 => 本機端的檔案
3 => Azure機器帳號@Azure機器IP
4.=> 該帳號的家目錄
此方式僅供參考,也可以使用Filezilla等各類軟體上傳~~ -
將打包的.zip檔案檔案放置/etc/ssl目錄下,並解壓縮
-
轉成pem格式
openssl x509 -in certificate.crt -out certificate.pem openssl x509 -in ca_bundle.crt -out ca_bundle.pem openssl rsa -in private.key -out private.pem
-
certificate.pem及ca_bundle.pem證書合併
cat ca_bundle.pem >> certificate.pem
-
設定Nginx
vim /etc/nginx/sites-enabled/default
# 增加下面 server_name wen9077.tk www.wen9077.tk; #輸入Domain listen 443 ssl; # 監聽443 port 並開啟ssl ssl_certificate /etc/ssl/certificate.pem; # 權證位置 ssl_certificate_key /etc/ssl/private.pem; # 私鑰位置 access_log /var/log/nginx/nginx.vhost.access.log; # log存放位置 error_log /var/log/nginx/nginx.vhost.error.log; # log存放位置
# 新的 block
server {
# 輸入www.wen9077.tk將自動轉址為https
if ($host = www.wen9077.tk) {
return 301 https://$host$request_uri;
}
# 關閉不安全連線
listen 80;
server_name www.wen9077.tk;
return 404;
}
-
Nginx 重啟
service nginx restart # nginx -s reload
-
至瀏覽器輸入網址測試
加上鎖頭的網站已經完成了~
One Comment