利用IPsec實現網路安全之四(CA證書實現身份驗證)
作者:許本新
網路環境拓撲如圖4-1所示
各位讀友大家好,寫文之前先向大家問好,已經好久沒有些東西了,今天開啟部落格發現IPSEC系列文章還沒有結束,所以就又有了繼續寫下去的衝動了。今天接著上一篇敘,上篇介紹了IPSEC的共享金鑰實現身份驗證,此篇則介紹利用CA證書實現身份驗證!
Windows 2003 IPSec 的身份驗證主要提供了三種驗證模式,它們分別是Kerberos V5 協議、證書、預共享金鑰。而所有證書驗證都由加密的 API (CAPI) 執行。IKE 只是用來協商使用哪些證書,併為證書憑據的交換提供安全。IPSec 策略指定使用哪些根證書頒發機構 (CA),而不指定使用哪個特定的證書。在 IPSec 策略配置中雙方都必須有公用的根 CA。
利用CA證書實現驗證,需要對證書作出以下要求:
a) 證書儲存在計算機帳戶(計算機儲存)中
b) 證書包含一個 RSA 公鑰,該公鑰具有可用來進行 RSA 簽名的對應的私鑰。
c) 在證書有效期內使用
d) 根證書頒發機構受信任
e) 可以由 CAPI 模組建立有效的證書頒發機構鏈
這些要求是相當基本的。IPSec 不要求計算機證書是 IPSec 型別的證書,因為現有的證書頒發機構可能不頒發這些型別的證書。
一、 IPsec兩端申請和安裝證書
1、 開啟 Internet Explorer 並轉到證書頒發機構站點。如果您沒有另一個從中接收證書的站點,請使用: http://caserverIP/certsrv 本站點提供到四個證書頒發機構的訪問途徑。為了簡明起見,本步驟使用獨立根 CA (sectestca3) 頒發的證書。
2、 選擇獨立根 (RSA 2048)。
3、 選擇申請證書,然後單擊下一步。
4、 選擇高階請求,然後單擊下一步。
5、 選擇使用表格提交一個證書申請。
6、 在高階證書申請表格中,輸入相關內容如圖4-2所示
7、 在CA伺服器上為IPsec計算機頒發證書如圖4-3所示
8、 在IPsec計算機上通過 “檢視掛起的證書申請狀態”安裝CA頒發的證書如圖4-4所示
9、 安裝證書鏈如圖4-5、4-6、4-7和圖4-8所示,將CA證書和證書鏈下載下來,然後將證書安裝在“受信任根證書頒發機構”的計算機中。注意IPsec協商雙方都需要申請和安裝證書,方法完全相同。
圖4-5
圖4-6
圖4-7
圖4-8
二、 新增IPSEC策略配置CA身份驗證
如果您在建立新的規則,則可以瀏覽以查詢可使用的證書頒發機構。這是在“受信任的根證書頒發機構”資料夾中的證書頒發機構證書的列表,而不是您的計算機個人證書的列表。IPSec 規則中的該根 CA 規範有兩個目的。第一,它給 IKE 提供它信任的根 CA。您的計算機上的 IKE 將從此根 CA 向其它計算機傳送有效證書的申請。第二,CA 規範提供根 CA 的名稱,您的計算機將使用該名稱來查詢其自己的個人證書來響應對等計算機的申請。 注意 您必須至少選擇您的計算機證書可以返回的證書頒發機構根,即,在您的計算機的個人儲存中,計算機證書的證書路徑中的頂層 CA。
IPSec 規則編輯器能使您建立證書頒發機構的有序表,您的計算機在 IKE 協商期間將其在申請中傳送給對等計算機。對等計算機必須有您的列表中的其中一個根 CA 頒發的個人證書,才能保證身份驗證成功。 您可以繼續按照需要新增和排列證書頒發機構。
IPsec規則建立完成後在身份驗證項中選擇CA證書並保證IPsec雙方配置完全一致否則不能協商成功,具體策略配置與共享金鑰配置方法完全相同,只是身份驗證選擇CA驗證模式即可。如圖4-9所示。
三、 檢測協商是否成功
最後需要注意的是,兩邊IPSEC策略配置需要完全相同,而且最後一定要將策略指派,然後通過ping來檢測是否能夠協商成功。如圖4-10所示表示協商會議成功。
圖4-10
另外也可以通過抓取報文檢測如圖4-11所示。
本文轉自xubenxin 51CTO部落格,原文連結:http://blog.51cto.com/windows/405888,如需轉載請自行聯絡原作者
相關文章
- Rust中實現JWT身份驗證RustJWT
- node實現基於token的身份驗證
- 實驗二 網路嗅探與身份認證
- 利用jQuery實現表單驗證功能jQuery
- 中移鏈結合CA證書實現節點准入控制
- node學習---jwt實現驗證使用者身份JWT
- Spring Security 6中使用PKCE實現身份驗證Spring
- 網路實名制、電商實名認證、身份證實名認證介面
- springboot整合shiro實現身份認證Spring Boot
- soket 利用http實現驗證碼的傳送HTTP
- easy-captcha實現驗證碼驗證APT
- 2.13.3 使用 Oracle Wallet 實現在DBCA中使用身份驗證Oracle
- C++身份核驗介面程式碼、身份證OCR、身份證實名認證APIC++API
- Django實現驗證碼Django
- 利用 ACME 實現SSL證書自動化配置更新ACM
- 網路滲透測試實驗二——網路嗅探與身份認證
- spring boot 利用註解實現許可權驗證Spring Boot
- 使用JWT做RESTful API的身份驗證-Go語言實現JWTRESTAPIGo
- 幾種開發時安全驗證的實現
- 身份證真偽查詢介面、身份證實名認證一行python程式碼即可實現,實時資料Python
- JAVAWEB實現簡訊驗證---夢網雲JavaWeb
- 為網站實現一個驗證碼網站
- 簡訊驗證實現方式
- C++批次核驗身份證真偽、實名認證介面、身份證識別C++
- Spark 框架安全認證實現Spark框架
- Spring Boot 3中實現多種身份驗證方法開源案例Spring Boot
- ca 證書機制
- 數字證書認證(CA)中心
- 網路安全協議之IPsec協議
- lumen驗證類 實現控制器場景驗證
- 計算機網路驗證性實驗計算機網路
- Python實現AI影像識別-身份證識別PythonAI
- 純CSS實現表單驗證CSS
- KgCaptcha驗證碼實現筆記GCAPT筆記
- 使用 Spring Validator 介面實現驗證Spring
- java圖形驗證碼實現Java
- 身份證驗證工具類
- ASP.NET實現企業微信接入應用實現身份認證ASP.NET
- 網站漏洞檢測 身份驗證碼與重要操作驗證碼安全問題網站