2010年8月23日 星期一

Exchange 2007 TransportService overtime

問題及徵狀
----------------
事件類型: 警告
事件來源: MSExchangeTransport
事件類別目錄: TransportService
事件識別碼: 12018
日期: 8/24/2010
時間: 1:17:49 PM
使用者: N/A
電腦: CAS
描述:
STARTTLS 憑證即將過期: 主旨: xxx.com.tw,剩餘時數: C3E7A3B73AF0265964C59B8FB41820CAAC889F0E。請執行 New-ExchangeCertificate 指令程式,建立新的憑證。

請在 http://go.microsoft.com/fwlink/events.asp 查看說明及支援中心,以取得其他資訊。

----------------
//影響範圍:SMTP、IIS、POP、IMAP

解決方式:

我發覺怎麼做都會影響現有使用者(ROH)的憑證,無法避免!

先檢查
1.用以下指令檢查現有憑證使用狀況,你會找到已過期的憑證與其 Thumbprint 的值

Get-ExchangeCertificate | List

進行新憑證申請(Certificate),在建立憑證要求後 (這時已產生 *.req 檔) 必須透過以下步驟申請新的憑證來匯入 Exchange Server 2007 的憑證存放區。

1.開啟 IE 輸入您 CA 的線上申請網址,例如: https://servername/certsrv

2.選擇 [要求憑證]

3.選擇 [進階憑證要求]

4.選擇 [用 Base-64 編碼的 CMC 或 PKCS #10 檔案來提交憑證要求] 或 [用 Base-64 編碼的 PKCS #7 檔案提交更新要求]

5.產生多用途憑證 在CAS上下指令(備註:如果您有兩部CAS則要在兩台主機個別做一次)
New-ExchangeCertificate -GenerateRequest -DomainName autodiscover.XXX.com.tw, cas1.XXX.com.tw, cas2.XXX.com.tw, XXcas.XXX.local, roh.XXX.com.tw,
cas1, cas2, XXcas, cas1.XXX.local, cas2.XXX.local -FriendlyName fs-roh.fuhsing.com.tw -PrivateKeyExportable:$true -Path c:\All-Request.txt

至c:\All-Request.txt將先前建立憑證要求所產生的要求憑證檔用記事本開啟,並將內容 [全選] 並 [複製] 內容貼入如下文字方塊內,以及在憑證範本選取 [網頁伺服器],並按下 [提交 >] 按鈕。

6.如果 [下在憑證] 網頁出現,請參閱檢查擱置的憑證要求。請按一下 [下載憑證],並將檔案儲存到硬碟

7.最後,用以下 Powershell 指令將憑證匯入到您的憑證存放區並啟用憑證使用。

Import-ExchangeCertificate -Path c:\certificates\certnew.cer
這時會產生一組新的識別指紋,必須用這組來Enable-ExchangeCertificate -Services

[PS] C:\>Enable-ExchangeCertificate -Thumbprint A5A97680791CEA03C903EA129F4EBE24
44350C3B -Services SMTP,IIS,POP,IMAP


備註二:
*****************
產生多用途憑證
New-ExchangeCertificate -GenerateRequest -DomainName roh.diviner.tw,mail.diviner.tw,mail -FriendlyName CAS -PrivateKeyExportable:$true -Path c:\CA-Request.txt
參考註: http://technet.microsoft.com/zh-tw/library/aa998327(EXCHG.80).aspx
http://noahchou.wordpress.com/tag/exchange-server-2007/
***
GenerateRequest
使用此參數可指定要建立之憑證物件的類型。此參數預設會在本機電腦憑證儲存區中建立自行簽署憑證。若要在本機要求儲存區中建立 PKI 憑證的憑證要求 (PKCS #10),請將此參數設為 $True。

DomainName
使用此參數可在產生的憑證要求中,填入一或多個網域名稱 (FQDN) 或伺服器名稱。網域名稱中只可以使用下列字元;『a-z』、『0-9″ 及連字號 (『-』)。每個網域名稱的長度不可超出 255 個字元。若要輸入多個網域或伺服器名稱,則必須用逗號隔開輸入的名稱。

FriendlyName
使用此參數可指定所產生憑證的好記名稱。此好記的名稱必須小於 64 個字元。預設的好記名稱是 『Microsoft Exchange』。

PrivateKeyExportable
使用此參數可指定所產生的憑證是否會有可匯出的私密金鑰。此指令程式所建立的所有憑證要求及憑證預設都不允許匯出私密金鑰。您必須了解如果無法匯出私密金鑰,就無法匯出及匯入憑證本身。將此參數設為 $true ,可允許從產生的憑證中匯出私密金鑰。

Path
使用此參數可指定所產生 PKCS #10 要求檔案的路徑。只有在 GenerateRequest 設為 $true 時,此參數才有效。即使指定了 Path 參數,New-ExchangeCertificate 指令程式仍然會在本機憑證儲存區中產生憑證要求。本機憑證存放區中產生的憑證要求包含產生之憑證的金鑰。使用此參數時必須指定要求檔案的名稱,而且名稱的結尾必須為副檔名 .req

***


Get-ExchangeCertificate -C3E7A3B73AF0265964C59B8FB41820CAAC889F0E | New-ExchangeCertificate -GenerateRequest -PrivateKeyExportable
*****************

-----------------------
如果您想將憑證期限延長!
請參考下列方式
-----------------------
1.到CA主機
2.regedit
3.開始>執行輸入regedit打開registry key編輯器
展開HK_Machine>System>CurrentControlSet>Service>CertSvc>Configuration>CA名稱
發給使用者的憑證有效期
ValidityPeriod預設值為year(年),ValidityPeriodUnits預設值為1,請將ValidityPeriodUnits值改為3年或適當值
4.ValidityPeriodUnits 修改你要幾年到期
5.可參考http://blog.xuite.net/jammylo/Exchange/6349882