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

12-安全配置指導

目錄

33-MACSec配置

本章節下載 33-MACSec配置  (327.52 KB)

33-MACSec配置


1 MACsec

1.1  MACsec簡介

MACsec(Media Access Control Security,MAC安全)定義了基於IEEE 802局域網絡的數據安全通信的方法。MACsec可為用戶提供安全的MAC層數據發送和接收服務,包括用戶數據加密、數據幀完整性檢查及數據源真實性校驗。

1.1.1  MACsec基本概念

1. CA

CA(Connectivity Association,安全連通集)是兩個或兩個以上使用相同密鑰和密鑰算法套件的成員的集合。CA成員稱為CA的參與者。CA參與者使用的密鑰稱為CAK。CAK分為以下兩種類型:

·     成對CAK(Pairwise CAK),即由兩個成員組成CA,它們所擁有的CAK稱為成對CAK。

·     成組CAK(Group CAK),即由三個或三個以上成員組成CA,它們所擁有的CAK稱為成組CAK。

CAK可以是用戶配置的預共享密鑰(PSK,Pre-Shared Key)。

目前,MACsec主要應用在點對點組網的環境中,所以主要使用成對CAK。

2. SA

SA(Security Association,安全聯盟)是CA參與者之間用於建立安全通道的安全參數集合,包括對數據進行加密算法套件、進行完整性檢查的密鑰等。

一個安全通道中可包含多個SA,每一個SA擁有一個不同的密鑰,這個密鑰稱為SAK。SAK由CAK根據算法推導產生,用於加密安全通道間傳輸的數據。

MKA對每一個SAK可加密的報文數有所限製。當使用某SAK加密的報文超過限定的數目後,該SAK會被刷新。例如,在10Gbps的鏈路上,SAK最快300秒刷新一次。

1.1.2  MACsec協議機製

1. 數據加密

開啟了MACsec功能且啟動了MACsec保護的端口發送數據幀時,需要對它進行加密;開啟了MACsec功能的端口收到經過MACsec封裝的數據幀時,需要對它進行解密。加解密所使用的密鑰是通過MKA協議協商而來的。

2. 完整性檢查

MACsec封裝的數據幀會使用CAK推導出的密鑰進行ICV(完整性校驗值,Integrity Check Value)計算,並附加在MACsec報文的尾部。設備收到MACsec報文時,同樣使用MKA協商出的密鑰進行完整性檢驗值計算,然後將計算結果與報文中攜帶的ICV進行比較。如果比較結果相同,則表示報文合法;如果比較結果不相同,將依據配置的校驗模式,決定是否丟棄報文。

MACsec有如下幾種校驗模式:

·     check:檢查模式,表示隻作校驗,但不丟棄非法數據幀。

·     disabled:不對接收數據幀進行MACsec校驗。

·     strict:嚴格校驗模式,表示校驗接收數據幀,並丟棄非法數據幀。

3. 重播保護機製

MACsec封裝的數據幀在網絡中傳輸時,可能出現報文順序的重排。MACsec重播保護機製允許數據幀有一定的亂序,這些亂序的報文序號在用戶指定的窗口範圍內可以被合法接收,超出窗口的報文會被丟棄。

1.1.3  MACsec典型組網模式

目前,MACsec的典型組網模式為麵向設備的MACsec模式。

1. 麵向設備模式

圖1-1所示,麵向設備模式用於保護設備之間的數據幀。

圖1-1 麵向設備模式組網圖

 

 

該模式下,互連的兩台設備直接使用通過命令行配置的預共享密鑰進行MACsec密鑰協商和報文加密功能。

1.1.4  MACsec運行機製

1. 麵向設備模式的MACsec運行機製

圖1-2所示,設備之間使用配置的預共享密鑰開始協商會話,會話協商結束後開始安全通信。MACsec協議的交互過程主要分為三個階段:會話協商、安全通信和會話終止。

圖1-2 麵向設備模式的MACsec協議交互過程

 

