配置点到点的MACsec示例
配置思路
两端设备配置MACsec功能时,进行MKA会话协商,建立安全连接之前,需要配置相同的安全参数,配置思路如下:
- 配置密钥服务器优先级,此处设置SwitchA作为密钥服务器。
- 配置MKA会话协商使用的CKN为f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced,CAK为ab2145369adcadef69512347adceb210。
- 配置加密模式为normal,实现数据加密和完整性校验功能。
本举例中,如果SwitchA和SwitchB之间存在透传交换机SwitchC、SwitchD和SwitchE,为保证SwitchA和SwitchB能够进行MACsec会话协商,需要透传交换机支持二层协议透明传输功能。MACsec会话协商过程使用EAP协议报文,以华为交换机为例,即需要在与SwitchA和SwitchB相连的透传交换机上配置EAP报文透传功能,操作步骤如下:
- 在透传交换机SwitchC和SwitchD的系统视图下执行命令l2protocol-tunnel user-defined-protocol test1 protocol-mac 0180-c200-0003 group-mac 0100-0008-0008定义二层透明传输EAP报文。其中0180-c200-0003为EAP协议报文的组播目的MAC地址。SwitchE上不需要配置。
- 在透传交换机SwitchC上与SwitchA相连的接口和SwitchD上与SwitchB相连的接口执行命令l2protocol-tunnel user-defined-protocol test1 enable使能接口的二层协议透明传输功能。
操作步骤
- 配置SwitchA。
# 开启MACsec功能。
<HUAWEI> system-view [~HUAWEI] sysname SwitchA [*HUAWEI] commit [~SwitchA] interface 100ge 1/0/1 [~SwitchA-100GE1/0/1] mka enable [*SwitchA-100GE1/0/1] commit
# 配置SwitchA的密钥服务器优先级为1,CKN为f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced,CAK为ab2145369adcadef69512347adceb210。
[~SwitchA-100GE1/0/1] mka keyserver priority 1 [*SwitchA-100GE1/0/1] mka cak-mode static ckn f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced cak ab2145369adcadef69512347adceb210 [*SwitchA-100GE1/0/1] macsec cipher-suite gcm-aes-xpn-128 [*SwitchA-100GE1/0/1] quit [*SwitchA] commit
- 配置SwitchB。
# 开启MACsec功能。
<HUAWEI> system-view [~HUAWEI] sysname SwitchB [*HUAWEI] commit [~SwitchB] interface 100ge 1/0/1 [~SwitchB-100GE1/0/1] mka enable [*SwitchB-100GE1/0/1] commit
# 配置SwitchB的密钥服务器优先级为2,CKN为f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced,CAK为ab2145369adcadef69512347adceb210。
[~SwitchB-100GE1/0/1] mka keyserver priority 2 [*SwitchB-100GE1/0/1] mka cak-mode static ckn f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced cak ab2145369adcadef69512347adceb210 [*SwitchB-100GE1/0/1] macsec cipher-suite gcm-aes-xpn-128 [*SwitchB-100GE1/0/1] quit [*SwitchB] commit
- 配置MACsec加密模式为normal模式。
# 配置SwitchA加密模式为normal模式。
[~SwitchA] interface 100ge 1/0/1 [~SwitchA-100GE1/0/1] macsec mode normal [*SwitchA-100GE1/0/1] quit [*SwitchA] commit
# 配置SwitchB加密模式为normal模式。
[~SwitchB] interface 100ge 1/0/1 [~SwitchB-100GE1/0/1] macsec mode normal [*SwitchB-100GE1/0/1] quit [*SwitchB] commit
- 查看配置结果,以SwitchA为例。
# 在SwitchA上执行命令display mka检查配置结果。
[~SwitchA] display mka interface 100ge 1/0/1 Interface 100GE1/0/1: MKA transmit interval time(s) : 2 MKA life time(s) : 6 SAK life time(s) : 3600 MACsec capability : 3 MACsec mode : Normal //MACsec加密模式为Normal MACsec frame validation : Strict MACsec replay protection : YES MACsec replay-window(frame(s)) : 0 MACsec confidentiality-offset(byte(s)) : 0 MACsec include SCI : YES MKA cipher suite : AES-CMAC-128 MACsec cipher suite : GCM-AES-XPN-128 Key server priority : 1 Transmit SCI : 3400A7DDB28110A2 CKN: F1C3B2A4D6D9A7C5B4E1AB56DC21ED79AC97BE533671DCAB2678AC55CF71ACED MKA status : SUCCEEDED //MKA会话协商成功 MI : 90F4F9A6F5E6DA852E96587F MN : 20775 Key server : YES Principal actor : YES Live peers : 1 Potential peers : 0 Latest SAK status : Rx & Tx Latest SAK AN : 3 Latest SAK KI : E1E9DDE6DC520ED64BCE3F8B Latest SAK KN : 12 Old SAK status : N/A Old SAK AN : N/A Old SAK KI : N/A Old SAK KN : N/A Transmit SSCI : 1 Live peers list : MI MN Priority Capability Rx-SCI SSCI E1E9DDE6DC520ED64BCE3F8B 20760 2 3 2017091251504931 2 Potential peers list : MI MN Priority Capability Rx-SCI SSCI -- -- -- -- -- -- MKA statistics: Rx MKA packets : 21046 Tx MKA packets : 21578 Drop MKA packets : 6 Wrong CKN num : 0 Wrong ICV num : 0 SAK install times : 18 SAK delete times : 17 SAK swap times : 12 Latest SAK reason : Configure MACsec mode
通过上面的显示信息可以看出,MKA status为SUCCEEDED,表示MKA会话协商成功;MACsec mode为Normal,表示MACsec加密模式为normal。
配置文件
SwitchA的配置文件
# sysname SwitchA # interface 100GE1/0/1 mka enable mka cak-mode static ckn f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced cak %^%#&gqJ1f*uV0vqB$ZT5hr#qwL/;Cd/`OmO<m2+hh1A1&w{)jh1"'poiXB\UAn9%^%# macsec mode normal mka keyserver priority 1 # return
SwitchB的配置文件
# sysname SwitchB # interface 100GE1/0/1 mka enable mka cak-mode static ckn f1c3b2a4d6d9a7c5b4e1ab56dc21ed79ac97be533671dcab2678ac55cf71aced cak %^%#W5_!'~9]i>47d&X^Vro#S!z<4s+/N5\Ek*#27i_Wz-U3/"3tJM1.6++,nP+Z%^%# macsec mode normal mka keyserver priority 2 # return