局域网交换 : 802.1x

MACsec与思科AnyConnect和ISE配置示例的交换机主机加密

2016 年 10 月 24 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 12 月 19 日) | 反馈

简介

本文为媒体访问控制在802.1x请求方(思科AnyConnect移动安全)和验证器(交换机)之间的安全(MACsec)加密提供配置示例。思科身份服务引擎(ISE)使用作为验证和策略服务器。

在802.1AE标准化并且思科3750X、3560X和4500 SUP7E交换机支持MACsec。802.1AE定义了在使用带外密钥的有线网络的链路加密。那些加密密钥协商与在成功的802.1x验证以后使用的MACsec密钥协议(MKA)协议。MKA在IEEE 802.1X-2010标准化。

数据包在PC和交换机(点对点加密)之间的链路仅加密。交换机接收的数据包通过未加密的uplink端口解密并且发送。为了加密在交换机之间的发射,推荐交换机-交换机加密。对于该加密,安全关联协议(SAP)用于协商和重新生成密钥。SAP是思科开发的Prestandard密钥协议协议。

贡献用米哈拉Garcarz和罗马Machulik, Cisco TAC工程师。

先决条件

要求

Cisco 建议您了解以下主题:

  • 802.1x配置基础知识
  • Catalyst交换机的CLI配置基础知识
  • 体验与ISE配置

使用的组件

本文档中的信息基于以下软件和硬件版本:

  • Microsoft Windows 7和Microsoft Windows XP操作系统
  • Cisco 3750X软件,版本15.0和以上
  • Cisco ISE软件,版本1.1.4和以上
  • Cisco AnyConnect移动安全以网络访问管理器(NAM),版本3.1和以上

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。

配置

网络图和通信流

步骤1:请求方(AnyConnect NAM)启动802.1x会话。交换机是验证器,并且ISE是认证服务器。LAN上的可扩展认证协议(EAPOL)协议使用,传输在请求方和交换机之间的EAP。RADIUS使用作为传输协议在交换机和ISE之间的EAP。不可能使用MAC验证旁路(MAB),因为EAPOL密钥需要从ISE返回和用于MACsec密钥协议(MKA)会话。

第二步:在802.1x会话完成后,交换机启动有EAPOL的一MKA会话作为传输协议。如果请求方正确地配置,对称128-bit AES-GCM (Galois/计数器模式)加密的密钥配比。

第三步:在请求方和交换机之间的后续信息包加密(802.1AE封装)。

配置

ISE

ISE配置介入一个典型的802.1x方案有例外对也许包括加密策略的授权配置文件。

选择Administration >网络资源>网络设备为了添加交换机作为网络设备。输入RADIUS预共享密匙(共享塞克雷)。

可以使用默认验证规则(为在ISE定义的本地用户)。

选择Administration >身份管理> Users为了定义用户“cisco”本地。

授权配置文件也许包括加密策略。如此示例所显示,请选择策略>结果>授权配置文件为了查看信息ISE回归到交换机链路加密是必须。并且, VLAN号(10)配置。

选择策略>授权为了使用授权配置文件在授权规则。此示例返回用户的“cisco”已配置的配置文件。如果802.1x是成功的, ISE回归RADIUS接受到有思科AVPair linksec-policy=must-secure的交换机。该属性强制交换机启动MKA会话。如果该会话出故障,在交换机的802.1x授权也发生故障。

交换机

典型的802.1x端口设置包括(显示的顶部部分) :

aaa new-model
aaa authentication dot1x default group radius
aaa authorization network default group radius

aaa group server radius ISE
 server name ISE

dot1x system-auth-control

interface GigabitEthernet1/0/2
 description windows7
 switchport mode access
 authentication order dot1x
 authentication port-control auto
 dot1x pae authenticator

radius server ISE
 address ipv4 10.48.66.74 auth-port 1645 acct-port 1646
 timeout 5
 retransmit 2
key cisco

本地MKA策略创建并且应用对接口。并且, MACsec在接口启用。

mka policy mka-policy
 replay-protection window-size 5000

interface GigabitEthernet1/0/2
 macsec
 mka policy mka-policy

本地MKA策略允许您配置不可能从ISE推送的详细的设置。本地MKA策略可选。

AnyConnect NAM

802.1x请求方的配置文件可以手工配置或通过思科ASA推送。以下步骤呈现一个手动配置。

为了管理NAM配置文件:

添加与MACsec的一新的802.1x配置文件。对于802.1x,使用Protected Extensible Authentication Protocol (PEAP) (已配置的用户“cisco”在ISE) :

验证

使用本部分可确认配置能否正常运行。

为EAP-PEAP配置的AnyConnect NAM要求正确凭证。

交换机的会话应该验证和授权。应该“获取安全状态” :

bsns-3750-5#show authentication sessions interface g1/0/2
            Interface:  GigabitEthernet1/0/2
          MAC Address:  0050.5699.36ce
           IP Address:  192.168.1.201
            User-Name:  cisco
               Status:  Authz Success
               Domain:  DATA
      Security Policy:  Must Secure
      Security Status:  Secured
       Oper host mode:  single-host
     Oper control dir:  both
        Authorized By:  Authentication Server
          Vlan Policy:  10
      Session timeout:  N/A
         Idle timeout:  N/A
    Common Session ID:  C0A8000100000D56FD55B3BF
      Acct Session ID:  0x00011CB4
               Handle:  0x97000D57