(1)     會話協商

設備之間使用配置的預共享密鑰(PSK,Pre-Shared Key)作為CAK,通過EAPOL-MKA報文開始協商會話。設備間優先級較高的端口將被選舉為密鑰服務器(Key Server),負責生成和分發SAK,設備之間通過MKA協議向對方通告自身能力和建立會話所需的各種參數(如優先級、是否期望加密會話等)。

(2)     安全通信

會話協商完成後,各設備有了可用的SAK,並使用SAK加密數據報文,開始加密通信。

(3)     會話終止

當設備收到對方的下線請求消息後,立即清除該用戶對應的安全會話。

1.1.5  協議規範

與MACsec相關的協議規範有:

·     IEEE 802.1AE-2006:Media Access Control (MAC) Security

1.2  MACsec與硬件適配關係

本特性的支持情況與設備型號有關,請以設備的實際情況為準。

型號

說明

MPU-60

不支持

MPU-100

不支持

MPU-100-X1

不支持

MPU-100-G

支持

 

1.3  MACsec配置任務簡介

MACsec配置任務如下:

(1)     開啟MACsec協議

(2)     配置MACsec保護

(3)     配置MACsec使用的加密套件

(4)     配置預共享密鑰

(5)     (可選)配置MKA密鑰服務器的優先級

(6)     (可選)配置MKA會話超時時間

(7)     (可選)配置MACsec屬性參數

請選擇以下一項任務進行配置:

¡     在接口上配置MACsec屬性參數

¡     通過MKA策略配置MACsec屬性參數

(8)     (可選)配置MKA會話的日誌信息功能

1.4  開啟MACsec協議

1. 功能簡介

MKA協議負責接口上MACsec安全通道的建立和管理,以及MACsec所使用密鑰的協商。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟MKA協議。

mka enable

缺省情況下,接口上的MKA協議處於關閉狀態。

1.5  配置MACsec保護

1. 功能簡介

設備期望進行MACsec保護表達了本端對發送的數據幀進行MACsec保護的意願,但最終本端發送的數據幀是否啟用MACsec保護,要由密鑰服務器來決策。決策策略是:密鑰服務器和它的對端都支持MACsec特性,且至少有一端期望進行MACsec保護。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置MACsec保護。

macsec desire

缺省情況下,接口上不需要對發送的數據幀進行MACsec保護。

1.6  配置MACsec使用的加密套件

1. 功能簡介

MACsec使用的加密套件是一組用來加密、校驗和恢複被保護數據幀的算法,目前支持的加密套件為GCM-AES-128和GCM-AES-256。

2. 配置限製和指導

H3C設備GCM-AES-256加密套件和標準的開源加密套件實現不一致。當對端設備使用GCM-AES-256的開源加密套件時,H3C設備上使用同樣的加密套件時必須指定standard參數,否則無法與對端設備成功建立MKA會話。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置MACsec使用的加密套件。

macsec cipher-suite { gcm-aes-128 | gcm-aes-256 [ standard ] }

缺省情況下,MACsec使用的加密套件為GCM-AES-128。

1.7  配置預共享密鑰

1. 配置限製和指導

在麵向設備模式中,兩端設備協商MKA會話使用的CAK通過預共享密鑰直接配置。為了保證設備間的MKA會話可以正常建立,必須保證兩端設備的接口上配置的預共享密鑰一致。

本端設備和對端設備建立MACsec連接時,請保證隻有建立連接的兩個端口上配置相同的CKN,兩端設備的其它端口上都不能配置與此相同的CKN,以免一個端口學習到多個鄰居而導致MACsec功能不能正常建立。

MACsec使用不同的加密算法套件時,CKN、CAK的取值長度有所不同,具體要求如下:

·     GCM-AES-128加密套件要求所使用的CKN、CAK的長度都必須為32個字符。在運行GCM-AES-128加密套件時,對於長度不足32個字符的CKN、CAK,係統會自動在其後補零,使其滿足32個字符;對於長度大於32個字符的CKN、CAK,係統隻獲取其前32個字符。

