• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

11-安全配置指導

目錄

17-SSL配置

本章節下載 17-SSL配置  (219.34 KB)

17-SSL配置


1 SSL

說明

本文中有關FIPS模式的詳細介紹,請參見“安全配置指導”中的“FIPS

 

1.1  SSL簡介

SSL(Secure Sockets Layer,安全套接層)是一個安全協議,為基於TCP的應用層協議提供安全連接,如SSL可以為HTTP協議提供安全連接。SSL協議廣泛應用於電子商務、網上銀行等領域,為網絡上數據的傳輸提供安全性保證。

1.1.1  SSL安全機製

SSL提供的安全連接可以實現:

·     連接的私密性:利用對稱加密算法對傳輸數據進行加密,並利用密鑰交換算法——RSA(Rivest Shamir and Adleman,非對稱密鑰算法的一種)加密傳輸對稱密鑰算法中使用的密鑰。

·     身份驗證:基於證書利用數字簽名方法對服務器和客戶端進行身份驗證。SSL服務器和客戶端通過PKI(Public Key Infrastructure,公鑰基礎設施)提供的機製從CA(Certificate Authority,認證機構)獲取證書。

·     連接的可靠性:消息傳輸過程中使用基於密鑰的MAC(Message Authentication Code,消息驗證碼)來檢驗消息的完整性。MAC是將密鑰和任意長度的數據轉換為固定長度數據的一種算法。利用MAC算法驗證消息完整性的過程如圖1-1所示。發送者在密鑰的參與下,利用MAC算法計算出消息的MAC值,並將其加在消息之後發送給接收者。接收者利用同樣的密鑰和MAC算法計算出消息的MAC值,並與接收到的MAC值比較。如果二者相同,則報文沒有改變;否則,報文在傳輸過程中被修改,接收者將丟棄該報文。

圖1-1 MAC算法示意圖

 

說明

·     對稱密鑰算法、非對稱密鑰算法RSA及數字簽名的詳細介紹請參見“安全配置指導”中的“公鑰管理”;

·     PKI及證書、CA的詳細介紹請參見“安全配置指導”中的“PKI”。

 

1.1.2  SSL協議結構

圖1-2所示,SSL協議本身可以分為兩層:底層為SSL記錄協議(SSL record protocol);上層為SSL握手協議(SSL handshake protocol)、SSL密碼變化協議(SSL change cipher spec protocol)和SSL警告協議(SSL alert protocol)。

圖1-2 SSL協議棧

 

·     SSL記錄協議:主要負責對上層的數據進行分塊、計算並添加MAC、加密,最後把記錄塊傳輸給對方。

·     SSL握手協議:是SSL協議非常重要的組成部分,用來協商通信過程中使用的加密套件(對稱加密算法、密鑰交換算法和MAC算法等)、在服務器和客戶端之間安全地交換密鑰,實現服務器和客戶端的身份驗證。客戶端和服務器通過握手協議建立一個會話。會話包含一組參數,主要有會話ID、對方的證書、加密套件(包括密鑰交換算法、數據加密算法和MAC算法)及主密鑰。

·     SSL密碼變化協議:客戶端和服務器端通過密碼變化協議通知對端,隨後的報文都將使用新協商的加密套件和密鑰進行保護和傳輸。

·     SSL警告協議:用來允許一方向另一方報告告警信息。消息中包含告警的嚴重級別和描述。

1.2  SSL配置任務簡介

SSL服務器和客戶端需要配置的參數不同,下麵將分別介紹SSL服務器端策略和SSL客戶端策略的配置方法。

表1-1 SSL配置任務簡介

配置任務

說明

詳細配置

配置SSL服務器端策略

必選

1.3 

配置SSL客戶端策略

可選

1.4 

 

1.3  配置SSL服務器端策略

SSL服務器端策略是服務器啟動時使用的SSL參數。隻有與應用層協議(如HTTP協議)關聯後,SSL服務器端策略才能生效。

1.3.1  配置準備

配置SSL服務器端策略時,需要指定其使用的PKI域,以便通過該PKI域獲取服務器端的證書。因此,在進行SSL服務器端策略配置之前,需要先配置PKI域。PKI域配置方法的詳細介紹,請參見“安全配置指導”中的“PKI”。

1.3.2  配置SSL服務器端策略

表1-2 配置SSL服務器端策略

操作

命令

說明

進入係統視圖

system-view

-

創建SSL服務器端策略,並進入SSL服務器端策略視圖

ssl server-policy policy-name

必選

配置SSL服務器端策略所使用的PKI域

pki-domain domain-name

必選

缺省情況下,沒有配置SSL服務器端策略所使用的PKI域

配置SSL服務器端策略支持的加密套件

ciphersuite [ dhe_rsa_aes_128_cbc_sha | dhe_rsa_aes_256_cbc_sha | rsa_3des_ede_cbc_sha | rsa_aes_128_cbc_sha | rsa_aes_256_cbc_sha | rsa_des_cbc_sha | rsa_rc4_128_md5 | rsa_rc4_128_sha ] *