Runnable methods list:
       Method   State
       dot1x    Authc Success

在交换机的MACsec统计信息关于本地策略设置、安全信道标识符(SCIs)为已接收/发送的流量,并且端口统计和错误提供细节。

bsns-3750-5#show macsec interface g1/0/2
 MACsec is enabled
  Replay protect : enabled
  Replay window : 5000
  Include SCI : yes
  Cipher : GCM-AES-128
  Confidentiality Offset : 0
 Capabilities
  Max. Rx SA : 16
  Max. Tx SA : 16
  Validate Frames : strict
  PN threshold notification support : Yes
  Ciphers supported : GCM-AES-128
 Transmit Secure Channels
  SCI : BC166525A5020002
   Elapsed time : 00:00:35
   Current AN: 0   Previous AN: -
   SC Statistics
    Auth-only (0 / 0)
    Encrypt (2788 / 0)
 Receive Secure Channels
  SCI : 0050569936CE0000
   Elapsed time : 00:00:35
   Current AN: 0   Previous AN: -
   SC Statistics
    Notvalid pkts 0      Invalid pkts 0
    Valid pkts 76         Late pkts 0
    Uncheck pkts 0       Delay pkts 0
  Port Statistics
   Ingress untag pkts  0        Ingress notag pkts 2441
   Ingress badtag pkts 0        Ingress unknownSCI pkts 0
   Ingress noSCI pkts 0         Unused pkts 0
   Notusing pkts 0              Decrypt bytes 176153
   Ingress miss pkts 2437

在AnyConnect,统计信息指示加密使用情况和信息包统计数据。

故障排除

本部分提供的信息可用于对配置进行故障排除。

工作的方案的调试

在交换机的关闭调试(若干输出为了清晰省略)。

debug macsec event
debug macsec error
debug epm all
debug dot1x all
debug radius
debug radius verbose

在802.1x会话建立后,多EAP数据包在EAPOL被交换。从ISE (EAP成功)运载的内部的RADIUSAcccept的最后成功的答复也包括几个RADIUS属性。

RADIUS: Received from id 1645/40 10.48.66.74:1645, Access-Accept, len 376
RADIUS:  EAP-Key-Name        [102] 67  *
RADIUS:  Vendor, Cisco       [26]  34  
RADIUS:   Cisco AVpair       [1]   28  "linksec-policy=must-secure"
RADIUS:  Vendor, Microsoft   [26]  58  
RADIUS:   MS-MPPE-Send-Key   [16]  52  *
RADIUS:  Vendor, Microsoft   [26]  58  
RADIUS:   MS-MPPE-Recv-Key   [17]  52  *

EAP KEY NAME使用MKA会话。linksec策略强制交换机使用MACsec (授权发生故障,如果那不完成)。那些属性在数据包捕获可以也验证。

验证是成功的。

%DOT1X-5-SUCCESS: Authentication successful for client (0050.5699.36ce) on 
Interface Gi1/0/2 AuditSessionID C0A8000100000D56FD55B3BF
%AUTHMGR-7-RESULT: Authentication result 'success' from 'dot1x' for client
(0050.5699.36ce) on Interface Gi1/0/2 AuditSessionID C0A8000100000D56FD55B3BF

交换机适用属性(这些包括也发送)的可选VLAN号。

%AUTHMGR-5-VLANASSIGN: VLAN 10 assigned to Interface Gi1/0/2 AuditSessionID 
C0A8000100000D56FD55B3BF

当发送并且收到EAPOL数据包时,交换机然后启动MKA会话。

%MKA-5-SESSION_START: (Gi1/0/2 : 2) MKA Session started for RxSCI 0050.5699.36ce/0000, 
AuditSessionID C0A8000100000D56FD55B3BF, AuthMgr-Handle 97000D57
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
EAPOL pak dump rx
dot1x-packet(Gi1/0/2): Received an EAPOL frame
dot1x-packet(Gi1/0/2): Received an MKA packet

在4信息包交换巩固后标识符与接收(RX)安全关联一起创建。

HULC-MACsec: MAC: 0050.5699.36ce, Vlan: 10, Domain: DATA
HULC-MACsec: Process create TxSC i/f GigabitEthernet1/0/2 SCI BC166525A5020002
HULC-MACsec: Process create RxSC i/f GigabitEthernet1/0/2 SCI 50569936CE0000
HULC-MACsec: Process install RxSA request79F6630 for interface GigabitEthernet1/0/2

会话完成,并且Transmit(Tx)安全关联被添加。

%MKA-5-SESSION_SECURED: (Gi1/0/2 : 2) MKA Session was secured for 
RxSCI 0050.5699.36ce/0000, AuditSessionID C0A8000100000D56FD55B3BF,
CKN A2BDC3BE967584515298F3F1B8A9CC13
HULC-MACsec: Process install TxSA request66B4EEC for interface GigabitEthernet1/0/