·     GCM-AES-256加密套件要求使用的CKN、CAK的長度都必須為64個字符。在運行GCM-AES-256 加密套件時,對於長度不足64個字符的CKN、CAK,係統會自動在其後補零,使其滿足64個字符。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置預共享密鑰。

mka psk ckn name cak { cipher | simple } string

缺省情況下,接口不存在MKA預共享密鑰。

當前係統支持的加密算法套件要求使用的CKN、CAK的長度必須為32個字符。如果長度不足32個字符,係統會自動在其後補零;如果長度大於32個字符,係統隻取前32個字符。

1.8  配置MKA密鑰服務器的優先級

1. 配置限製和指導

配置MKA密鑰服務器的優先級時,請遵循以下配置限製和指導:

·     在麵向設備模式中,MKA密鑰服務器優先級較高(值較小)的設備端口將被選舉為密鑰服務器。如果設備端口的優先級相同,則比較設備端口的SCI(MAC地址+端口的ID),SCI值較小的端口將被選舉為密鑰服務器。

·     優先級為255的設備端口不能被選舉為密鑰服務器。相互連接的端口不能都配置優先級為255,否則MKA會話選舉不出密鑰服務器。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置MKA密鑰服務器的優先級。

mka priority priority-value

缺省情況下,MKA密鑰服務器的優先級為0。

1.9  配置MKA會話超時時間

1. 配置限製和指導

僅麵向設備模式下需要配置本功能,且兩端設備上配置的會話超時時間必須相同。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置MKA會話超時時間。

mka timer mka-life seconds

缺省情況下,MKA會話超時時間為6秒。

1.10  配置MACsec屬性參數

1.10.1  功能簡介

MACsec有如下屬性參數:

·     MACsec加密偏移量:從用戶數據幀幀頭開始偏移多少字節後開始加密,協議提供0、30、50三個偏移量供用戶使用。

·     MACsec重播保護功能:可以防止本端收到亂序或重複的數據幀。

·     MACsec校驗:接口收到報文後,計算報文的ICV,與報文尾部的ICV比較,並根據校驗模式,決定報文是否丟棄。

1.10.2  配置限製和指導

MACsec屬性參數既可以在接口上配置,也可以通過MKA策略配置。當需要在多個接口上配置同樣的屬性參數,則可以采用配置和應用MKA策略實現。

如果既在接口上直接配置MACsec屬性參數,又在接口上應用了MKA策略,則後執行的配置參數生效。

1.10.3  在接口上配置MACsec屬性參數

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置接口上的MACsec加密偏移量。

macsec confidentiality-offset offset-value

缺省情況下,接口上的MACsec加密偏移量為0,表示整個數據幀都要加密。

如果本端不是密鑰服務器,則應用密鑰服務器發布的加密偏移量;如果本端是密鑰服務器,則應用本端配置的加密偏移量,並將該值發布給對端。

(4)     為接口接收到的數據幀配置MACsec重播保護功能。

a.     開啟接口上的MACsec重播保護功能。

macsec replay-protection enable

缺省情況下,接口上的MACsec重播保護功能處於開啟狀態。

b.     配置接口上的MACsec重播保護窗口大小。

macsec replay-protection window-size size-value

缺省情況下,接口上的MACsec重播保護窗口大小為0個數據幀,表示不允許接收亂序或重複的數據幀。

配置的重播保護窗口大小僅在重播保護功能開啟的情況下有效。

(5)     配置MACsec校驗模式。

macsec validation mode { check | disabled | strict }

缺省情況下,接口上的MACsec校驗模式是check

在網絡中部署支持MACsec的設備時,為避免兩端因密鑰協商不一致而造成流量丟失,建議兩端均先配置為check模式,在密鑰協商成功後,再配置為strict模式。

參數

說明

check

檢查模式,表示隻作校驗,但不丟棄非法數據幀

disabled

