Posts

Showing posts from October, 2012

[Windows Server 2008] 如何設定IIS的自我簽署憑證? (2015/12/30更新)

Image
序:
最近用Microsoft的WebAPI寫了一支程式,因為連結中包含敏感資訊,所以要確保連線要被加密。但是由於程式只供內部系統使用,所以又未至於誇張到使用外部授權單位所發的憑證。看了一堆文章以後,發現IIS中 "自我簽署憑證" 跟OpenSSL兩種方法應該乎合我的需求,所以就開始設定囉。

什麼是 自我簽署憑證?
根據Microsoft的說法:"自我簽署憑證不是由憑證授權單位所發行。這些憑證可確保網站連線會被加密;但是,它們無法確保產生憑證之組織的身分識別。如果加密資料的能力比識別發行組織的能力還重要,則自我簽署憑證非常有用。"加密資料正正是我想要的東西 XD

怎樣做?

IIS中自我簽署憑證:很多大大也發過相同的文章,我也不再次發明輪胎了;91大有很詳細的說明可以參考。2015/12/30補充:

如果要自我簽署一張超過一年期限的憑證,例如10年的要怎麼辦?

1. 首先從微軟網站下載SelfSSL套件
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17275

2. 檢查IIS中是否已安裝以下元件,沒有的話要先裝回,不然會出現「Error opening metabase: 0x80040154」的錯誤

3. 用Administrator的權限打開cmd,輸入 selfssl /n:cn=www.mydomain.com /v:3650 /s:8 /k:2048

/n:cn=www.mydomain.com - 此SSL是給www.mydomain.com.  cn= (common name) 最好不要不填,不然將來要找這張憑證會很麻煩/v:3650 - 憑證有效日,單位為天數,例如憑證有效期為十年的話值為3650。/s:8 - IIS中安裝此憑證的Site編號。要查出Site的ID在cmd中可輸入%systemroot%\system32\inetsrv\APPCMD list site <site名稱>/k:2048 - 金匙長度,單位為bits. 4. 完成後可以打開IIS,在左邊樹狀目錄下點root,也就是伺服器圖示,然後按Server Certificates,應該可以看到剛新增的憑證,接下來Site就可以使用用這張自我簽署的憑證了。

Ope…