天天看點

IIS6.0 + openssl執行版 + Windows2003 -- 移植篇

經過幾天的折磨,終于搞定了。寫一下部落格,和大家分享一下。順便自己也記錄一下,呵呵。
背景是這樣的,我負責公司的辦公系統,此辦公系統是.NET編寫的架設在IIS6.0上的,所用的伺服器是WINDOWS2003,IIS+openssl 實作用戶端證書的認證,這樣做第一考慮的是從安全角度,第二還考慮到系統中會根據證書的有無來實作權限的操作。
我所做的工作是架設一台備機,同樣的作業系統,同樣的設定,證書系統一定要移植過來,不能重新架設,因為每位使用者都有屬于自己的證書,一旦重新架設就意味這N份證書又要重新生成,然後使用者用戶端重新再導入,是以一定要完整的移植過來。(兩台伺服器不一樣,GHOST是沒戲了,問題是主機GHOST時候都會出錯,真F了,還是别碰這孩子了。。。)

給大家圖文并茂展現一下:(網上很多相關資料,在這裡我就借花獻佛了。)

一、首先是證書頒發機構移動到備份伺服器上,下面是備份和還原的步驟。

伺服器:Windows Server 2003
<b>(警告</b>:如果使用系統資料庫編輯器或其他方法錯誤地修改了系統資料庫,則可能導緻嚴重問題。這些問題可能需要重新安裝作業系統才能解決。Microsoft 不能保證您可以解決這些問題。修改系統資料庫需要您自擔風險。)

備份:

在證書頒發機構管理單元中,右鍵單擊 CA 名稱,單擊“所有任務”,然後單擊“備份 CA”以啟動證書頒發機構備份向導。

單擊“下一步”,然後單擊“私鑰和 CA 證書”。

單擊“證書資料庫和證書資料庫日志”。

使用一個空檔案夾作為備份位置。確定新伺服器可以通路該備份檔案夾。

單擊“下一步”。如果指定的備份檔案夾不存在,則證書頒發機構備份向導将建立它。

鍵入并确認 CA 私鑰備份檔案的密碼。

單擊“下一步”,然後驗證備份設定。應當顯示下列設定:

私鑰

CA 證書頒發的日志

挂起的申請

單擊“完成”。

儲存此 CA 的系統資料庫設定。為此,請按照下列步驟操作:

單擊“開始”,單擊“運作”,在“打開”框中鍵入 regedit,然後單擊“确定”。

找到下面的系統資料庫子項,然後右鍵單擊它:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration

單擊“導出”。

将系統資料庫檔案儲存在自定義的 CA 備份檔案夾中。

還原:

删除舊伺服器上的證書服務。

重新命名舊伺服器,或者将其永久與網絡斷開連接配接。

在新伺服器上安裝證書服務。為此,請按照下列步驟操作。 

<b>(注意</b>:新伺服器的計算機名稱必須與舊伺服器的計算機名稱相同。)

在控制台中,輕按兩下“添加或删除程式”。

單擊“添加/删除 Windows 元件”,單擊 Windows 元件向導中的“證書服務”,然後單擊“下一步”。

在“CA 類型”對話框中,單擊适當的 CA 類型。

單擊“用自定義設定生成密鑰對和 CA 證書”,然後單擊“下一步”。

單擊“導入”,鍵入備份檔案夾中 .P12 檔案的路徑,再鍵入在第 2f 步中選擇的密碼,然後單擊“确定”。

在“公鑰/私鑰對”對話框中,驗證是否選中“使用現有密鑰”。

單擊兩次“下一步”。

接受“證書資料庫設定”的預設設定,單擊“下一步”,然後單擊“完成”結束證書服務的安裝。停止證書服務的相關服務。

找到在第 3 步中儲存的系統資料庫檔案,然後輕按兩下該檔案以導入系統資料庫設定。在證書頒發機構管理單元中,右鍵單擊 CA 名稱,單擊“所有任務”,然後單擊“還原 CA”。 

證書頒發機構還原向導啟動。

單擊“下一步”,然後單擊“私鑰和 CA 證書”。 單擊“證書資料庫和證書資料庫日志”。

鍵入備份檔案夾位置,然後單擊“下一步”。 驗證備份設定。

應當顯示“頒發的日志”和“挂起的申請”設定。 單擊“完成”,然後單擊“是”以在還原 CA 資料庫時重新啟動證書服務。

二、上面的操作是保證證書機構的完整性。下面是IIS上證書的備份和還原,注意下面步驟很重要。

1.進入IIS所要操作的“網站”,右鍵“屬性”,進入“目錄安全性”标簽。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_123618201976b7.jpg"></a>

2.點選“伺服器證書”,然後“下一步”,按下圖設定導出pfx備份檔案。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182020wm8G.jpg"></a>

3.然後“下一步”,選擇路徑和檔案名,這裡随意,但是最好不要改字尾名,然後“下一步”輸入密碼,後面會有很多密碼,别弄混了。“下一步”直到“完成”。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182020mtfF.jpg"></a>

2.點選“伺服器證書”,然後“下一步”,按下圖設定導入pfx備份檔案。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182020kH2u.jpg"></a>

3.然後“下一步”,選擇剛才的備份的pfx檔案導入,輸入剛才的密碼。

到此IIS的還原工作已經完成,證書和設定都和主伺服器上一樣了。

三、配置openssl,由于我用的是openssl的執行版,不需要安裝,是以原檔案都複制過來,伺服器證書和使用者個人證書都複制過來。

四、開始,運作,MMC,打開控制台,然後點“檔案”,“添加/删除管理單元”,點“添加”,然後點“證書”,然後選擇“我的使用者帳戶”,點“完成”。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182021fvxw.jpg"></a>

五、點選“确定”後,進入下面界面,右鍵點“受信任的根證書頒發機構”

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_123618202114LA.jpg"></a>

六、點“所有任務”,然後“導入”,然後“下一步”,導入“cacert.cer”這個檔案。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182021gTuf.jpg"></a>

七、“下一步”,選擇“将所有的證書裝入下列存儲區”,然後點“浏覽”

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182022ZWXI.jpg"></a>

八、這一步很重要,勾選“實體存儲區”,選擇“受信任的根證書頒發機構”,點“本地計算機”,然後點“确定”。

<a href="http://mixangel.blog.51cto.com/attachment/200903/4/286311_1236182022872m.jpg"></a>

九、導入“clent.crt”也是相同的步驟六 - 八。

十、最簡單的方法輕按兩下證書檔案就可以安裝。但是一定要注意第八步。

到此還原完成需要注意的是,主機和備機機器名要相同,第八步很關鍵。

(稍後奉上IIS + openssl + Windows2003--配置篇)

     本文轉自L.net 51CTO部落格,原文連結:http://blog.51cto.com/mixangel/135021

,如需轉載請自行聯系原作者