可選

缺省情況下,SSL服務器端策略支持所有的加密套件

FIPS模式下不支持算法rsa_3des_ede_cbc_sharsa_des_cbc_sharsa_rc4_128_md5rsa_rc4_128_sha

僅FIPS模式下支持dhe_rsa_aes_128_cbc_sha dhe_rsa_aes_256_cbc_sha |算法

配置服務器端SSL握手連接保持時間

handshake timeout time

可選

缺省情況下,服務器端SSL握手連接保持時間是3600秒

配置SSL連接關閉模式

close-mode wait

可選

缺省情況下,關閉模式為非wait模式

配置緩存的最大會話數目和會話緩存的超時時間

session { cachesize size | timeout time } *

可選

缺省情況下,緩存的最大會話數目為500個,會話緩存的超時時間為3600秒

配置SSL服務器端要求對SSL客戶端進行基於證書的身份驗證

client-verify enable

可選

缺省情況下,SSL服務器端不要求對SSL客戶端進行基於證書的身份驗證

使能SSL客戶端弱認證功能

client-verify weaken

可選

缺省情況下,未使能SSL客戶端弱認證功能

隻有通過client-verify enable命令配置SSL服務器端要求對SSL客戶端進行基於證書的身份驗證後,本命令才會生效

 

說明

·     如果服務器端需要對客戶端進行基於證書的身份驗證,即配置了client-verify enable命令,則必須先為SSL客戶端申請本地證書。

·     目前,SSL協議版本主要有SSL2.0、SSL3.0和TLS1.0(對應SSL協議的版本號為3.1)。設備作為SSL服務器時,可以與SSL3.0和TLS1.0版本的SSL客戶端通信,還可以識別同時兼容SSL2.0和SSL3.0/TLS1.0版本的SSL客戶端發送的報文,並通知該客戶端采用SSL3.0/TLS1.0版本與SSL服務器通信。

 

1.3.3  SSL服務器端策略典型配置舉例

1. 組網需求

用戶可以通過Web頁麵訪問和控製設備。為了防止非法用戶訪問和控製設備,提高設備管理的安全性,設備要求用戶以HTTPS(HTTP Security,支持SSL協議的HTTP)的方式登錄Web頁麵,利用SSL協議實現用戶身份驗證,並保證傳輸的數據不被竊聽和篡改。

為了滿足上述需求,需要進行如下配置:

·     配置Switch作為HTTPS服務器,並為Switch申請證書。

·     為HTTPS客戶端Host申請證書,以便Switch驗證其身份。

其中,負責為Switch和Host頒發證書的認證機構為CA server。

說明

·     本配置舉例中,采用Windows Server作為CA,在CA上需要安裝SCEP(Simple Certificate Enrollment Protocol,簡單證書注冊協議)插件。

·     進行下麵的配置之前,需要確保Switch、Host、CA之間路由可達。

 

2. 組網圖

圖1-3 SSL服務器端策略組網圖

 

3. 配置步驟

(1)     配置HTTPS服務器Switch

# 配置PKI實體en,指定實體的通用名為http-server1、FQDN為ssl.security.com。

<Switch> system-view

[Switch] pki entity en

[Switch-pki-entity-en] common-name http-server1

[Switch-pki-entity-en] fqdn ssl.security.com

[Switch-pki-entity-en] quit

# 配置PKI1,指定信任的CA名稱為ca server、注冊服務器的URLhttp://10.1.2.2/certsrv/mscep/mscep.dll、證書申請的注冊受理機構為RA、實體名稱為en

[Switch] pki domain 1

[Switch-pki-domain-1] ca identifier ca server

[Switch-pki-domain-1] certificate request url http://10.1.2.2/certsrv/mscep/mscep.dll

[Switch-pki-domain-1] certificate request from ra

[Switch-pki-domain-1] certificate request entity en

[Switch-pki-domain-1] quit

# 生成本地的RSA密鑰對。

[Switch] public-key local create rsa

# 獲取CA的證書。

[Switch] pki retrieval-certificate ca domain 1

# Switch申請證書。

[Switch] pki request-certificate domain 1

# 創建一個名為mysslSSL服務器端策略。

[Switch] ssl server-policy myssl

# 配置SSL服務器端策略使用的PKI域名為1

[Switch-ssl-server-policy-myssl] pki-domain 1

# 配置服務器端需要驗證客戶端身份。

[Switch-ssl-server-policy-myssl] client-verify enable

[Switch-ssl-server-policy-myssl] quit

# 配置HTTPS服務使用的SSL策略為myssl。

[Switch] ip https ssl-server-policy myssl

# 使能HTTPS服務。

[Switch] ip https enable

# 創建本地用戶usera,密碼為123,服務類型為web。

[Switch] local-user usera

[Switch-luser-usera] password simple 123