不對接收數據幀進行MACsec校驗

strict

嚴格校驗模式,表示校驗接收數據幀,並丟棄非法數據幀

 

1.10.4  通過MKA策略配置MACsec屬性參數

1. 配置限製和指導

一個MKA策略可應用於一個或多個接口。在接口上應用了MKA策略時,需要注意的是:

·     接口上應用的MKA策略中配置的MACsec屬性參數(加密偏移、校驗模式、重播保護功能和重播保護窗口大小)會覆蓋接口上配置的對應的MACsec屬性參數。

·     當修改應用到接口上的MKA策略配置時,接口上的相應的配置也會改變。

·     取消接口上應用的指定MKA策略時,接口上的加密偏移、校驗模式、重播保護功能和重播保護窗口大小都恢複為缺省情況。

·     當接口應用了一個不存在的MKA策略時,該接口會自動應用缺省MKA策略default-policy。之後,如果該策略被創建,則接口會自動使用配置的MKA策略。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建一個MKA策略,並進入MKA策略視圖。

mka policy policy-name

缺省情況下,存在一個缺省的MKA策略,名稱為default-policy ,參數取值均為接口上對應的缺省值,且該策略不能被刪除和修改。

係統中可配置多個MKA策略。

(3)     配置MACsec加密偏移量。

confidentiality-offset offset-value

缺省情況下,加密偏移為0,表示整個數據幀都要加密。

如果本端不是密鑰服務器,則應用密鑰服務器發布的加密偏移量;如果本端是密鑰服務器,則應用本端配置的加密偏移量,並將該值發布給對端。

(4)     為接口接收到的數據幀配置MACsec重播保護功能。

a.     開啟MACsec重播保護功能。

replay-protection enable

缺省情況下,接口上的MACsec重播保護功能處於開啟狀態。

b.     配置MACsec重播保護窗口大小。

replay-protection window-size size-value

缺省情況下,接口上的MACsec重播保護窗口大小為0個數據幀,表示不允許接收亂序或重複的數據幀。

(5)     配置MACsec校驗模式。

validation mode { check | disabled | strict }

缺省情況下,MACsec校驗模式是check

參數

說明

check

檢查模式,表示隻作校驗,但不丟棄非法數據幀

disabled

不對接收數據幀進行MACsec校驗

strict

嚴格校驗模式,表示校驗接收數據幀,並丟棄非法數據幀

 

(6)     應用MKA策略。

a.     退回用戶視圖。

quit

b.     進入接口視圖

interface interface-type interface-number

c.     在接口上應用MKA策略。

mka apply policy policy-name

缺省情況下,接口上沒有應用MKA策略。

1.11  配置MKA會話的日誌信息功能

1. 功能簡介

MKA會話的日誌信息是為了滿足網絡管理員維護的需要,對用戶的接入信息(如對端老化、SAK更新)進行記錄。設備生成的MKA會話的日誌信息會交給信息中心模塊處理,信息中心模塊的配置將決定日誌信息的發送規則和發送方向。關於信息中心的詳細描述請參見“網絡管理和監控配置指導”中的“信息中心”。

2. 配置限製和指導

為了防止設備輸出過多的MKA會話的日誌信息,一般情況下建議關閉此功能。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟MKA會話的日誌信息功能。

macsec mka-session log enable

缺省情況下,MKA會話的日誌信息功能處於關閉狀態。

1.12  MACsec顯示和維護

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

在用戶視圖下執行reset命令可以重建會話和清除統計信息。

表1-1 MACsec顯示和維護

操作

命令

顯示接口上的MACsec運行信息

display macsec [ interface interface-type interface-number ] [ verbose ]

顯示MKA策略相關信息

display mka { default-policy | policy [ name policy-name ] }

顯示MKA會話信息

display mka session [ interface interface-type interface-number | local-sci sci-id ] [ verbose ]

顯示接口上的MKA統計信息

display mka statistics [ interface interface-type interface-number ]

