黑群暉使用 https 連線

9個月前 (01-03) Yosheng 資訊教學 0評論 已收錄 578℃

記得以前寫過 網站使用https 這篇文章,當時是透過 Cpanel 傻瓜操作便可以使網站加密,爾後寫過替 Nas 添加域名和憑證,這篇則是手動處理,每3個月到期就得自己手動重新更換憑證,本篇主要是透過自動化來更換憑證,順帶釐清一些觀念。

Https 觀念釐清

詳細的觀念可以參考該文章 深入揭秘HTTPS安全问题&连接建立全过程

如下附圖並打個比方來說 將 Server 比喻成商家 Client 比喻成客戶 資料比喻成需求 加密比喻成帶鎖盒子


客戶說將需求給商家 (建立連線)

正常加密連線:

  • 商家先給一個帶鎖的盒子(公鑰) 客戶把需求放到自己的盒子裡面並把鑰匙一同放到商家給的帶鎖盒子並鎖上 (非對稱加密)
  • 商家用鑰匙(私鑰)開啟 並收下客戶的鑰匙取得裡面的需求 後續的問題放到客戶盒子中上鎖再給客戶 (對稱加密)

中間人竊取:

中間人偽造自己是商家 並將商家給的帶鎖盒子替換成自己的帶鎖盒子 客戶把需求放到自己的盒子裡面並把鑰匙一同放到中間人給的帶鎖盒子並鎖上
中間人用自己的鑰匙(私鑰)開啟 將客戶的鑰匙備份起來 客戶的盒子連鑰匙再放到商家盒子裡給商家

新增機構認證解決中間人竊取

中間人偽造自己是商家 並將商家給的帶鎖盒子替換成自己的帶鎖盒子
客戶拿到盒子後 先詢問機構該盒子是否為商家的帶鎖盒子 機構說不是並將商家註冊的帶鎖盒子給客戶 客戶把需求放到自己的盒子裡面並把鑰匙放入盒中
中間人用自己的鑰匙(私鑰)打不開 只能將該盒子直接交到商家手中 只有商家手中的鑰匙能開啟

ACME 協定認識

詳細可以參考 SSL/TLS 加密新纪元 - Let's Encrypt

該協議全名為 Automated Certificate Management Environment (自動證書管理環境),該協議的制定離不開 Let's Encrypt 組織,本文也是透過該組織提供的免費證書進行第三分機構驗證,確保該證書不是偽造的證書。

上述文中提及 Let's Encrypt 尚未提供 Wildcard 證書,實際上於 2018年 已經開始提供這種 泛域名證書

下載自動化腳本更新憑證

查看域名託管配置

這裡必須根據自己域名的託管商進行配置,我這裡使用 Cloudfare 具體配置參考文檔

使用 cloudFlare 有兩種獲取方式

  1. 使用 global api key 複製 key 並輸入 mail 即可
  2. 到 cloudflare 新增 api token 並輸入 account_id

這裡採用 global api key 如附圖

登入 Cloudfare 選擇自己的域名 在Overview 底下有個 Get your API token 選項點選進入後如附圖即可查看 global api key


 

修改 config

如附圖修改 Domain 為自己的域名


配置群暉工作排程

控制台 → 任務排程表 → 新增 → 排程任務 → 使用者自定義指令碼


設定任務名稱,使用者帳號直接使用 root 即可


設定排程時間每個月執行一次即可


最後是執行指令如下


最後回到 安全性 → 憑證 查看是否成功匯入即可


上述方法只有支持二级域名 三级要另外申请
博主

擅長使用 C# 和 Java 開發項目,全棧開發工程師,前端主要使用 Vue 其次 Angular ,目前正在學習分布式架構,運維研發兼具,平時愛好鑽研技術並應用於實務當中,常駐於上海。

相關推薦

相逢就是有緣,留下足跡吧!