在發行下一個 CRL 之前,憑證服務不會發佈憑證撤銷清單 (CRL)。
憑證授權單位 (CA) 和公開金鑰基礎結構 (PKI) 最重要的安全功能之一是向用戶端提供用於判定是否應該信任某個憑證的資訊。對管理員而言,這意謂著需要立即撤銷未達到其排定到期日期的未受信任憑證,並在憑證撤銷清單 (CRL) 上發佈此資訊。監視並解決與 CRL 發行和可用性相關的問題是 PKI 安全性的一個重要層面。
在下一個 CRL 產生之前啟用 CRL 發行
依照「修正 CRL 發佈點問題」一節中的程序,修正您的憑證撤銷清單 (CRL) 發佈點資訊的任何問題,包括權限問題。
依照「確認網路連線」一節中的程序,確認您已網路連線至 Active Directory 網域服務 (AD DS) 和主控 CRL 發佈點的電腦。
修正 CRL 發佈點問題
若要檢閱並修正 CRL 發佈點位址資訊的問題:
在主控 CA 的電腦上,按一下 [開始],指向 [系統管理工具],然後按一下 [憑證授權單位]。
在憑證授權單位 (CA) 的名稱上按一下滑鼠右鍵,然後按一下 [內容]。
按一下 [延伸] 索引標籤。記下已選取 [在這個位置公佈 CRL] 核取方塊的 CRL 發佈點。
如果 CRL 發行位置無效,請以有效路徑取代。
如果事件記錄檔訊息指定 Active Directory 位置,並且該位置已格式化為輕量型目錄存取通訊協定 (LDAP) 位址,請使用「確認 Active Directory CRL 發佈點權限」程序,檢查 CA 對此位置具有寫入權限。
如果您是使用自訂網路位置作為 CRL 發佈點,請確認主控 CA 的電腦對包含其他電腦上作業系統的磁碟機具有寫入存取權。
若要從命令列判斷所設定的 CRL 發佈點:
在 CA 上開啟命令提示字元視窗。
輸入 certutil -getreg ca\crlpublicationurls 並按 ENTER。
確認 Active Directory CRL 發佈點權限
若要確認 Active Directory CRL 發佈點權限:
在已安裝 Active Directory 管理工具的電腦上按一下 [開始],指向 [系統管理工具],然後按一下 [Active Directory 站台及服務]。
在 [檢視] 功能表上,按一下 [顯示服務節點]。
依序按兩下 [Services] 和 [Public Key Services]。
在 AIA 上按一下滑鼠右鍵,然後按一下 [內容]。
按一下 [安全性] 索引標籤,然後確認 CA 對此位置具有寫入權限。
確認網路連線
若要判斷 CA 與網域控制站之間是否存在網路連線問題:
在 CA 電腦上按一下 [開始],輸入 cmd 並按 ENTER。
輸入 ping <server_FQDN>,其中 <server_FQDN> 是網域控制站的完整網域名稱 (FQDN) (例如,server1.contoso.com),然後按 ENTER。
如果可以連線至網域控制站,您將會收到與下列類似的回覆:
回覆自 IP_address: 位元組=32 時間=3ms TTL=59
回覆自 IP_address: 位元組=32 時間=20ms TTL=59
回覆自 IP_address: 位元組=32 時間=3ms TTL=59
回覆自 IP_address: 位元組=32 時間=6ms TTL=59
在命令提示字元中,輸入 ping <IP_address> (其中 <IP_address> 是網域控制站的 IP 位址),然後按 ENTER。
如果您可以使用 IP 位址連線至網域控制站,但使用 FQDN 卻失敗,這表示網域名稱系統 (DNS) 主機名稱解析可能有問題。
如果您無法使用 IP 位址順利連線至網域控制站,這表示網路連線可能有問題。
檢查並解決任何硬體問題,例如,網路卡故障或網路線斷開連接,以及與防火牆設定網際網路通訊協定安全性 (IPsec) 設定有關的任何事件記錄檔錯誤。
針對不是網域控制站的任何 CRL 發佈點重複此程序。
若要確認憑證撤銷清單 (CRL) 發佈正確運作,請對最近發行的終端實體 (使用者或電腦) 憑證執行下列程序:
在已連線至網路的電腦上開啟命令提示字元視窗。
輸入 certutil -url <cert.cer>,然後按 ENTER。
將 <cert.cer> 取代為您透過 [憑證匯出精靈] 匯出憑證所建立之憑證檔案的名稱。
在出現的對話方塊中,按一下 [擷取] 底下的 [CRL (來自 CDP)],再按一下 [擷取]。
確認所有擷取的 CRL 發佈點的狀態都列示為 [已驗證]。
Target | Microsoft.Windows.CertificateServices.CARole.2016 |
Category | EventCollection |
Enabled | True |
Event_ID | 67 |
Event Source | Microsoft-Windows-CertificationAuthority |
Alert Generate | False |
Remotable | True |
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
WriteToCertSvcEvents | WriteAction | Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectEvent | Default |
<Rule ID="Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.67" Enabled="true" Target="CSDisc!Microsoft.Windows.CertificateServices.CARole.2016" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">67</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-CertificationAuthority</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectEvent"/>
<WriteAction ID="WriteToCertSvcEvents" TypeID="Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher"/>
</WriteActions>
</Rule>