Windows環境下生產自簽憑證
正常來說使用openssl生產自簽憑證是最快且簡單的,但最近POC遇到一個情況是需要憑證但客戶憑證都是用Windows CA簽下來的,IIS無法直接匯出含私鑰的憑證且不接受第三方生產的私簽,客戶希望使用他們環境的CA產出憑證,所以就必須研究如何在Windows環境下生產可用的私有憑證。
整個流程為
- 先在Doamin環境下的機器創建能自定義CSR
- CSR內容要特別注意主體別名和可匯出私鑰
- 使用進階提交給ca server
- 將申請下來的憑證匯入到先前申請CSR的機器
- 匯入完成後將憑證雨私鑰一起打包匯出
首先在CA server上要確定勾選憑證授權單位網頁註冊
點擊新增嵌入式管理單元
選擇憑證
點選電腦帳戶
新增完後進入個人憑證部分,選建立自訂要求,因內建系統像是IIS在提交時不會把我們所需的主題別名給帶入(若憑證上無主體別名,不論ca信任與否chrome都會視為不信任)
選擇範本,這些範本從ca server上進行修改,因為是lab要用的憑證所以期限能條久一點
對內容進行編輯
首先主體名稱選擇一般名稱(CN)填入域名,在別名部分選擇DNS一樣填入域名,此外別名也能夠從類型選擇ip,這樣在連線如https://192.168.1.1/時該憑證也能使用
在私密金鑰部分選擇可匯出,此處是就是為什麼要大費周章用自訂規則來申請憑證
瀏覽此csr要儲存的地方
使用文字編輯器開啟並將內容複製
連線至ca server的web註冊網站,點擊要求憑證
點選提交進階憑證要求
把剛剛的csr內容貼上,並選擇申請csr時對應的範本
將憑證下載下來
此時要注意的是此憑證不會包含私鑰,所以要將此憑證裝回原本申請csr的機器(因為私鑰在此機器)之後再匯出
匯入完成後回到MMC按重新整理就能看到剛剛申請好的憑證
在MMC對剛剛匯入的憑證點選匯出
選擇匯出私密金鑰,若是預設從IIS上直接跟ca要的憑證是不會有此選項的
因為有私鑰在此憑證內,所以會被要求輸入密碼
此時包含私鑰的pfx憑證就能使用了,再根據情況用openssl能轉換成不同格式的憑證
此將此憑證套用至web server上顯示安全,但前提要把ca匯入到此電腦中
留言
張貼留言