“必须安全”的策略匹配,并且授权是成功的。

%AUTHMGR-5-SUCCESS: Authorization succeeded for client (0050.5699.36ce) on 
Interface Gi1/0/2 AuditSessionID C0A8000100000D56FD55B3BF

每2秒MKA Hello数据包被交换为了保证所有参加者运行。

dot1x-ev(Gi1/0/2): Received TX PDU (5) for the client 0x6E0001EC (0050.5699.36ce)
dot1x-packet(Gi1/0/2): MKA length: 0x0084 data: ^A
dot1x-ev(Gi1/0/2): Sending EAPOL packet to group PAE address
EAPOL pak dump Tx

失败方案的调试

当请求方没有为MKA和ISE时配置在一成功的802.1x验证以后请求加密:

RADIUS: Received from id 1645/224 10.48.66.74:1645, Access-Accept, len 342
%DOT1X-5-SUCCESS: Authentication successful for client (0050.5699.36ce) on
Interface Gi1/0/2 AuditSessionID C0A8000100000D55FD4D7529
%AUTHMGR-7-RESULT: Authentication result 'success' from 'dot1x' for client
(0050.5699.36ce) on Interface Gi1/0/2 AuditSessionID C0A8000100000D55FD4D7529

当发送5 EAPOL数据包时,交换机设法启动MKA会话。

%MKA-5-SESSION_START: (Gi1/0/2 : 2) MKA Session started for RxSCI 0050.5699.36ce/0000, 
AuditSessionID C0A8000100000D55FD4D7529, AuthMgr-Handle A4000D56
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx

并且终于计时并且出故障授权。

 %MKA-4-KEEPALIVE_TIMEOUT: (Gi1/0/2 : 2) Peer has stopped sending MKPDUs for RxSCI 
0050.5699.36ce/0000, AuditSessionID C0A8000100000D55FD4D7529, CKN
F8288CDF7FA56386524DD17F1B62F3BA
%MKA-4-SESSION_UNSECURED: (Gi1/0/2 : 2) MKA Session was stopped by MKA and not
secured for RxSCI 0050.5699.36ce/0000, AuditSessionID C0A8000100000D55FD4D7529,
CKN F8288CDF7FA56386524DD17F1B62F3BA
%AUTHMGR-5-FAIL: Authorization failed or unapplied for client (0050.5699.36ce)
on Interface Gi1/0/2 AuditSessionID C0A8000100000D55FD4D7529

802.1x会话报告成功认证,但是失败的授权。

bsns-3750-5#show authentication sessions int g1/0/2
            Interface:  GigabitEthernet1/0/2
          MAC Address:  0050.5699.36ce
           IP Address:  192.168.1.201
            User-Name:  cisco
               Status:  Authz Failed
               Domain:  DATA
      Security Policy:  Must Secure
      Security Status:  Unsecure
       Oper host mode:  single-host
     Oper control dir:  both
      Session timeout:  N/A
         Idle timeout:  N/A
    Common Session ID:  C0A8000100000D55FD4D7529
      Acct Session ID:  0x00011CA0
               Handle:  0xA4000D56

Runnable methods list:
       Method   State
       dot1x    Authc Success

数据流将阻塞。

数据包捕获

当流量在请求方站点4互联网控制消息协议(ICMP) ECHO请求/时回复捕获发送,并且接收,将有:

  • 4加密的ICMP echo请求发送对交换机(88e5为802.1AE保留)
  • 接收的4解密的ICMP echo应答

那是由于如何在Windows API的AnyConnect挂(在libpcap前,当数据包被发送时和在libpcap前,当数据包接收)时:

注意:有功能的例如交换端口分析器(SPAN)或嵌入式数据包捕获(EPC)不支持能力探测MKA或802.1AE在交换机的流量。

MACsec和802.1x模式

不是所有的802.1x模式为MACsec支持。

思科TrustSec 3.0入门指南:MACsec和NDAC简介声明那:

  • 单个主机模式:单个主机模式充分地支持MACsec。在此模式,仅单个MAC或IP地址可以验证和获取与MACsec。如果不同的MAC地址在端口检测,在终端验证后,安全侵害在端口将被触发。

  • 多域验证(MDA)模式:在此模式,一个终端可能在数据域,并且另一个终端可能在语音域。MDA模式充分地支持MACsec。如果两个终端是MACsec有能力,其中每一将由其自己的独立MACsec会话获取。如果仅一个终端是MACsec有能力,该终端可以获取,当另一个终端无危险时发送流量。

  • 多验证模式:在此模式,终端一个无限制的数目可能实际上验证到单个交换机端口。此模式不支持MACsec。

  • 多个主机模式:当在此模式的MACsec使用情况是技术上可能的时,没有推荐。在多个主机模式,在端口的第一个终端验证,所有另外的终端然后将允许在网络上通过第一个授权。MACsec与第一台连接的主机,但是没有其他终端一起使用?因为它不会是加密流量, s流量实际上将通过。

相关信息



Document ID: 117277