重建接口上的MKA會話

reset mka session [ interface interface-type interface-number ]

清除接口上的MKA統計信息

reset mka statistics [ interface interface-type interface-number ]

 

1.13  MACsec典型配置舉例

1.13.1  麵向設備模式配置舉例

1. 組網需求

Device A和Device B相連,要求兩台設備之間的數據通信進行MACsec保護,具體要求如下:

·     MACsec加密偏移量為30字節。

·     開啟MACsec重播保護功能,重播保護窗口大小為100。

·     開啟嚴格的MACsec校驗。

·     兩台設備使用的CAK均為靜態配置,CKN為E9AC,CAK為09DB3EF1。

·     由Device A作為密鑰服務器。

2. 組網圖

圖1-3 麵向設備模式MACsec配置組網圖

3. 配置步驟

(1)     配置Device A

<DeviceA> system-view

# 在接口GigabitEthernet1/0/1上配置期望進行MACsec保護。

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] macsec desire

# 配置MKA密鑰服務器的優先級為5。(本例中,Device A作為密鑰服務器,所以配置的Device A的優先級要比Device B的優先級高)

[DeviceA-GigabitEthernet1/0/1] mka priority 5

# 配置預共享密鑰的名稱為E9AC,預共享密鑰為明文09DB3EF1。

[DeviceA-GigabitEthernet1/0/1] mka psk ckn E9AC cak simple 09DB3EF1

# 配置MACsec加密偏移量為30。

[DeviceA-GigabitEthernet1/0/1] macsec confidentiality-offset 30

# 開啟MACsec重播保護功能。

[DeviceA-GigabitEthernet1/0/1] macsec replay-protection enable

# 配置MACsec重播保護窗口大小為100。

[DeviceA-GigabitEthernet1/0/1] macsec replay-protection window-size 100

# 配置嚴格的MACsec校驗模式。

[DeviceA-GigabitEthernet1/0/1] macsec validation mode strict

# 開啟MKA協議。

[DeviceA-GigabitEthernet1/0/1] mka enable

[DeviceA-GigabitEthernet1/0/1] quit

(2)     配置Device B

<DeviceB> system-view

# 進入GigabitEthernet1/0/1接口視圖。

[DeviceB] interface gigabitethernet 1/0/1

# 配置期望進行MACsec保護。

[DeviceB-GigabitEthernet1/0/1] macsec desire

# 配置MKA密鑰服務器的優先級為10。

[DeviceB-GigabitEthernet1/0/1] mka priority 10

# 配置預共享密鑰的名稱為E9AC,預共享密鑰為明文09DB3EF1。

[DeviceB-GigabitEthernet1/0/1] mka psk ckn E9AC cak simple 09DB3EF1

# 配置MACsec加密偏移量為30。

[DeviceB-GigabitEthernet1/0/1] macsec confidentiality-offset 30

# 開啟MACsec重播保護功能。

[DeviceB-GigabitEthernet1/0/1] macsec replay-protection enable

# 配置MACsec重播保護窗口大小為100。

[DeviceB-GigabitEthernet1/0/1] macsec replay-protection window-size 100

# 配置嚴格的MACsec校驗模式。

[DeviceB-GigabitEthernet1/0/1] macsec validation mode strict

# 開啟MKA協議。

[DeviceB-GigabitEthernet1/0/1] mka enable

[DeviceB-GigabitEthernet1/0/1] quit

4. 驗證配置

配置完成後,用戶可以使用display命令查看設備上MACsec的運行情況。

# 查看DeviceA的MACsec運行信息。

[DeviceA] display macsec interface gigabitethernet 1/0/1 verbose

