概述:在网络信息越来越发达的时代,网络上的信息泄漏等安全问题也越来越多,各种安全技术也随之产生。
现在,我对华为网络设备上常用的安全技术做个总结。
一、端口汇聚
端口汇聚是将多个端口汇聚在一起形成一个汇聚组,在汇聚组中的各个成员端口之
间,实现出/入负荷的分担,同时也提供了更高的连接可靠性。
按照汇聚组类型的不同,端口汇聚组可以分为负载分担汇聚组和非负载分担汇聚组。
同一个汇聚组中端口的基本配置必须保持一致,基本配置主要包括 STP、QoS、
VLAN、端口属性等相关配置。
STP 配置一致,包括:端口的 STP 使能/关闭、与端口相连的链路属性(如点
对点或非点对点)、STP 优先级、报文发送速率限制、是否环路保护、是否根
保护、是否为边缘端口。
QoS 配置一致,包括:流量限速、优先级标记、缺省的 802.1p 优先级、带宽
保证、拥塞避免、流重定向、流量统计等。
VLAN 配置一致,包括:端口上允许通过的 VLAN、端口缺省 VLAN ID。
端口属性配置一致,包括:端口的速率、双工模式、链路类型(即 Trunk、Hybrid、
Access 类型)。
在将以太网端口加入汇聚组时,需要注意的是:
镜像目的端口、配置了静态 MAC 地址的端口、配置了静态 ARP 的端口、以及
使能 802.1x 的端口不能加入汇聚组。
当手工汇聚组中只包含一个端口时,不能将该端口从汇聚组中删除,而只能通
过删除汇聚组的方式将该端口从汇聚组中删除。
如果用户在一个汇聚组中配置的端口数大于 4 个,那么端口号较小的前 4 个端
口将实现流量的负载分担,剩余端口将作为链路备份。
端口汇聚典型配置举例
1. 组网需求
以太网交换机 Switch A 使用 3 个端口(Ethernet1/0/1~Ethernet1/0/3)汇聚接入以
太网交换机 Switch B,实现出/入负荷在各成员端口中的负载分担。
2. 组网图
3. 配置步骤
说明:
以下只列出对 Switch A 的配置,对 Switch B 也需要作相应的配置,才能实现端口
汇聚。
# 创建手工汇聚组 1。
<Quidway> system-view
[Quidway] link-aggregation group 1 mode manual
# 将以太网端口 Ethernet1/0/1 至 Ethernet1/0/3 加入汇聚组 1。
[Quidway] interface ethernet1/0/1
[Quidway-Ethernet1/0/1] port link-aggregation group 1
[Quidway-Ethernet1/0/1] interface ethernet1/0/2
[Quidway-Ethernet1/0/2] port link-aggregation group 1
[Quidway-Ethernet1/0/2] interface ethernet1/0/3
[Quidway-Ethernet1/0/3] port link-aggregation group 1
二、端口隔离
通过端口隔离特性,用户可以将需要进行控制的端口加入到一个隔离组中,实现隔
离组中的端口之间二层、三层数据的隔离,既增强了网络的安全性,也为用户提供
了灵活的组网方案。
目前一台设备只支持建立一个隔离组,组内的以太网端口数量不限。
说明:端口隔离特性与以太网端口所属的 VLAN 无关。
端口隔离与端口聚合的关系
当聚合组中的某个端口加入到隔离组后,同一聚合组内的其它端口,均会自动加入
隔离组中。
端口隔离配置举例
1. 组网需求
小区用户 PC2、PC3、PC4 分别与交换机的以太网端口 Ethernet1/0/2、
Ethernet1/0/3、Ethernet1/0/4 相连
交换机通过 Ethernet1/0/1 端口与外部网络相连
小区用户 PC2、PC3 和 PC4 之间不能互通
2. 组网图
3. 配置步骤
# 将以太网端口 Ethernet1/0/2、Ethernet1/0/3、Ethernet1/0/4 加入隔离组。
<Quidway> system-view
System View: return to User View with Ctrl+Z.
[Quidway] interface ethernet1/0/2
[Quidway-Ethernet1/0/2] port isolate
[Quidway-Ethernet1/0/2] quit
[Quidway] interface ethernet1/0/3
[Quidway-Ethernet1/0/3] port isolate
[Quidway-Ethernet1/0/3] quit
[Quidway] interface ethernet1/0/4
[Quidway-Ethernet1/0/4] port isolate
[Quidway-Ethernet1/0/4] quit
[Quidway]
# 显示隔离组中的端口信息。
<Quidway> display isolate port
Isolated port(s) on UNIT 1:
Ethernet1/0/2, Ethernet1/0/3, Ethernet1/0/4
三、MAC地址表的管理与设定
为了快速转发报文,以太网交换机需要维护 MAC 地址转发表。MAC 地址转发表是
一张基于端口的二层转发表,是以太网交换机实现二层报文快速转发的基础。MAC
地址转发表的表项包括:
目的 MAC 地址
端口所属的 VLAN ID
转发端口号
以太网交换机通过查找 MAC 地址转发表得到二层报文的转发端口号,从而实现二
层报文的快速转发。通过mac地址表项的管理与设定,可以实现通过交换机进行的一些安全操作。
MAC 地址转发表中的动态表项(非手工配置)是由以太网交换机学习得来的。
静态 MAC 地址表项:也称为“永久地址”,由用户手工添加和删除,不会随
着时间老化。对于一个设备变动较小的网络,手工添加静态地址表项可以减少
网络中的广播流量。
MAC 地址转发表管理典型配置举例
1. 组网需求
用户通过 Console 口登录到交换机,配置地址表管理。要求设置交换机上动态 MAC
地址表项的老化时间为 500 秒, VLAN1 中的 Ethernet 1/0/2 端口添加一个静态地
在
址 00e0-fc35-dc71。
2. 组网图
3. 配置步骤
# 进入交换机系统视图。
<Quidway> system-view
[Quidway]
# 增加 MAC 地址(指出所属 VLAN、端口、状态)。
[Quidway] mac-address static 00e0-fc35-dc71 interface Ethernet 1/0/2 vlan 1
# 设置交换机上动态 MAC 地址表项的老化时间为 500 秒。
[Quidway] mac-address timer aging 500
# 在系统视图下查看 MAC 地址配置。
[Quidway] display mac-address interface Ethernet 1/0/2
MAC ADDR VLAN ID STATE PORT INDEX AGING TIME(s)
00-e0-fc-35-dc-71 1 Static Ethernet1/0/2 NOAGED
00-e0-fc-17-a7-d6 1 Learned Ethernet1/0/2 AGING
00-e0-fc-5e-b1-fb 1 Learned Ethernet1/0/2 AGING
00-e0-fc-55-f1-16 1 Learned Ethernet1/0/2 AGING
--- 4 mac address(es) found on port Ethernet1/0/2 ---
四、802.1x的配置(dot1x)
IEEE802 LAN/WAN 委员会为解决无线局域网网络安全问题,提出了 802.1x 协议。
后来,802.1x 协议作为局域网端口的一个普通接入控制机制用在以太网中,主要解
决以太网内认证和安全方面的问题。
802.1x 协议是一种基于端口的网络接入控制(Port Based Network Access Control)
协议。“基于端口的网络接入控制”是指在局域网接入控制设备的端口这一级对所
接入的设备进行认证和控制。连接在端口上的用户设备如果能通过认证,就可以访
问局域网中的资源;如果不能通过认证,则无法访问局域网中的资源——相当于连
接被物理断开。
802.1x 提供了一个用户身份认证的实现方案,为了实现此方案,除了配置 802.1x
相关命令外,还需要在交换机上配置 AAA 方案,选择使用 RADIUS 或本地认证方
案,以配合 802.1x 完成用户身份认证:
802.1x 用户通过域名和交换机上配置的 ISP 域相关联。
配置 ISP 域使用的 AAA 方案,包括本地认证方案和 RADIUS 方案。
如果采用 RADIUS 方案,通过远端的 RADIUS 服务器进行认证,则需要在
RADIUS 服务器上配置相应的用户名和密码,然后在交换机上进行 RADIUS
客户端的相关设置。
如果是需要本地认证,则需要在交换机上手动添加认证的用户名和密码,当用
户使用和交换机中记录相同的用户名和密码,启动 802.1x 客户端软件进行认
证时,就可以通过认证。
也可以配置交换机先采用 RADIUS 方案,通过 RADIUS 服务器进行认证,如
果 RADIUS 服务器无效,则使用本地认证。
802.1x 典型配置举例
1. 组网需求
要求在各端口上对用户接入进行认证,以控制其访问 Internet;接入控制模式
要求是基于 MAC 地址的接入控制。
所有接入用户都属于一个缺省的域:aabbcc.net,该域最多可容纳 30 个用户;
认证时,先进行 RADIUS 认证,如果 RADIUS 服务器没有响应再转而进行本
地认证;计费时,如果 RADIUS 计费失败则切断用户连接使其下线;此外,
接入时在用户名后不添加域名,正常连接时如果用户有超过 20 分钟流量持续
小于 2000Bytes 的情况则切断其连接。
由两台 RADIUS 服务器组成的服务器组与交换机相连,其 IP 地址分别为
10.11.1.1 和 10.11.1.2,前者作为主认证/备份计费服务器,后者作为备份认证
/主计费服务器;设置系统与认证 RADIUS 服务器交互报文时的加密密码为
“name”、与计费 RADIUS 服务器交互报文时的加密密码“money”,设置
系统在向 RADIUS 服务器发送报文后 5 秒种内如果没有得到响应就向其重新
发送报文,重复发送报文的次数总共为 5 次,设置系统每 15 分钟就向 RADIUS
服务器发送一次实时计费报文, 指示系统从用户名中去除用户域名后再将之传
给 RADIUS 服务器。
本地 802.1x 接入用户的用户名为 localuser,密码为 localpass,使用明文输入,
闲置切断功能处于打开状态。
2. 组网图
3. 配置步骤
# 开启全局 802.1x 特性。
<Quidway> system-view
[Quidway] dot1x
# 开启指定端口 Ethernet 1/0/1 的 802.1x 特性。
[Quidway] dot1x interface Ethernet 1/0/1
# 设置接入控制方式(该命令可以不配置,因为端口的接入控制在缺省情况下就是
基于 MAC 地址的)。
[Quidway] dot1x port-method macbased interface Ethernet 1/0/1
# 创建 RADIUS 方案 radius1 并进入其视图。
[Quidway] radius scheme radius1
# 设置主认证/计费 RADIUS 服务器的 IP 地址。
[Quidway-radius-radius1] primary authentication 10.11.1.1
[Quidway-radius-radius1] primary accounting 10.11.1.2
# 设置备份认证/计费 RADIUS 服务器的 IP 地址。
[Quidway-radius-radius1] secondary authentication 10.11.1.2
[Quidway-radius-radius1] secondary accounting 10.11.1.1
# 设置系统与认证 RADIUS 服务器交互报文时的加密密码。
[Quidway -radius-radius1] key authentication name
# 设置系统与计费 RADIUS 服务器交互报文时的加密密码。
[Quidway-radius-radius1] key accounting money
# 设置系统向 RADIUS 服务器重发报文的时间间隔与次数。
[Quidway-radius-radius1] timer 5
[Quidway-radius-radius1] retry 5
# 设置系统向 RADIUS 服务器发送实时计费报文的时间间隔。
[Quidway-radius-radius1] timer realtime-accounting 15
# 指示系统从用户名中去除用户域名后再将之传给 RADIUS 服务器。
[Quidway-radius-radius1] user-name-format without-domain
[Quidway-radius-radius1] quit
# 创建域 aabbcc.net 并进入其视图。
[Quidway] domain default enable aabbcc.net
# 指定 radius1 为该域用户的 RADIUS 方案,若 RADIUS 服务器无效,则使用本地
认证方案。
[Quidway-isp-aabbcc.net] scheme radius-scheme radius1 local
# 设置该域最多可容纳 30 个用户。
[Quidway-isp-aabbcc.net] access-limit enable 30
# 启动闲置切断功能并设置相关参数。
[Quidway-isp-aabbcc.net] idle-cut enable 20 2000
[Quidway-isp-aabbcc.net] quit
# 配置域 aabbcc.net 为缺省用户域。
[Quidway] domain default enable aabbcc.net
# 添加本地接入用户。
[Quidway] local-user localuser
[Quidway-luser-localuser] service-type lan-access
[Quidway-luser-localuser] password simple localpass
四、 system-guard
system-guard 按照设定的***检测时间间隔定期进行检查,在检查期间,如果开启
了防***功能的端口上 CPU 的报文数量超过设定的阈值,将被认为是***端口,交
换机将对该端口进行限速。超过对***端口的控制时间后,会取消端口的限速,在
下一个防***检测时间,重新检查在此期间防***端口上 CPU 的报文数量。
system-guard 典型配置举例
1. 组网需求
S2000-HI-2、S2000-HI-3、S2000-HI-4 下直接下挂业务用户,上行链路均连接到
S2000-HI-1。
2. 组网图
3. 配置步骤
# 配置 S2000-HI-2 软件防护
<S2000-HI-2> system-view
System View: return to User View with Ctrl+Z.
[S2000-HI-2] system-guard enable
[S2000-HI-2] system-guard mode rate-limit 5 256 300
[S2000-HI-2] system-guard permit Ethernet 1/0/1 to Ethernet 1/0/3
# 配置 S2000-HI-3 软件防护
<S2000-HI-3> system-view
System View: return to User View with Ctrl+Z.
[S2000-HI-3] system-guard enable
[S2000-HI-3] system-guard mode rate-limit 5 256 300
[S2000-HI-3] system-guard permit Ethernet 1/0/1 to Ethernet 1/0/3
# 配置 S2000-HI-4 软件防护
<S2000-HI-4> system-view
System View: return to User View with Ctrl+Z.
[S2000-HI-4] system-guard enable
[S2000-HI-4] system-guard mode rate-limit 5 256 300
[S2000-HI-4] system-guard permit Ethernet 1/0/1
# 配置 S2000-HI-1 软件防护
<S2000-HI-1> system-view
System View: return to User View with Ctrl+Z.
[S2000-HI-1] system-guard enable
[S2000-HI-1] system-guard mode rate-limit 2 256 60
[S2000-HI-1] system-guard permit Ethernet 1/0/1 to Ethernet 1/0/3
五、AAA 及 RADIUS 协议
AAA 是 Authentication,Authorization and Accounting(认证、授权和计费)的简
称,它提供了一个对认证、授权和计费这三种安全功能进行配置的一致性框架,实
际上是对网络安全的一种管理。
这里的网络安全主要是指访问控制,包括:
哪些用户可以访问网络服务器。
具有访问权的用户可以得到哪些服务。
如何对正在使用网络资源的用户进行计费。
针对以上问题,AAA 必须提供认证功能、授权功能和计费功能。
1. 认证功能
AAA 支持以下认证方式:
不认证:对用户非常信任,不对其进行合法检查。一般情况下不采用这种方式。
本地认证:将用户信息(包括本地用户的用户名、密码和各种属性)配置在设
备上。本地认证的优点是速度快,可以降低运营成本;缺点是存储信息量受设
备硬件条件限制。
远端认证:支持通过 RADIUS 协议或 HWTACACS 协议进行远端认证,设备
(如 Quidway 系列交换机)作为客户端,与 RADIUS 服务器或 TACACS 服务
器通信。对于 RADIUS 协议,可以采用标准或扩展的 RADIUS 协议。
2. 授权功能
AAA 支持以下授权方式:
直接授权:对用户非常信任,直接授权通过。
本地授权:根据设备上为本地用户帐号配置的相关属性进行授权。
RADIUS 认证成功后授权:RADIUS 协议的认证和授权是绑定在一起的,不能
单独使用 RADIUS 进行授权。
HWTACACS 授权:由 TACACS 服务器对用户进行授权。
3. 计费功能
AAA 支持以下计费方式:
不计费:不对用户计费。
远端计费:支持通过 RADIUS 服务器或 TACACS 服务器进行远端计费。
AAA 一般采用客户端/服务器结构:客户端运行于被管理的资源侧,服务器上集中存
放用户信息。因此,AAA 框架具有良好的可扩展性,并且容易实现用户信息的集中
管理。
AAA 是一种管理框架,因此,它可以用多种协议来实现。在实践中,人们最常使用
RADIUS 协议来实现 AAA。
RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)
是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问
的干扰,常被应用在既要求较高安全性,又要求维持远程用户访问的各种网络环境
中。
RADIUS 服务包括三个组成部分:
协议:RFC 2865 和 RFC 2866 基于 UDP/IP 层定义了 RADIUS 帧格式及其消
息传输机制,并定义了 1812 作为认证端口,1813 作为计费端口。
服务器:RADIUS 服务器运行在中心计算机或工作站上,包含了相关的用户认
证和网络服务访问信息。
客户端:位于拨号访问服务器设备侧,可以遍布整个网络。
RADIUS 基于客户端/服务器模型。交换机作为 RADIUS 客户端,负责传输用户信息
到指定的 RADIUS 服务器,然后根据从服务器返回的信息对用户进行相应处理(如
接入/挂断用户)。RADIUS 服务器负责接收用户连接请求,认证用户,然后给交换
机返回所有需要的信息。
RADIUS服务器通常要维护三个数据库
第一个数据库“Users”用于存储用户信息(如用户名、口令以及使用的协议、
IP 地址等配置)。
第二个数据库“Clients”用于存储 RADIUS 客户端的信息(如共享**)。
第三个数据库“Dictionary”存储的信息用于解释 RADIUS 协议中的属性和属
性值的含义。
AAA&RADIUS 协议典型配置举例
1. 组网需求
在图示的环境中,需要通过配置交换机实现RADIUS服务器对登录交换机的
Telnet用户进行认证。
一台 RADIUS 服务器(担当认证 RADIUS 服务器的职责)与交换机相连,服
务器 IP 地址为 10.110.91.164;
设置交换机与认证 RADIUS 服务器交互报文时的共享**为“expert”。
RADIUS 服务器可使用 CAMS 服务器。 使用第三方 RADIUS 服务器时,RADIUS 方
案中的 server-type 可以选择 standard 类型或 huawei 类型。
在 RADIUS 服务器上设置与交换机交互报文时的共享**为“expert”;
设置验证的端口号;
添加 Telnet 用户名及登录密码。
如果 RADIUS 方案中设置交换机不从用户名中去除用户域名而是一起传给 RADIUS
服务器,RADIUS 服务器上添加的 Telnet 用户名应为“[email protected]”形式。
2. 组网图
3. 配置步骤
# 配置 Telnet 用户采用 AAA 认证方式。
<Quidway> system-view
[Quidway] user-interface vty 0 4
[Quidway-ui-vty0-4] authentication-mode scheme
# 配置 domain。
[Quidway] domain cams
[Quidway-isp-cams] access-limit enable 10
[Quidway-isp-cams] quit
# 配置 RADIUS 方案。
[Quidway] radius scheme cams
[Quidway-radius-cams] accounting optional
[Quidway-radius-cams] primary authentication 10.110.91.164 1812
[Quidway-radius-cams] key authentication expert
[Quidway-radius-cams] server-type Huawei
[Quidway-radius-cams] user-name-format with-domain
[Quidway-radius-cams] quit
# 配置 domain 和 RADIUS 的关联。
[Quidway] domain cams
[Quidway-isp-cams] scheme radius-scheme cams
Telnet 用户登录时输入用户名 userid @cams,以使用 cams 域进行认证。
六、集中式 MAC 地址认证
集中式 MAC 地址认证是一种基于端口和 MAC 地址对用户访问网络的权限进行控制的认证方法,它不需要用户安装任何客户端软件,交换机在首次检测到用户的 MAC
地址以后,即启动对该用户的认证操作。
集中式 MAC 地址认证有两种方式:
MAC 地址方式:使用用户的 MAC 地址作为认证时的用户名和密码。
固定方式:使用在交换机上预先配置用户名和密码进行认证。此时,要求所有
用户都和交换机上配置的用户名和密码一一对应。
S2000-HI 系列以太网交换机支持通过 RADIUS 服务器或通过本地进行集中式 MAC
地址认证。
集中式 MAC 地址认证配置举例
说明:
集中式 MAC 地址认证的配置与 802.1x 类似,在本例中,二者的区别是:
在端口和全局下使能集中式 MAC 地址认证;
对于 MAC 地址方式,本地认证的用户名和密码需要配置为该用户的 MAC 地址;
对于 MAC 地址方式,RADIUS 服务器上的用户名和密码需要配置为该用户的
MAC 地址。
# 开启指定端口 Ethernet 1/0/2 的集中式 MAC 地址认证特性。
<Quidway> system-view
[Quidway] mac-authentication interface Ethernet 1/0/2
# 配置集中式 MAC 地址认证的方式为 MAC 地址方式,并指定使用带有分隔符的
MAC 地址作为验证的用户名和密码。
[Quidway] mac-authentication authmode usernameasmacaddress userformat
with-hyphen
# 添加本地接入用户。
配置本地用户的用户名和密码。
[Quidway] local-user 00-e0-fc-01-01-01
[Quidway-luser-00-e0-fc-01-01-01] password simple 00-e0-fc-01-01-01
设置本地用户服务类型为 lan-access。
[Quidway-luser-00-e0-fc-01-01-01] service-type lan-access
# 开启全局集中式 MAC 地址认证特性。
[Quidway-luser-00-e0-fc-01-01-01] quit
[Quidway] mac-authentication
# 配置 MAC 地址认证用户所使用的域名为 aabbcc163.net。
[Quidway] mac-authentication domain aabbcc163.net
七、ACL的应用
ACL(Access Control List,访问控制列表)主要用来实现流识别功能。网络设备为
了过滤数据包,需要配置一系列的匹配规则,以识别需要过滤的报文。在识别出特
定的报文之后,才能根据预先设定的策略允许或禁止相应的数据包通过。
ACL 通过一系列的匹配条件对数据包进行分类,这些条件可以是数据包的源地址、
目的地址、端口号等。
由 ACL 定义的数据包匹配规则,可以被其它需要对流量进行区分的功能引用,如
QoS 中流分类规则的定义。
根据应用目的,可将 ACL 分为下面几种:
基本 ACL:只根据三层源 IP 地址制定规则。
高级 ACL:根据数据包的源 IP 地址信息、目的 IP 地址信息、IP 承载的协议类
型、协议特性等三、四层信息制定规则。
二层 ACL:根据源 MAC 地址、目的 MAC 地址、VLAN 优先级、二层协议类
型等二层信息制定规则。
ACL 在交换机上的应用方式
1. ACL 直接下发到硬件中的情况
交换机中 ACL 可以直接下发到交换机的硬件中用于数据转发过程中报文的过滤和
流分类。此时一条 ACL 中多个规则的匹配顺序是由交换机的硬件决定的,用户即使
在定义 ACL 时配置了匹配顺序,该匹配顺序也不起作用。
ACL 直接下发到硬件的情况包括:交换机实现 QoS 功能时引用 ACL、通过 ACL 过
滤转发数据等。
2. ACL 被上层模块引用的情况
交换机也使用 ACL 来对由软件处理的报文进行过滤和流分类。此时 ACL 规则的匹
配顺序有两种:config(指定匹配该规则时按用户的配置顺序)和 auto(指定匹配
该规则时系统自动排序,即按“深度优先”的顺序)。这种情况下用户可以在定义
ACL 的时候指定一条 ACL 中多个规则的匹配顺序。用户一旦指定某一条 ACL 的匹
配顺序,就不能再更改该顺序。只有把该列表中所有的规则全部删除后,才能重新
指定其匹配顺序。
ACL 被软件引用的情况包括:对登录用户进行控制时引用 ACL 等。
基本 ACL配置举例
# 配置 ACL 2000,禁止源地址为 1.1.1.1 的报文通过。
<Quidway> system-view
[Quidway] acl number 2000
[Quidway-acl-basic-2000] rule deny source 1.1.1.1 0
[Quidway-acl-basic-2000] display acl 2000
Basic ACL 2000, 1 rule
Acl's step is 1
rule 0 deny source 1.1.1.1 0
高级 ACL配置举例
# 配置 ACL 3000,允许从 129.9.0.0 网段的主机向 202.38.160.0 网段的主机发送的
端口号为 80 的报文通过。
<Quidway>system-view
[Quidway] acl number 3000
[Quidway-acl-adv-3000] rule permit tcp source 129.9.0.0 0.0.255.255
destination 202.38.160.0 0.0.0.255 destination-port eq 80
[Quidway-acl-adv-3000] display acl 3000
Advanced ACL 3000, 1 rule
Acl's step is 1
rule 0 permit tcp source 129.9.0.0 0.0.255.255 destination 202.38.160.0
0.0.0.255 destination-port eq www
八、Ipsec
IPSec 是一系列网络安全协议的总称,它是由 IETF(Internet Engineering Task
Force,Internet 工程任务组)开发的,可为通讯双方提供访问控制、无连接的完整
性、数据来源认证、反重放、加密以及对数据流分类加密等服务。
IPSec 是网络层的安全机制。通过对网络层包信息的保护,上层应用程序即使没有
实现安全性,也能够自动从网络层提供的安全性中获益。这打消了人们对 ×××
(Virtual Private Network,虚拟专用网络)安全性的顾虑,使得 ××× 得以广泛应
用。
IPSec 的配置包括:
创建加密访问控制列表
定义安全提议
选择加密算法与认证算法
创建安全策略
在接口上应用安全策略组
加密卡实现 IPSec 的配置包括:
创建加密访问控制列表
配置加密卡
使能 VRP 主体软件备份
定义安全提议
选择加密算法与认证算法
创建安全策略
在接口上应用安全策略组
IPSec 典型配置举例
采用手工方式创建安全联盟
1. 配置需求
在路由器 A 和路由器 B 之间建立一个安全隧道对 PC A 代表的子网(10.1.1.x)与
PC B 代表的子网(10.1.2.x)之间的数据流进行安全保护。安全协议采用 ESP 协议,
加密算法采用 DES,认证算法采用 sha1-hmac-96。
2. 组网图
3. 配置步骤
首先确保 RouterA 和 RouterB 能通过串口在网络层互通。
路由器 A 的配置:
(1)
# 配置一个访问控制列表,定义由子网 10.1.1.x 去子网 10.1.2.x 的数据流。
[Router] acl 3001
[Router-acl-3001] rule permit ip source 10.1.1.0 0.0.0.255 destinatio
10.1.2.0 0.0.0.255
[Router-acl-3001] rule deny ip source any destination any
# 创建名为 tran1 的安全提议。
[Router] ipsec proposal tran1
# 报文封装形式采用隧道模式。
[Router-ipsec-proposal-tran1] encapsulation-mode tunnel
# 安全协议采用 ESP 协议。
[Router-ipsec-proposal-tran1] transform esp-new
# 选择认证算法和加密算法。
[Router-ipsec-proposal-tran1] esp-new encryption-algorithm des
[Router-ipsec-proposal-tran1] esp-new authentication-algorithm sha1-hmac-96
# 创建一条安全策略,协商方式为手工方式。
[Router] ipsec policy policy1 10 manual
# 引用访问列表。
[Router-ipsec-policy-policy1-10] security acl 3001
# 引用安全提议。
[Router-ipsec-policy-policy1-10] proposal tran1
# 设置本端与对端地址。
[Router-ipsec-policy-policy1-10] tunnel local 202.38.163.1
[Router-ipsec-policy-policy1-10] tunnel remote 202.38.162.1
# 设置 SPI。
[Router-ipsec-policy-policy1-10] sa outbound esp spi 12345
[Router-ipsec-policy-policy1-10] sa inbound esp spi 54321
# 设置**。
[Router-ipsec-policy-policy1-10] sa outbound esp string-key abcdefg
[Router-ipsec-policy-policy1-10] sa inbound esp string-key gfedcba
# 在串口上应用安全策略组。
[Router] interface serial 0
[Router-Serial0] ipsec policy policy1
[Router-Serial0] ip address 202.38.163.1 255.255.255.0
# 配置路由。
[Router] ip route-static 10.1.2.0 255.255.255.0 202.38.162.1
路由器 B 的配置:
(2)
# 配置一个访问列表,定义由子网 10.1.2.x 去子网 10.1.1.x 的数据流。
[Router] acl 3001
[Router-acl-3001] rule permit ip source 10.1.2.0 0.0.0.255 destination
10.1.1.0 0.0.0.255
[Router-acl-3001] rule deny ip source any destination any
# 创建名为 tran1 的安全提议。
[Router] ipsec proposal tran1
# 报文封装形式采用隧道模式。
[Router-ipsec-proposal-tran1] encapsulation-mode tunnel
# 安全协议采用 ESP 协议。
[Router-ipsec-proposal-tran1] transform esp-new
# 选择认证算法和加密算法。
[Router-ipsec-proposal-tran1] esp-new encryption-algorithm des
[Router-ipsec-proposal-tran1] esp-new authentication-algorithm sha1-hmac-96
# 创建一条安全策略,协商方式为手工方式。
[Router] ipsec policy use1 10 manual
# 引用访问列表。
[Router-ipsec-policy-use1-10] security acl 3001
# 引用安全提议。
[Router-ipsec-policy-use1-10] proposal tran1
# 设置本端与对端地址。
[Router-ipsec-policy-use1-10] tunnel local 202.38.162.1
[Router-ipsec-policy-use1-10] tunnel remote 202.38.163.1
# 设置 SPI。
[Router-ipsec-policy-use1-10] sa outbound esp spi 54321
[Router-ipsec-policy-use1-10] sa inbound esp spi 12345
# 设置**。
[Router-ipsec-policy-use1-10] sa outbound esp string-key gfedcba
[Router-ipsec-policy-use1-10] sa inbound esp string-key abcdefg
# 进入串口视图。
[Router] interface serial 0
# 在串口上应用安全策略组
[Router-Serial0] ipsec policy use1
[Router-Serial0] ip address 202.38.162.1 255.255.255.0
# 配置路由。
[Router] ip route-static 10.1.1.0 255.255.255.0 202.38.163.1
以上配置完成后,路由器 A 和路由器 B 之间的安全隧道就建立好了,子网 10.1.1.x
与子网 10.1.2.x 之间的数据流将被加密传输。
采用 IKE 协商方式创建安全联盟
1. 配置需求
在路由器 A 和路由器 B 之间建立一个安全隧道,对 PC A 代表的子网(10.1.1.x)与
PC B 代表的子网 (10.1.2.x)之间的数据流进行安全保护。安全协议采用 ESP 协议,
加密算法采用 DES,认证算法采用 sha1-hmac-96。
2. 组网图
同上例。
3. 配置步骤
首先确保 RouterA 和 RouterB 能通过串口在网络层互通。
路由器 A 的配置:
(1)
# 配置一个访问列表,定义由子网 10.1.1.x 去子网 10.1.2.x 的数据流。
[Router] acl 3001
[Router-acl-3001] rule permit ip source 10.1.1.0 0.0.0.255 destination
10.1.2.0 0.0.0.255
[Router-acl-3001] rule deny ip source any destination any
# 创建名为 tran1 的安全提议。
[Router] ipsec proposal tran1
# 报文封装形式采用隧道模式。
[Router-ipsec-proposal-tran1] encapsulation-mode tunnel
# 安全协议采用 ESP 协议。
[Router-ipsec-proposal-tran1] transform esp-new
# 选择认证算法和加密算法。
[Router-ipsec-proposal-tran1] esp-new encryption-algorithm des
[Router-ipsec-proposal-tran1] esp-new authentication-algorithm sha1-hmac-96
# 创建一条安全策略,协商方式为 isakmp。
[Router] ipsec policy policy1 10 isakmp
# 设置对端地址。
[Router-ipsec-policy-policy1-10] tunnel remote 202.38.162.1
# 引用安全提议。
[Router-ipsec-policy-policy1-10] proposal tran1
# 引用访问列表。
[Router-ipsec-policy-policy1-10] security acl 3001
# 配置串口 Serial0。
[Router] interface serial 0
[Router-Serial0] ip address 202.38.163.1 255.255.255.0
# 在串口上应用安全策略组。
[Router-Serial0] ipsec policy policy1
# 配置路由。
[Router] ip route-static 10.1.2.0 255.255.255.0 202.38.162.1
# 相应的 IKE 配置。
[Router] ike pre-shared-key abcde remote 202.38.162.1
路由器 B 的配置:
(2)
# 配置一个访问列表,定义由子网 10.1.2.x 去子网 10.1.1.x 的数据流。
[Router] acl 3001
[Router-acl-3001] rule permit ip source 10.1.2.0 0.0.0.255 destination
10.1.1.0 0.0.0.255
[Router-acl-3001] rule deny ip source any destination any
# 创建名为 tran1 的安全提议。
[Router] ipsec proposal tran1
# 报文封装形式采用隧道模式。
[Router-ipsec-proposal-tran1] encapsulation-mode tunnel
# 安全协议采用 ESP 协议。
[Router-ipsec-proposal-tran1] transform esp-new
# 选择认证算法和加密算法。
[Router-ipsec-proposal-tran1] esp-new encryption-algorithm des
[Router-ipsec-proposal-tran1] esp-new authentication-algorithm sha1-hmac-96
# 创建一条安全策略,协商方式为 isakmp。
[Router] ipsec policy use1 10 isakmp
# 引用访问列表。
[Router-ipsec-policy-policy1-10] security acl 3001
# 设置对端地址。
[Router-ipsec-policy-policy1-10] tunnel remote 202.38.163.1
# 引用安全提议。
[Router-ipsec-policy-policy1-10] proposal tran1
# 配置串口 Serial0。
[Router] interface serial 0
[Router-Serial0] ip address 202.38.162.1 255.255.255.0
# 在串口上应用安全策略组。
[Router-Serial0] ipsec policy use1
# 配置路由。
[Router] ip route-static 10.1.1.0 255.255.255.0 202.38.163.1
# 相应的 IKE 配置。
[Router] ike pre-shared-key abcde remote 202.38.163.1
以上配置完成后,路由器 A 和路由器 B 之间若有子网 10.1.1.x 与子网 10.1.2.x 之间
的报文通过,将触发 IKE 进行协商建立安全联盟。IKE 协商成功并创建了安全联盟
后,子网 10.1.1.x 与子网 10.1.2.x 之间的数据流将被加密传输。
九、IKE
IKE(Internet Key Exchange,因特网**交换协议)是基于 ISAKMP(Internet
Security Association Key Management Protocl)框架结构而建立的,它为 IPSec
提供了自动协商交换**、建立安全联盟的服务,简化了 IPSec 的使用和管理。
如上章所述,IPSec SA 能够手工建立,但是随着节点数目的日益增加,手工配置过
程将非常烦琐并易于出错。IKE 的应用将解决该问题。
IKE 具有一套自保护机制,可以在不安全的网络上安全的分发**、认证身份并建
立 IPSec 安全联盟。
建立安全联盟的双方在建立好安全联盟后。如果对方失效(例如关机)而不能正常
工作时,本地将无法知道。当对方重新开机后,由于本地存在安全联盟,无法发起
协商,只能由对方发起协商,或等到超时后协商。所以 IKE 中 Keepalive 功能将在
对方失效而不能工作时检测并删除无用的安全联盟。
IKE 使用两个阶段的 ISAKMP:
第一阶段:协商创建一个通信信道,并对该信道进行认证,为双方进一步的 IKE
通信提供机密性、消息完整性以及消息源认证服务。
第二阶段,使用已建立的 IKE SA 建立 IPSec SA。
从下图我们可以看出 IKE 和 IPSec 之间的关系。
IKE 典型配置举例
1. 组网需求
主机 A 与 B 之间进行安全通信,在路由器 RouterA 与 RouterB 之间使用 IKE
自动协商建立安全通道。
在 RouterA 上配置一条 IKE 策略,其中策略 10 优先级最高,缺省的 IKE 策略
优先级最低。
认证算法采用 pre-shared-key 方法。
2. 组网图
3. 配置步骤
路由器 RouterA 上的配置:
(1)
# 配置一条 IKE 策略 10。
[RouterA] ike proposal 10
# 指定 IKE 策略使用的散列算法为 MD5。
[RouterA-ike-proposal-10] authentication-algorithm md5
# 使用 pre-shared-key 认证方法。
[RouterA-ike-proposal-10] authentication-method pre-share
# 配置对端 171.69.224.33 的认证字为 “abcde”。
[RouterA] ike pre-share-key abcde remote 171.69.224.33
# 设置 IKE SA 存活时间为 5000 秒。
[RouterA-ike-proposal-10] sa duration 5000
路由器 Router B 上的配置:
(2)
# 在网关 B 上使用缺省的 IKE 策略,并配置对端的认证字。
[RouterB] ike pre-share-key abcde remote 202.38.160.1
以上是对 IKE 协商的配置,若希望建立 IPSec 安全通道进行安全通信,还需要进行
IPSec 的相应配置。
十、Am
端口+MAC
华为交换机H3C端口AM命令
使用特殊的AM User-bind命令,来完成MAC地址与端口之间的绑定。
例如:[SwitchA]am user-bind mac-address 00e0-fc22-f8d3 interface Ethernet 0/1
配置说明:由于使用了端口参数,则会以端口为参照物,即此时端口E0/1只允许PC1上网,而使用其他未绑定的MAC地址的PC机则无法上网。但是PC1使用该MAC地址可以在其他端口上网。
mac-address命令使用mac-address static命令,来完成MAC地址与端口之间的绑定。
例如:[SwitchA]mac-address static 00e0-fc22-f8d3 interface Ethernet 0/1 vlan 1[SwitchA]mac-address max-mac-count 0
配置说明:由于使用了端口学习功能,故静态绑定mac后,需再设置该端口mac学习数为0,使其他PC接入此端口后其mac地址无法被学习。
IP+MAC
华为交换机H3C端口AM命令
使用特殊的AM User-bind命令,来完成IP地址与MAC地址之间的绑定。
例如:[SwitchA]am user-bind ip-address 10.1.1.2 mac-address 00e0-fc22-f8d3配置说明:以上配置完成对PC机的IP地址和MAC地址的全局绑定。即与绑定的IP地址或者MAC地址不同的PC机,在任何端口都无法上网。支持型号:S3026E/EF/C/G/T、S3026C-PWR、E026/E026T、S3050C、E050、S3526E/C/EF、S5012T/G、S5024G
华为交换机H3C端口arp命令
使用特殊的arp static命令,来完成IP地址与MAC地址之间的绑定。
例如:[SwitchA]arp static 10.1.1.2 00e0-fc22-f8d3
配置说明:以上配置完成对PC机的IP地址和MAC地址的全局绑定。
端口+IP+MAC
使用特殊的AM User-bind命令,来完成IP、MAC地址与端口之间的绑定。
例如:[SwitchA]am user-bind ip-address 10.1.1.2 mac-address 00e0-fc22-f8d3 interface Ethernet 0/1。
配置说明:可以完成将PC1的IP地址、MAC地址与端口E0/1之间的绑定功能。由于使用了端口参数,则会以端口为参照物,即此时端口E0/1只允许PC1上网,而使用其他未绑定的IP地址、MAC地址的PC机则无法上网。但是PC1使用该IP地址和MAC地址可以在其他端口上网。
转载于:https://blog.51cto.com/chenyz/822842