16-PKI配置
本章節下載: 16-PKI配置 (332.97 KB)
PKI(Public Key Infrastructure,公鑰基礎設施)是一個利用公共密鑰理論和技術來實現並提供信息安全服務的具有通用性的安全基礎設施。
公共密鑰體製也稱為非對稱密鑰體製,是目前應用最廣泛的一種加密體製,在這一體製中,它使用一個非對稱的密鑰對,分別是一個公開的加密密鑰(公鑰)和一個保密的解密密鑰(私鑰),用公鑰加密的信息隻能用私鑰解密,反之亦然。由於公鑰是公開的,需要在網上傳送,故公鑰的管理問題就是公共密鑰體製所需要解決的關鍵問題。
目前,PKI係統中引出的數字證書機製就是一個很好的解決方案。基於公共密鑰技術的數字證書是一個用戶的身份和他所持有的公鑰的結合,它是使用PKI係統的用戶建立安全通信的信任基礎。
基於數字證書的PKI係統,能夠為網絡通信和網絡交易,特別是電子政務和電子商務業務,透明地提供一整套安全服務,主要包括身份認證、保密、數據完整性和不可否認性。
目前,我司的PKI可為安全協議IPsec(IP Security,IP安全)、SSL(Secure Sockets Layer,安全套接字層)、WAPI(WLAN Authentication and Privacy Infrastructure,無線局域網鑒別與保密基礎結構)提供證書管理機製。
數字證書是一個經CA(Certificate Authority,證書頒發機構)簽名的、包含公開密鑰及相關的用戶身份信息的文件,它建立了用戶身份信息與用戶公鑰的關聯。CA對數字證書的簽名保證了證書的合法性和權威性。數字證書的格式遵循ITU-T X.509國際標準,目前最常用的為X.509 V3標準。一個數字證書中包含多個字段,包括證書簽發者的名稱、主體的公鑰信息、CA對證書的數字簽名、證書的有效期等。
本手冊中涉及兩類證書:本地(local)證書和CA(Certificate Authority)證書。本地證書是CA簽發給用戶的數字證書;CA證書是CA自身的證書。若PKI係統中存在多個CA,則會形成一個CA層次結構,最上層的CA是根CA,它擁有一個CA“自簽名”的證書。
由於用戶姓名的改變、私鑰泄漏或業務中止等原因,需要存在一種方法將現行的證書撤消,即撤消公開密鑰及相關的用戶身份信息的綁定關係。在PKI中,所使用的這種方法為證書廢除列表。任何一個證書被廢除以後,CA就要發布CRL來聲明該證書是無效的,並列出所有被廢除的證書的序列號。CRL提供了一種檢驗證書有效性的方式。
當一個CRL的撤消信息過多時會導致CRL的發布規模變得非常龐大,且隨著CRL大小的增加,網絡資源的使用性能也會隨之下降。為了避免這種情況,允許一個CA的撤消信息通過多個CRL發布出來,並且使用CRL發布點來指出這些小CRL的位置。
CA在受理證書請求、頒發證書、吊銷證書和發布CRL時所采用的一套標準被稱為CA策略。通常,CA以一種叫做證書慣例聲明(CPS,Certification Practice Statement)的文檔發布其策略,CA策略可以通過帶外(如電話、磁盤、電子郵件等)或其他方式獲取。由於不同的CA使用不同的方法驗證公開密鑰與實體之間的綁定,所以在選擇信任的CA進行證書申請之前,必須理解CA策略,從而指導對實體進行相應的配置。
一個PKI體係由終端實體、證書機構、注冊機構和PKI存儲庫四類實體共同組成,如下圖1-1。
圖1-1 PKI體係結構圖
終端實體是PKI產品或服務的最終使用者,可以是個人、組織、設備(如路由器、交換機)或計算機中運行的進程。
CA是PKI的信任基礎,是一個用於簽發並管理數字證書的可信實體。其作用包括:發放證書、規定證書的有效期和通過發布CRL確保必要時可以廢除證書。
RA是CA的延伸,可作為CA的一部分,也可以獨立。RA功能包括個人身份審核、CRL管理、密鑰對產生和密鑰對備份等。PKI國際標準推薦由一個獨立的RA來完成注冊管理的任務,這樣可以增強應用係統的安全性。
PKI存儲庫包括LDAP(Lightweight Directory Access Protocol,輕量級目錄訪問協議)服務器和普通數據庫,用於對用戶申請、證書、密鑰、CRL和日誌等信息進行存儲和管理,並提供一定的查詢功能。
LDAP提供了一種訪問PKI存儲庫的方式,通過該協議來訪問並管理PKI信息。LDAP服務器負責將RA服務器傳輸過來的用戶信息以及數字證書進行存儲,並提供目錄瀏覽服務。用戶通過訪問LDAP服務器獲取自己和其他用戶的數字證書。
PKI技術的廣泛應用能滿足人們對網絡交易安全保障的需求。作為一種基礎設施,PKI的應用範圍非常廣泛,並且在不斷發展之中,下麵給出幾個應用實例。
VPN是一種構建在公用通信基礎設施上的專用數據通信網絡,利用網絡層安全協議(如IPsec)和建立在PKI上的加密與數字簽名技術來獲得機密性保護。
電子郵件的安全也要求機密、完整、認證和不可否認,而這些都可以利用PKI技術來實現。目前發展很快的安全電子郵件協議S/MIME(Secure/Multipurpose Internet Mail Extensions,安全/多用途Internet郵件擴充協議),是一個允許發送加密和有簽名郵件的協議。該協議的實現需要依賴於PKI技術。
為了透明地解決Web的安全問題,在兩個實體進行通信之前,先要建立SSL(Secure Sockets Layer,安全套接字層)連接,以此實現對應用層透明的安全通信。SSL協議允許在瀏覽器和服務器之間進行加密通信,並且利用PKI技術使用基於數字簽名的方法對服務器和瀏覽器端進行身份驗證。
針對一個使用PKI的網絡,配置PKI的目的就是為指定的實體向CA申請一個本地證書,並由設備對證書的有效性進行驗證。下麵是PKI的工作過程:
(1) 實體向RA提出證書申請;
(2) RA審核實體身份,將實體身份信息和公開密鑰以數字簽名的方式發送給CA;
(3) CA驗證數字簽名,同意實體的申請,頒發證書;
(4) RA接收CA返回的證書,發送到LDAP服務器(或其它形式的發布點)以提供目錄瀏覽服務,並通知實體證書發行成功;
(5) 實體獲取證書,利用該證書可以與其它實體使用加密、數字簽名進行安全通信;
(6) 實體希望撤消自己的證書時,向CA提交申請。CA批準實體撤消證書,並更新CRL,發布到LDAP服務器(或其它形式的發布點)。
表1-1 PKI配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置實體DN |
必選 |
||
配置PKI域 |
必選 |
||
PKI證書申請 |
自動申請證書 |
二者必選其一 |
|
手工申請證書 |
|||
手工獲取證書 |
可選 |
||
配置PKI證書驗證 |
可選 |
||
銷毀本地RSA或ECDSA密鑰對 |
可選 |
||
刪除證書 |
可選 |
||
配置證書屬性的訪問控製策略 |
可選 |
一份證書是一個公開密鑰與一個身份的綁定,而身份必須與一個特定的PKI實體相關聯。實體DN(Distinguished Name,識別名)的參數是實體的身份信息,CA根據實體提供的身份信息來唯一標識證書申請者。
實體DN的參數包括:
· 實體通用名
· 實體所屬國家代碼,用標準的兩字符代碼表示。例如,“CN”是中國的合法國家代碼,“US”是美國的合法國家代碼
· 實體FQDN(Fully Qualified Domain Name,完全合格域名),是實體在網絡中的唯一標識,由一個主機名和域名組成,可被解析為IP地址。例如,www是一個主機名,whatever.com是一個域名,則www.whatever.com就是一個FQDN
· 實體IP地址
· 實體所在地理區域名稱
· 實體所屬組織名稱
· 實體所屬部門名稱
· 實體所屬州省
實體DN的配置必須與CA證書頒發策略相匹配,以確認實體DN的配置任務,如哪些實體參數為必選配置,哪些為可選配置。申請者的身份信息必須符合CA證書頒發策略,否則證書申請可能會失敗。
表1-2 配置實體DN
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
創建一個實體,並進入該實體視圖 |
pki entity entity-name |
必選 缺省情況下,無實體存在 |
配置實體通用名 |
common-name name |
可選 缺省情況下,未配置實體的通用名 |
配置實體所屬國家代碼 |
country country-code-str |
可選 缺省情況下,未配置實體所屬國家代碼 |
配置實體FQDN |
fqdn name-str |
可選 缺省情況下,未配置實體FQDN |
配置實體IP地址 |
ip ip-address |
可選 缺省情況下,未配置實體IP地址 |
配置實體所在地理區域名稱 |
locality locality-name |
可選 缺省情況下,未配置實體所在地理區域 |
配置實體所屬組織名稱 |
organization org-name |
可選 缺省情況下,未配置實體所屬組織 |
配置實體所屬部門名稱 |
organization-unit org-unit-name |
可選 缺省情況下,未配置實體所屬部門 |
配置實體所屬州省 |
state state-name |
可選 缺省情況下,未配置實體所屬州省 |
· 目前一台設備上最多可以創建兩個實體。
· Windows 2000 CA服務器對證書申請的數據長度有一定的限製。實體DN配置項超過一定數據長度時,申請證書沒有回應。
實體在進行PKI證書申請操作之前需要配置一些注冊信息來配合完成申請的過程。這些信息的集合就是一個實體的PKI域。
PKI域是一個本地概念,因此創建PKI域的目的是便於其它應用引用PKI的配置,比如IKE、SSL等。一個設備上配置的PKI域對CA和其它設備是不可見的,每一個PKI域有單獨的域參數配置信息。
PKI域中包括以下參數:
· 信任的CA名稱
在申請證書時,是通過一個可信實體認證機構,來完成實體證書的注冊頒發,因此必須指定一個信任的CA名稱。
· 實體名稱
向CA發送證書申請請求時,必須指定所使用的實體名,以向CA表明自己的身份。
· 證書申請的注冊機構
證書申請的受理一般由一個獨立的注冊機構(即RA)來承擔,它接收用戶的注冊申請,審查用戶的申請資格,並決定是否同意CA給其簽發數字證書。注冊機構並不給用戶簽發證書,而隻是對用戶進行資格審查。有時PKI把注冊管理的職能交給CA來完成,而不設立獨立運行的RA,但這並不是取消了PKI的注冊功能,而隻是將其作為CA的一項功能而已。PKI推薦獨立使用RA作為注冊審理機構。
· 注冊服務器的URL
證書申請之前必須指定注冊服務器的URL,隨後實體可通過簡單證書注冊協議(SCEP,Simple Certification Enrollment Protocol)向該服務器提出證書申請,SCEP是專門用於與認證機構進行通信的協議。
· 證書申請狀態查詢的周期和次數
實體在發送證書申請後,如果CA采用手工驗證申請,證書的發布會需要很長時間。在此期間,客戶端需要定期發送狀態查詢,以便在證書簽發後能及時獲取到證書。客戶端可以配置證書申請狀態的查詢周期和次數。
· LDAP服務器IP地址
在PKI係統中,用戶的證書和CRL信息的存儲是一個非常核心的問題。一般采用LDAP服務器來存儲證書和CRL,這時就需要指定LDAP服務器的位置。
· 驗證根證書時使用的指紋
當設備從CA獲得根證書時,需要驗證CA根證書的指紋,即根證書內容的散列值,該值對於每一個證書都是唯一的。如果CA根證書的指紋與在PKI域中配置的指紋不同,則設備將拒絕接收根證書。
表1-3 配置PKI域
配置任務 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
創建一個PKI域,並進入PKI域視圖 |
pki domain domain-name |
必選 |
配置信任的CA名稱 |
ca identifier name |
必選 缺省情況下,未配置信任的CA名稱 |
指定實體名稱 |
certificate request entity entity-name |
必選 缺省情況下,未指定實體名稱 指定的實體名稱必須已創建 |
配置證書申請的注冊受理機構 |
certificate request from { ca | ra } |
必選 缺省情況下,未指定證書申請的注冊受理機構 |
配置注冊服務器URL |
certificate request url url-string |
必選 缺省情況下,未指定注冊服務器URL |
配置證書申請狀態查詢的周期和次數 |
certificate request polling { count count | interval minutes } |
可選 缺省情況下,證書申請狀態查詢周期為20分鍾,每一個周期內查詢50次 |
配置LDAP服務器 |
ldap-server ip ip-address [ port port-number ] [ version version-number ] |
可選 缺省情況下,未指定LDAP服務器 |
配置驗證根證書時使用的指紋 |
root-certificate fingerprint { md5 | sha1 } string |
當證書申請方式為自動方式時,此配置必選;當證書申請方式為手工方式時,此配置可選,若不配置,需要用戶自行驗證根證書指紋 缺省情況下,未指定驗證根證書時使用的指紋 |
· 目前一台設備可支持同時創建32個PKI域。
· CA的名稱隻是在獲取CA證書時使用,申請本地證書時不會用到。
· 目前,注冊服務器URL的配置不支持域名解析。
證書申請就是實體向CA自我介紹的過程。實體向CA提供身份信息,以及相應的公開密鑰,這些信息將成為頒發給該實體證書的主要組成部分。實體向CA提出證書申請,有離線和在線兩種方式。離線申請方式下,CA允許申請方通過帶外方式(如電話、磁盤、電子郵件等)向CA提供申請信息。
在線證書申請有手工發起和自動發起兩種方式。
配置證書申請方式為自動方式後,當有應用協議與PKI聯動時,如果應用協議中的實體無本地證書(例如,IKE協商采用數字簽名方法進行身份認證,但在協商過程中沒有發現本地證書),則實體自動通過SCEP協議向CA發起證書申請,並在申請成功後將本地證書獲取到本地保存。在證書申請之前,若當前的PKI域中沒有CA證書,也會首先自動獲取CA證書。
表1-4 自動申請證書
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入PKI域視圖 |
pki domain domain-name |
- |
配置證書申請為自動方式 |
certificate request mode auto [ key-length key-length | password { cipher | simple } password ] * |
必選 缺省情況下,證書申請為手工方式 |
對於係統自動申請到的證書,當它們即將過期時或正式過期後,係統不會自動向CA發起重新申請,這種情況下,可能會由於證書過期造成應用業務的中斷。
配置證書申請方式為手工方式後,需要手工執行申請本地證書的工作。在手工申請本地證書之前,
必須保證當前的PKI域中已經存在CA證書和密鑰對。
· PKI域中的CA證書用來驗證獲取到的本地證書的真實性和合法性。若PKI域中沒有CA證書,則需要手工獲取CA證書。
· 密鑰對的產生是證書申請過程中重要的一步。申請過程使用了一對主機密鑰:私鑰和公鑰。私鑰由用戶保留,公鑰和其他信息則交由CA中心進行簽名,從而產生證書。若PKI域中不存在密鑰對,則需要生成本地密鑰對。有關RSA和ECDSA密鑰對的具體配置請參見“安全配置指導”中的“公鑰管理”。
表1-5 手工申請證書
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入PKI域視圖 |
pki domain domain-name |
- |
配置證書申請為手工方式 |
certificate request mode manual |
可選 缺省情況下,證書申請為手工方式 |
退回係統視圖 |
quit |
- |
手工獲取CA證書 |
請參見1.6 |
必選 |
生成本地RSA或ECDSA密鑰對 |
public-key local create { ecdsa | rsa } |
必選 缺省情況下,本地沒有RSA和ECDSA密鑰對 |
手工申請本地證書 |
pki request-certificate domain domain-name [ password ] [ pkcs10 [ filename filename ] ] |
必選 |
· 若本地證書已存在,為保證密鑰對與現存證書的一致性,不應執行創建密鑰對命令,必須在刪除本地證書後再執行public-key local create命令生成新的密鑰對。有關public-key local create命令的詳細介紹,請參見“安全命令參考”中的“公鑰管理”。
· 創建的新密鑰對將覆蓋舊密鑰對。若本地已有RSA或ECDSA密鑰對,執行public-key local create命令時,係統會提示是否替換原有密鑰對。
· 如果本地證書已存在,則不允許再執行證書申請操作,以避免因相關配置的修改使得證書與注冊信息不匹配。若想重新申請,請先使用pki delete-certificate命令刪除存儲於本地的CA證書與本地證書,然後再執行pki request-certificate domain命令。
· 當無法通過SCEP協議向CA在線申請證書時,可以首先通過執行指定參數pkcs10的命令pki request-certificate domain打印出本地的證書申請信息,或者通過執行指定pkcs10 filename filename參數的該命令將證書申請信息直接保存到本地的指定文件中,然後再通過帶外方式將這些本地證書申請信息發送給CA進行證書申請。
· 證書申請之前必須保證實體時鍾與CA的時鍾同步,否則申請證書的有效期會出現異常。
· pki request-certificate domain配置不能被保存在配置文件中。
用戶通過此配置可以將已存在的CA證書或本地證書獲取至本地。獲取證書有兩種方式:離線方式和在線方式。離線方式下獲取證書需要通過帶外方式(如FTP、磁盤、電子郵件等)取得證書,然後將其導入至本地。
獲取證書的目的有兩個:
· 將CA簽發的與實體所在安全域有關的證書存放到本地,以提高證書的查詢效率,減少向PKI證書存儲庫查詢的次數。
· 為證書的驗證做好準備。
在線獲取本地證書之前必須完成LDAP服務器的配置。
表1-6 手工獲取證書
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
手工獲取證書 |
在線方式 |
pki retrieval-certificate { ca | local } domain domain-name |
二者必選其一 |
離線方式導入證書 |
pki import-certificate { ca | local } domain domain-name { der | p12 | pem } [ filename filename ] |
· 如果本地已有CA證書存在,則不允許執行手工獲取CA證書的操作,避免因相關配置的修改使得證書與注冊信息不匹配。若想重新獲取,請先使用pki delete-certificate命令刪除CA證書與本地證書後,再執行此命令。
· pki retrieval-certificate配置不能被保存在配置文件中。
· 為保證設備上已申請的證書可用,請確保設備當前係統時間處於證書的有效期範圍之內。
在使用每一個證書之前,必須對證書進行驗證。證書驗證包括對簽發時間、簽發者信息以及證書的有效性幾方麵進行驗證。證書驗證的核心是檢查CA在證書上的簽名,並確定證書仍在有效期內,而且未被廢除,因此在進行證書驗證操作之前必須首先獲取CA證書。
配置證書驗證時可以設置是否必須進行CRL檢查。
· 如果配置為使能CRL檢查,則檢驗證書的有效性,必須通過CRL判斷。因此,在進行證書有效性驗證之前,除了獲取CA證書還必須獲取CRL並下載至本地;
· 如果配置為不使能CRL檢查,則僅需要獲取CA證書來判斷證書的有效性。
表1-7 配置使能CRL檢查的證書驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入PKI域視圖 |
pki domain domain-name |
- |
配置CRL發布點的URL |
crl url url-string |
可選 缺省情況下,未指定CRL發布點的URL |
配置CRL的更新周期 |
crl update-period hours |
可選 缺省情況下,根據CRL文件中的下次更新域進行更新 |
使能CRL檢查 |
crl check enable |
可選 缺省情況下,CRL檢查處於開啟狀態 |
退回係統視圖 |
quit |
- |
獲取CA證書 |
請參見1.6 |
必選 |
獲取CRL並下載至本地 |
pki retrieval-crl domain domain-name |
必選 |
檢驗證書的有效性 |
pki validate-certificate { ca | local } domain domain-name |
必選 |
· CRL的更新周期是指本地從CRL存儲服務器下載CRL的時間間隔。手工配置的CRL更新周期將優先於CRL文件中指定的更新時間。
· pki retrieval-crl domain命令不能被保存在配置文件中。
表1-8 配置不使能CRL檢查的PKI證書驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入PKI域視圖 |
pki domain domain-name |
- |
禁止CRL檢查 |
crl check disable |
必選 缺省情況下,CRL檢查處於開啟狀態 |
退回係統視圖 |
quit |
- |
獲取CA證書 |
請參見1.6 |
必選 |
檢驗證書的有效性 |
pki validate-certificate { ca | local } domain domain-name |
必選 |
由CA頒發的證書都會設置有效期,證書生命周期的長短由簽發證書的CA中心來確定。當用戶的私鑰被泄漏或證書的有效期快到時,用戶應該刪除舊的密鑰對,產生新的密鑰對,重新申請新的證書。通過此配置用戶可以銷毀本地RSA或ECDSA密鑰對。
表1-9 銷毀本地RSA密鑰對
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
銷毀本地RSA或ECDSA密鑰對 |
public-key local destroy { ecdsa | rsa } |
必選 |
命令public-key local destroy的詳細介紹可參考“安全命令參考”中的“公鑰管理”。
證書過期或希望重新申請證書,可以通過此配置刪除一個已經存在的本地證書或CA證書。
表1-10 配置刪除證書
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置刪除證書 |
pki delete-certificate { ca | local } domain domain-name |
必選 |
通過配置證書屬性的訪問控製策略,可以對用戶的訪問權限進行進一步的控製,保證了與之通信的服務器的安全性。
表1-11 配置證書屬性的訪問控製策略
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
創建證書屬性組,並進入證書屬性組視圖 |
pki certificate attribute-group group-name |
必選 缺省情況下,不存在證書屬性組 |
配置證書頒發者名、證書主題名及備用主題名的屬性規則 |
attribute id { alt-subject-name { fqdn | ip } | { issuer-name | subject-name } { dn | fqdn | ip } } { ctn | equ | nctn | nequ} attribute-value |
可選 缺省情況下,對證書頒發者名、證書主題名及備用主題名沒有限製 |
退回係統視圖 |
quit |
- |
創建證書屬性訪問控製策略,並進入證書屬性訪問控製策略視圖 |
pki certificate access-control-policy policy-name |
必選 缺省情況下,不存在證書屬性訪問控製策略 |
配置證書屬性控製規則 |
rule [ id ] { deny | permit } group-name |
必選 缺省情況下,不存在證書屬性控製規則 group-name必須是已存在的證書屬性組的名稱 |
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後PKI的運行情況,通過查看顯示信息驗證配置的效果。
表1-12 PKI顯示和維護
操作 |
命令 |
顯示證書內容或證書申請狀態 |
display pki certificate { { ca | local } domain domain-name | request-status } [ | { begin | exclude | include } regular-expression ] |
顯示CRL內容 |
display pki crl domain domain-name [ | { begin | exclude | include } regular-expression ] |
顯示證書屬性組的信息 |
display pki certificate attribute-group { group-name | all } [ | { begin | exclude | include } regular-expression ] |
顯示證書屬性訪問控製策略的信息 |
display pki certificate access-control-policy { policy-name | all } [ | { begin | exclude | include } regular-expression ] |
· 當采用Windows Server作為CA時,需要安裝SCEP插件。此時,配置PKI domain時,需要使用certificate request from ra命令指定實體從RA注冊申請證書。
· 當采用RSA Keon軟件時,不需要安裝SCEP插件。此時,配置PKI domain時,需要使用certificate request from ca命令指定實體從CA注冊申請證書。
在作為PKI實體的設備Switch上進行相關配置,實現以下需求:
· 設備向CA服務器申請本地證書
· 獲取CRL為證書驗證做準備
圖1-2 PKI實體向CA申請證書組網圖
(1) 配置CA服務器
· 創建CA服務器myca
在本例中,CA服務器上首先需要進行基本屬性Nickname和Subject DN的配置。其它屬性選擇默認值。其中,Nickname為可信任的CA名稱,Subject DN為CA的DN屬性,包括CN、OU、O和C。
· 配置擴展屬性
基本屬性配置完畢之後,還需要在生成的CA服務器管理頁麵上對“Jurisdiction Configuration”進行配置,主要內容包括:根據需要選擇合適的擴展選項;啟動自動頒發證書功能;添加可以自動頒發證書的地址範圍。
· 配置CRL發布
CA服務器的基本配置完成之後,需要進行CRL的相關配置。
本例中選擇CRL的發布方式為HTTP,自動生成CRL發布點的URL為http://4.4.4.133:447/myca.crl。
以上配置完成之後,還需要保證設備的係統時鍾與CA的時鍾同步才可以正常使用設備來申請證書和獲取CRL。
(2) 配置Switch
· 配置實體命名空間
# 配置實體名稱為aaa,通用名為switch。
<Switch> system-view
[Switch] pki entity aaa
[Switch-pki-entity-aaa] common-name switch
[Switch-pki-entity-aaa] quit
· 配置PKI域參數
# 創建並進入PKI域torsa。
[Switch] pki domain torsa
# 配置可信任的CA名稱為myca。
[Switch-pki-domain-torsa] ca identifier myca
# 配置注冊服務器URL,格式為http://host:port/Issuing Jurisdiction ID。其中的Issuing Jurisdiction ID為CA服務器上生成的16進製字符串。
[Switch-pki-domain-torsa] certificate request url http://4.4.4.133:446/c95e970f632d27be5e8cbf80e971d9c4a9a93337
# 配置證書申請的注冊受理機構為CA。
[Switch-pki-domain-torsa] certificate request from ca
# 指定實體名稱為aaa。
[Switch-pki-domain-torsa] certificate request entity aaa
# 配置CRL發布點位置。
[Switch-pki-domain-torsa] crl url http://4.4.4.133:447/myca.crl
[Switch-pki-domain-torsa] quit
· 用RSA算法生成本地密鑰對
[Switch] public-key local create rsa
The range of public key size is (512 ~ 2048).
NOTES: If the key modulus is greater than 512,
It will take a few minutes.
Press CTRL+C to abort.
Input the bits in the modulus [default = 1024]:
Generating Keys...
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++
· 證書申請
# 獲取CA證書並下載至本地。
[Switch] pki retrieval-certificate ca domain torsa
Retrieving CA/RA certificates. Please wait a while......
The trusted CA's finger print is:
MD5 fingerprint:EDE9 0394 A273 B61A F1B3 0072 A0B1 F9AB
SHA1 fingerprint: 77F9 A077 2FB8 088C 550B A33C 2410 D354 23B2 73A8
Is the finger print correct?(Y/N):y
Saving CA/RA certificates chain, please wait a moment......
CA certificates retrieval success.
# 獲取CRL並下載至本地。
[Switch] pki retrieval-crl domain torsa
Connecting to server for retrieving CRL. Please wait a while.....
CRL retrieval success!
# 手工申請本地證書。
[Switch] pki request-certificate domain torsa challenge-word
Certificate is being requested, please wait......
[Switch]
Enrolling the local certificate,please wait a while......
Certificate request Successfully!
Saving the local certificate to device......
Done!
# 通過以下顯示命令可以查看獲取的本地證書信息。
[Switch] display pki certificate local domain torsa
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
9A96A48F 9A509FD7 05FFF4DF 104AD094
Signature Algorithm: sha1WithRSAEncryption
Issuer:
C=cn
O=org
OU=test
CN=myca
Validity
Not Before: Jan 8 09:26:53 2007 GMT
Not After : Jan 8 09:26:53 2008 GMT
Subject:
CN=switch
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00D67D50 41046F6A 43610335 CA6C4B11
F8F89138 E4E905BD 43953BA2 623A54C0
EA3CB6E0 B04649CE C9CDDD38 34015970
981E96D9 FF4F7B73 A5155649 E583AC61
D3A5C849 CBDE350D 2A1926B7 0AE5EF5E
D1D8B08A DBF16205 7C2A4011 05F11094
73EB0549 A65D9E74 0F2953F2 D4F0042F
19103439 3D4F9359 88FB59F3 8D4B2F6C
2B
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 CRL Distribution Points:
URI:http://4.4.4.133:447/myca.crl
Signature Algorithm: sha1WithRSAEncryption
836213A4 F2F74C1A 50F4100D B764D6CE
B30C0133 C4363F2F 73454D51 E9F95962
EDE9E590 E7458FA6 765A0D3F C4047BC2
9C391FF0 7383C4DF 9A0CCFA9 231428AF
987B029C C857AD96 E4C92441 9382E798
8FCC1E4A 3E598D81 96476875 E2F86C33
75B51661 B6556C5E 8F546E97 5197734B
C8C29AC7 E427C8E4 B9AAF5AA 80A75B3C
關於獲取的CA證書及CRL文件的詳細信息可以通過相應的顯示命令來查看,此處略。具體內容請參考命令display pki certificate ca domain和display pki crl domain。
配置PKI實體Switch向CA服務器申請本地證書。
圖1-3 PKI實體向CA申請證書組網圖
(1) 配置CA服務器
· 安裝證書服務器組件
打開[控製麵板]/[添加/刪除程序],選擇[添加/刪除Windows組件]中的“證書服務”進行安裝。
· 安裝SCEP插件
由於Windows 2003 server作為CA服務器時,缺省情況下不支持SCEP,所以需要安裝SCEP插件,才能使設備具備證書自動注冊、獲取等功能。插件安裝完畢後,彈出提示框,提示框中的URL地址即為設備上配置的注冊服務器地址。
· 修改證書服務的屬性
完成上述配置後,打開[控製麵板/管理工具]中的[證書頒發機構],如果安裝成功,在[頒發的證書]中將存在兩個CA頒發給RA的證書。選擇[CA server 屬性]中的“策略模塊”的屬性為“如果可以的話,按照證書模板中的設置。否則,將自動頒發證書(F)。”
· 修改IIS服務的屬性
打開[控製麵板/管理工具]中的[Internet 信息服務(IIS)管理器],將[默認網站 屬性]中“主目錄”的本地路徑修改為證書服務保存的路徑。另外,為了避免與已有的服務衝突,建議修改默認網站的TCP端口號為未使用的端口號。
以上配置完成之後,還需要保證設備的係統時鍾與CA的時鍾同步才可以正常使用設備來申請證書。
(2) 配置Switch
· 配置實體命名空間
# 配置實體名稱為aaa,通用名為switch。
<Switch> system-view
[Switch] pki entity aaa
[Switch-pki-entity-aaa] common-name switch
[Switch-pki-entity-aaa] quit
· 配置PKI域參數
# 創建並進入PKI域torsa。
[Switch] pki domain torsa
# 配置可信任的CA名稱為myca。
[Switch-pki-domain-torsa] ca identifier myca
# 配置注冊服務器URL,格式為http://host:port/certsrv/mscep/mscep.dll。其中,host:port為CA服務器的主機地址和端口號。
[Switch-pki-domain-torsa] certificate request url http://4.4.4.1:8080/certsrv/mscep/mscep.dll
# 配置證書申請的注冊受理機構為RA。
[Switch-pki-domain-torsa] certificate request from ra
# 指定實體名稱為aaa。
[Switch-pki-domain-torsa] certificate request entity aaa
· 用RSA算法生成本地密鑰對
[Switch] public-key local create rsa
The range of public key size is (512 ~ 2048).
NOTES: If the key modulus is greater than 512,
It will take a few minutes.
Press CTRL+C to abort.
Input the bits in the modulus [default = 1024]:
Generating Keys...
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++
· 證書申請
# 獲取CA證書並下載至本地。
[Switch] pki retrieval-certificate ca domain torsa
Retrieving CA/RA certificates. Please wait a while......
The trusted CA's finger print is:
MD5 fingerprint:766C D2C8 9E46 845B 4DCE 439C 1C1F 83AB
SHA1 fingerprint:97E5 DDED AB39 3141 75FB DB5C E7F8 D7D7 7C9B 97B4
Is the finger print correct?(Y/N):y
Saving CA/RA certificates chain, please wait a moment......
CA certificates retrieval success.
# 手工申請本地證書。
[Switch] pki request-certificate domain torsa challenge-word
Certificate is being requested, please wait......
[Switch]
Enrolling the local certificate,please wait a while......
Certificate request Successfully!
Saving the local certificate to device......
Done!
# 通過以下顯示命令可以查看獲取的本地證書信息。
[Switch] display pki certificate local domain torsa
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
48FA0FD9 00000000 000C
Signature Algorithm: sha1WithRSAEncryption
Issuer:
CN=myca
Validity
Not Before: Nov 21 12:32:16 2007 GMT
Not After : Nov 21 12:42:16 2008 GMT
Subject:
CN=switch
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00A6637A 8CDEA1AC B2E04A59 F7F6A9FE
5AEE52AE 14A392E4 E0E5D458 0D341113
0BF91E57 FA8C67AC 6CE8FEBB 5570178B
10242FDD D3947F5E 2DA70BD9 1FAF07E5
1D167CE1 FC20394F 476F5C08 C5067DF9
CB4D05E6 55DC11B6 9F4C014D EA600306
81D403CF 2D93BC5A 8AF3224D 1125E439
78ECEFE1 7FA9AE7B 877B50B8 3280509F
6B
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Key Identifier:
B68E4107 91D7C44C 7ABCE3BA 9BF385F8 A448F4E1
X509v3 Authority Key Identifier:
keyid:9D823258 EADFEFA2 4A663E75 F416B6F6 D41EE4FE
X509v3 CRL Distribution Points:
URI:http://l00192b/CertEnroll/CA%20server.crl
URI:file://\\l00192b\CertEnroll\CA server.crl
Authority Information Access:
CA Issuers - URI:http://l00192b/CertEnroll/l00192b_CA%20server.crt
CA Issuers - URI:file://\\l00192b\CertEnroll\l00192b_CA server.crt
1.3.6.1.4.1.311.20.2:
.0.I.P.S.E.C.I.n.t.e.r.m.e.d.i.a.t.e.O.f.f.l.i.n.e
Signature Algorithm: sha1WithRSAEncryption
81029589 7BFA1CBD 20023136 B068840B
……(略)
關於獲取的CA證書的詳細信息可以通過相應的顯示命令來查看,此處略。具體內容請參考命令display pki certificate ca domain。
· 客戶端通過HTTPS(Hypertext Transfer Protocol Secure,超文本傳輸協議的安全版本)協議遠程訪問設備(HTTPS服務器)。
· 通過SSL協議保證合法客戶端安全登錄HTTPS服務器。
· 為HTTPS服務器製定證書屬性的訪問控製策略,對客戶端的訪問權限進行控製。
圖1-4 證書屬性的訪問控製策略應用組網圖
· SSL配置的相關內容請參見“安全配置指導”中的“SSL”。
· HTTPS配置的相關內容請參見“基礎配置指導”中的“配置通過Web網管登錄設備”。
· SSL策略所引用的PKI域必須首先創建,PKI域參數的具體配置請參見1.12.1 中的“配置PKI域參數”。
(1) 配置HTTPS服務器
# 配置HTTPS服務器使用的SSL策略。
<Switch> system-view
[Switch] ssl server-policy myssl
[Switch-ssl-server-policy-myssl] pki-domain 1
[Switch-ssl-server-policy-myssl] client-verify enable
[Switch-ssl-server-policy-myssl] quit
(2) 配置證書屬性組
# 配置證書屬性組mygroup1,並創建兩個屬性規則。規則1定義證書主題名的DN包含字符串aabbcc;規則2定義證書頒發者名中的IP地址等於10.0.0.1。
[Switch] pki certificate attribute-group mygroup1
[Switch-pki-cert-attribute-group-mygroup1] attribute 1 subject-name dn ctn aabbcc
[Switch-pki-cert-attribute-group-mygroup1] attribute 2 issuer-name ip equ 10.0.0.1
[Switch-pki-cert-attribute-group-mygroup1] quit
# 配置證書屬性組mygroup2,並創建兩個屬性規則。規則1定義證書備用主題名中的FQDN不包含字符串apple;規則2定義證書頒發者名的DN包含字符串aabbcc。
[Switch] pki certificate attribute-group mygroup2
[Switch-pki-cert-attribute-group-mygroup2] attribute 1 alt-subject-name fqdn nctn apple
[Switch-pki-cert-attribute-group-mygroup2] attribute 2 issuer-name dn ctn aabbcc
[Switch-pki-cert-attribute-group-mygroup2] quit
(3) 配置證書訪問控製策略
# 配置訪問控製策略myacp,並建立兩個控製規則。
[Switch] pki certificate access-control-policy myacp
[Switch-pki-cert-acp-myacp] rule 1 deny mygroup1
[Switch-pki-cert-acp-myacp] rule 2 permit mygroup2
[Switch-pki-cert-acp-myacp] quit
(4) 配置HTTPS服務器與相關策略進行關聯,並啟動HTTPS服務器
# 配置指定HTTPS服務器的SSL策略為myssl。
[Switch] ip https ssl-server-policy myssl
# 配置指定HTTPS服務器的證書訪問控製策略為myacp。
[Switch] ip https certificate access-control-policy myacp
# 啟動HTTPS服務器。
[Switch] ip https enable
獲取CA證書時失敗。
可能有以下原因:
· 網絡連接故障,如網線折斷,接口鬆動;
· 沒有設置信任的CA名稱;
· 證書申請的注冊服務器URL位置不正確或未配置;
· 沒有配置證書申請注冊受理機構;
· 設備的係統時鍾與CA的時鍾不同步。
· 排除物理連接故障;
· 查看各必配項是否都正確配置;
· 可通過ping命令測試注冊服務器是否連接正常;
· 配置證書申請注冊受理機構;
· 保持係統時鍾與CA同步。
手工證書請求失敗。
可能有以下原因:
· 網絡連接故障,如網線折斷,接口鬆動;
· 申請之前沒有先獲取CA證書;
· 當前的密鑰對已經綁定證書;
· 沒有設置信任的CA名稱;
· 證書申請的注冊服務器URL位置不正確或未配置;
· 沒有配置證書申請注冊受理機構;
· 沒有配置實體DN中必配參數。
· 排除物理連接故障;
· 獲取CA證書;
· 重新創建密鑰對;
· 配置信任的CA名稱;
· 可通過ping命令測試注冊服務器是否連接正常;
· 配置證書申請注冊受理機構;
· 可通過查看CA/RA注冊策略選擇相關的實體DN屬性進行配置。
獲取CRL發生失敗。
可能有以下原因:
· 網絡連接故障,如網線折斷,接口鬆動;
· 獲取CRL之前未先取得CA證書;
· 未設置LDAP服務器的IP地址;
· 未設置CRL發布點位置;
· LDAP服務器版本配置錯誤;
· 排除物理連接故障;
· 獲取CA證書;
· 設置LDAP服務器的IP地址;
· 設置CRL發布點位置;
· 重新配置LDAP版本;
· 確保能夠正常訪問DNS服務器,並且保證DNS服務器能夠解析配置的CRL發布點域名。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!