Interface GigabitEthernet1/0/1

  Protect frames         : Yes

  Replay protection      : Enabled

  Replay window size     : 100 frames

  Confidentiality offset : 30 bytes

  Validation mode        : Strict

  Included SCI           : No

  SCI conflict           : No

  Cipher suite           : GCM-AES-128

  MKA life time          : 6 seconds

  Transmit secure channel:

    SCI           : 00E00100000A0006

      Elapsed time: 00h:05m:00s

      Current SA  : AN 0        PN 1

  Receive secure channels:

    SCI           : 00E0020000000106

      Elapsed time: 00h:03m:18s

      Current SA  : AN 0        LPN 1

      Previous SA : AN N/A      LPN N/A

# 查看DeviceA上的MKA會話信息。

[DeviceA] display mka session interface gigabitethernet 1/0/1 verbose

Interface GigabitEthernet1/0/1

Tx-SCI    : 00E00100000A0006

Priority  : 5

Capability: 3

  CKN for participant: E9AC

    Key server            : Yes

    MI (MN)               : 85E004AF49934720AC5131D3 (182)

    Live peers            : 1

    Potential peers       : 0

    Principal actor       : Yes

    MKA session status    : Secured

    Confidentiality offset: 30 bytes

    Current SAK status    : Rx & Tx

    Current SAK AN        : 0

    Current SAK KI (KN)   : 85E004AF49934720AC5131D300000003 (3)

    Previous SAK status   : N/A

    Previous SAK AN       : N/A

    Previous SAK KI (KN)  : N/A

    Live peer list:

    MI                        MN         Priority  Capability  Rx-SCI

    12A1677D59DD211AE86A0128  182        10        3           00E0020000000106

# 查看DeviceB上的MACsec運行信息。

[DeviceB]display macsec interface gigabitethernet 1/0/1 verbose

Interface GigabitEthernet1/0/1

  Protect frames         : Yes

  Replay protection      : Enabled

  Replay window size     : 100 frames

  Confidentiality offset : 30 bytes

  Validation mode        : Strict

  Included SCI           : No

  SCI conflict           : No

  Cipher suite           : GCM-AES-128

  MKA life time          : 6 seconds

  Transmit secure channel:

    SCI           : 00E0020000000106

      Elapsed time: 00h:05m:36s

      Current SA  : AN 0        PN 1

  Receive secure channels:

    SCI           : 00E00100000A0006

      Elapsed time: 00h:03m:21s

      Current SA  : AN 0        LPN 1

      Previous SA : AN N/A      LPN N/A

# 查看DeviceB上的MKA會話信息。

[DeviceB] display mka session interface gigabitethernet 1/0/1 verbose

Interface GigabitEthernet1/0/1

Tx-SCI    : 00E0020000000106

Priority  : 10

Capability: 3

CKN for participant: E9AC

Key server            : No

MI (MN)               : 12A1677D59DD211AE86A0128 (1219)

Live peers            : 1

Potential peers       : 0

Principal actor       : Yes

MKA session status    : Secured

Confidentiality offset: 30 bytes

Current SAK status    : Rx & Tx

Current SAK AN        : 0

Current SAK KI (KN)   : 85E004AF49934720AC5131D300000003 (3)

Previous SAK status   : N/A

Previous SAK AN       : N/A

Previous SAK KI (KN)  : N/A

Live peer list:

MI                        MN         Priority  Capability  Rx-SCI

85E004AF49934720AC5131D3  1216       5         3           00E00100000A0006

1.14  常見配置錯誤舉例

1.14.1  MACsec安全會話未建立

1. 故障現象

在鏈路狀態正常且鏈路兩端設備都支持MACsec功能,MACsec安全會話未建立。

2. 故障分析

可能的原因有:

·     接口未開啟MKA協議。

·     如果接口使用預共享密鑰,接口的預共享密鑰未配置或配置不一致。

3. 處理過程

·     進入接口視圖下,使用display this命令查看MKA是否開啟,如果未開啟,請使用mka enable命令開啟MKA協議。

·     進入接口視圖下,使用display this命令查看是否配置預共享密鑰,如果未配置,請使用mka psk命令配置;否則,請檢查已有配置的密鑰是否一致,不一致,則重新配置一致。

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

BOB登陆
官網
聯係我們