[Switch-luser-usera] service-type web

(2)     配置HTTPS客戶端Host

在Host上打開IE瀏覽器,輸入網址http://10.1.2.2/certsrv,根據提示為Host申請證書。

(3)     驗證配置結果

在Host上打開IE瀏覽器,輸入網址https://10.1.1.1,選擇CA server為Host頒發的證書,即可打開Switch的Web登錄頁麵。在登錄頁麵,輸入用戶名usera,密碼123,則可進入Switch的Web配置頁麵,實現對Switch的訪問和控製。

說明

·     PKI配置命令的詳細介紹請參見“安全命令參考”中的“PKI”;

·     public-key local create rsa命令的詳細介紹請參見“安全命令參考”中的“公鑰管理”;

·     HTTPS的詳細介紹,請參見“基礎配置指導”中的“配置通過Web網管登錄設備”。

 

1.4  配置SSL客戶端策略

SSL客戶端策略是客戶端連接SSL服務器時使用的參數。隻有與應用層協議關聯後,SSL客戶端策略才能生效。

1.4.1  配置準備

如果SSL服務器要求驗證SSL客戶端的身份,則配置SSL客戶端策略時,需要指定其使用的PKI域,以便通過該PKI域獲取客戶端的證書。因此,在進行SSL客戶端策略配置之前,需要先配置PKI域。PKI域配置方法的詳細介紹,請參見“安全配置指導”中的“PKI”。

1.4.2  配置SSL客戶端策略

表1-3 配置SSL客戶端策略

操作

命令

說明

進入係統視圖

system-view

-

創建SSL客戶端策略,並進入SSL客戶端策略視圖

ssl client-policy policy-name

必選

配置SSL客戶端策略所使用的PKI域

pki-domain domain-name

可選

缺省情況下,沒有配置SSL客戶端策略所使用的PKI域

配置SSL客戶端策略的首選加密套件

prefer-cipher { dhe_rsa_aes_128_cbc_sha | dhe_rsa_aes_256_cbc_sha | rsa_3des_ede_cbc_sha | rsa_aes_128_cbc_sha | rsa_aes_256_cbc_sha | rsa_des_cbc_sha | rsa_rc4_128_md5 | rsa_rc4_128_sha }

可選

缺省情況下,SSL客戶端策略的首選加密套件為rsa_rc4_128_md5

FIPS模式下不支持算法rsa_3des_ede_cbc_sharsa_des_cbc_sharsa_rc4_128_md5rsa_rc4_128_sha

僅FIPS模式下支持dhe_rsa_aes_128_cbc_sha dhe_rsa_aes_256_cbc_sha |算法

配置SSL客戶端策略使用的SSL協議版本

version { ssl3.0 | tls1.0 }

可選

缺省情況下,SSL客戶端策略使用的SSL協議版本號為TLS 1.0

FIPS模式下不支持ssl3.0參數

使能基於證書的SSL服務器身份驗證

server-verify enable

可選

缺省情況下,需要進行基於證書的SSL服務器身份驗證

 

說明

如果服務器端需要對客戶端進行基於證書的身份驗證,則必須先在SSL客戶端所屬的PKI域內為SSL客戶端申請本地證書。

 

1.5  SSL顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後SSL的運行情況,通過查看顯示信息驗證配置的效果。

表1-4 SSL顯示和維護

操作

命令

顯示SSL服務器端策略的信息

display ssl server-policy { policy-name | all } [ | { begin | exclude | include } regular-expression ]

顯示SSL客戶端策略的信息

display ssl client-policy { policy-name | all } [ | { begin | exclude | include } regular-expression ]

 

1.6  常見配置錯誤舉例

1.6.1  SSL握手失敗

1. 故障現象

設備作為SSL服務器時,與SSL客戶端握手失敗。

2. 故障分析

SSL握手失敗,可能有以下原因:

·     客戶端配置了必須對服務器端進行身份驗證,但SSL服務器端證書不存在,或者證書不能被信任;

·     服務器端配置了必須對客戶端進行身份驗證,但SSL客戶端的證書不存在或不能被信任;

·     SSL服務器端和客戶端沒有匹配的加密套件。

3. 故障排除

(1)     使用debugging ssl命令查看調試信息:

·     如果客戶端配置了必須對服務器端進行身份驗證,而SSL服務器端的證書不存在,請為SSL服務器申請證書;如果服務器端證書不能被信任,請在SSL客戶端安裝為SSL服務器頒發證書的CA服務器根證書,或服務器向SSL客戶端信任的CA服務器重新申請證書;

·     如果服務器端配置了必須對客戶端進行身份驗證,而SSL客戶端的證書不存在或不能被信任,請為客戶端申請並安裝證書。

(2)     使用display ssl server-policy命令查看SSL服務器端策略支持的加密套件。如果SSL服務器端和客戶端沒有匹配的加密套件,請用ciphersuite命令修改SSL服務器支持的加密套件。

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們