1.1 AAA 可以通过多种协议来实现,这些协议规定了 NAS 与服务器之间如何传递用户信息。目前设备支持 RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)协议、HWTACACS(HW Terminal Access Controller Access Control System,HW 终端访问控制器控制系统协议)协议和 LDAP(Lightweight Directory Access Protocol,轻量级目录访问协议)协议,在实际应用中,最常使用 RADIUS 协议。
RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问的干扰,常应用在既要求较高安全性、又允许远程用户访问的各种网络环境中。RADIUS 协议合并了认证和授权的过程,它定义了RADIUS 的报文格式及其消息传输机制,并规定使用 UDP 作为封装 RADIUS 报文的传输层协议,UDP 端口 1812、1813 分别作为认证/授权、计费端口。
1.2 AAA配置
1.2.1配置本地用户
local-user user-name [class {manage|network}]
password {cipher|simple} password //配置网络接入类本地用户
password [{hash|simple} password] //配置设备管理类本地用户
service-type {lan-access|ipoe|portal|ppp} //配置网络介入类用户使用的服务类型
service-type {ftp|{http|https|ssh|telnet|terminal}*} //配置设备管理类用户使用的服务类型
配置举例:
public-key local create rsa
public-key local create dsa
line vty 0 63
authentication-mode scheme
local-user ssh class manage
service-type ssh
password simple 123456
authorization-attribute user-role network-admin
quit
1.2.2配置RADIUS方案
radius-server test-profile profile-name username name //配置RADIUS服务器探测模板,用于探测RADIUS服务器是否可达
radius scheme radius-scheme-name
primary authenication 10.8.109.4 1812 key string weight 80 //配置RADIUS认真服务器
key accounting cipher|simple string //配置共享密钥
password-control enable //使能密码管理功能
password-control aging aging-time //配置密码的老化时间
password-control update-interval interval //配置密码更新的最小时间间隔
password-control length length //配置密码的最小长度
password-control composition type-number type-number type-length type-length //配置密码组合策略
password-control complexity {same-character|username} check //配置用户密码的复杂度检查策略
password-control login-attempt login-times [exceed {lock-time time|unlock}] //配置用户登录尝试次数以及登录尝试失败后的行为
3.1 简介
IP Source Guard 功能用于对接口收到的报文进行过滤控制,通常配置在接入用户侧的接口上,以防止非法用户报文通过,从而限制了对网络资源的非法使用(比如非法主机仿冒合法用户 IP 接入网络),提高了接口的安全性。配置了IP Source Guard功能的接口接收到用户报文后,首先查找与该接口绑定的表项(简称为绑定表项),如果报文的信息与某绑定表项匹配,则转发该报文,否则丢弃该报文。IPSource Guard可以根据报文的源IP地址、源MAC地址和VLAN标签对报文进行过滤。报文的这些特征项可单独或组合起来与接口进行绑定,形成如下几类绑定表项:
• • IP 绑定表项
• • MAC 绑定表项
• • IP+MAC 绑定表项
• • IP+VLAN 绑定表项
• • MAC+VLAN 绑定表项
• • IP+MAC+VLAN 绑定表项
IP Source Guard 绑定表项可以通过手工配置和动态获取两种方式生成。设备仅支持 IP+MAC 绑定表项。
3.2 配置
interface g1/0/1
ip verify source {ip-address|ip-addres mac-address|mac-address} //绑定了源 IP 地址和 MAC 地址,则只有接口上收到的报文的源IPv4 地址和源 MAC 地址都与某动态绑定表项匹配,该报文才能被正常转发,否则将被丢弃;
IPv4 静态绑定表项包括全局的 IPv4 静态绑定表项和接口的 IPv4 静态绑定表项。
接口的 IPv4 静态绑定表项和动态绑定表项的优先级高于全局的 IPv4 静态绑定表项,即接口优先使用本接口上的静态或动态绑定表项对收到的报文进行匹配,若匹配失败,再与全局的静态绑定表项进行匹配。
ip source binding ip-address ip-address mac-address mac-address //配置全局静态表项。
dis ip source binding
4.1 简介
ARP 协议有简单、易用的优点,但是也因为其没有任何安全机制而容易被攻击发起者利用。
• • 攻击者可以仿冒用户、仿冒网关发送伪造的 ARP 报文,使网关或主机的 ARP 表项不正确,从而对网络进行攻击。
• • 攻击者通过向设备发送大量目标 IP 地址不能解析的 IP 报文,使得设备试图反复地对目标 IP地址进行解析,导致 CPU 负荷过重及网络流量过大。
• • 攻击者向设备发送大量 ARP 报文,对设备的 CPU 形成冲击。
为避免这种 IP 报文攻击所带来的危害,设备提供了下列两个功能:
• • ARP 源抑制功能:如果发送攻击报文的源是固定的,可以采用 ARP 源抑制功能。开启该功能后,如果网络中每 5 秒内从某 IP 地址向设备某接口发送目的 IP 地址不能解析的 IP 报文超过了设置的阈值,则设备将不再处理由此 IP 地址发出的 IP 报文直至该 5 秒结束,从而避免了恶意攻击所造成的危害。
• • ARP 黑洞路由功能:无论发送攻击报文的源是否固定,都可以采用 ARP 黑洞路由功能。开启该功能后,一旦接收到目标 IP 地址不能解析的 IP 报文,设备立即产生一个黑洞路由,使得设备在一段时间内将去往该地址的报文直接丢弃。等待黑洞路由老化时间过后,如有报文触发则再次发起解析,如果解析成功则进行转发,否则仍然产生一个黑洞路由将去往该地址的报文丢弃。这种方式能够有效地防止 IP 报文的攻击,减轻 CPU 的负担。
arp source-suppression enable //使能ARP源抑制功能
arp source-suppression limit limit-value //缺省情况下,ARP源抑制的阈值为10
arp resolving-route enable //缺省情况下,ARP黑洞路由功能处于开启状态
display arp source-suppression
4.2 配置源MAC地址固定的ARP攻击检测
本特性根据 ARP 报文的源 MAC 地址对上送 CPU 的 ARP 报文进行统计,在 5 秒内,如果收到同一源 MAC 地址(源 MAC 地址固定)的 ARP 报文超过一定的阈值,则认为存在攻击,系统会将此MAC 地址添加到攻击检测表项中。在该攻击检测表项老化之前,如果设置的检查模式为过滤模式,则会打印日志信息并且将该源MAC地址发送的ARP报文过滤掉;如果设置的检查模式为监控模式,则只打印日志信息,不会将该源 MAC 地址发送的 ARP 报文过滤掉。
对于网关或一些重要的服务器,可能会发送大量 ARP 报文,为了使这些 ARP 报文不被过滤掉,可以将这类设备的 MAC 地址配置成保护 MAC 地址,这样,即使该设备存在攻击也不会被检测、过滤。
arp source-mac {filter|monitor} //使能源MAC地址固定的ARP攻击检测功能
arp source-mac threshold threshold-value //缺省情况下,源MAC地址固定的ARP报文攻击检测阈值为30个
arp source-mac aging-time time //缺省情况下,源MAC地址固定的ARP攻击检测表项的老化时间为300秒
arp source-mac exclude-mac 0012-3f86-e49c //配置被保护MAC地址
4.3 配置ARP报文源MAC地址一致性检查功能
ARP 报文源 MAC 地址一致性检查功能主要应用于网关设备上,防御以太网数据帧首部中的源 MAC地址和 ARP 报文中的源 MAC 地址不同的 ARP 攻击。配置本特性后,网关设备在进行 ARP 学习前将对 ARP 报文进行检查。如果以太网数据帧首部中的
源 MAC 地址和 ARP 报文中的源 MAC 地址不同,则认为是攻击报文,将其丢弃;否则,继续进行ARP 学习。
arp valid-check enable
4.4 配置ARP主动确认功能
ARP 的主动确认功能主要应用于网关设备上,防止攻击者仿冒用户欺骗网关设备。
启用 ARP 主动确认功能后,设备在新建或更新 ARP 表项前需进行主动确认,防止产生错误的 ARP表项。
未启用 ARP 主动确认功能时,设备收到一个 ARP 报文的处理过程如下:
• • 如果设备的 ARP 表中没有与此 ARP 报文源 IP 地址对应的 ARP 表项,设备会根据 ARP 报文中携带的源 IP 地址、源 MAC 地址信息新建 ARP 表项。
• • 如果设备的 ARP 表中存在与此 ARP 报文源 IP 地址对应的 ARP 表项,设备会根据 ARP 报文中携带的源 IP 地址、源 MAC 地址信息更新对应的 ARP 表项。
启用 ARP 主动确认功能后,设备在新建或更新 ARP 表项前需进行主动确认,防止产生错误的 ARP表项。
arp active-ack [strict]enable
4.5 配置ARP过滤保护功能
本功能用来限制接口下允许通过的 ARP 报文,可以防止仿冒网关和仿冒用户的攻击。
在接口上配置此功能后,当接口收到 ARP 报文时,将检查 ARP 报文的源 IP 地址和源 MAC 地址是否和允许通过的 IP 地址和 MAC 地址相同:
• • 如果相同,则认为此报文合法,继续进行后续处理;
• • 如果不相同,则认为此报文非法,将其丢弃。
interface g1/0/1
arp filter binding ip-address mac-address //开启ARP过滤保护功能,配置允许通过的ARP报文的源IP地址和源MAC地址
5.1 802.1X简介
最初,提出 802.1X 协议是为解决无线局域网的网络安全问题。后来,802.1X 协议作为局域网的一种普通接入控制机制在以太网中被广泛应用,主要解决以太网内认证和安全方面的问题。
802.1X 协议是一种基于端口的网络接入控制协议,即在局域网接入设备的端口上对所接入的用户和设备进行认证,以便控制用户设备对网络资源的访问。
802.1X系统中包括三个实体:客户端(Client)、设备端(Device)和认证服务器(Authentication server)。
802.1X的接入控制方式
设备不仅支持协议所规定的基于端口的接入认证方式(Port-based),还对其进行了扩展、优化,支持基于 MAC 的接入控制方式(MAC-based)。
• • 采用基于端口的接入控制方式时,只要该端口下的第一个用户认证成功后,其它接入用户无须认证就可使用网络资源,但是当第一个用户下线后,其它用户也会被拒绝使用网络。
• • 采用基于 MAC 的接入控制方式时,该端口下的所有接入用户均需要单独认证,当某个用户下线后,也只有该用户无法使用网络。
5.2 802.1x配置
(1)802.1X 需要 AAA 的配合才能实现对用户的身份认证。因此,需要首先完成以下配置任务:
• • 配置802.1X用户所属的ISP认证域及其使用的AAA方案,即本地认证方案或RADIUS方案。
• • 如果需要通过 RADIUS 服务器进行认证,则应该在 RADIUS 服务器上配置相应的用户名和密码。
• • 如果需要本地认证,则应该在设备上手动添加认证的用户名和密码。配置本地认证时,用户使用的服务类型必须设置为 lan-access。
domain bbb
authentication lan-access radius-scheme radiusl local
authorization lan-access radius-scheme radiusl local
accounting lan-access radius-scheme radiusl local
(2)开启 802.1X
只有同时开启全局和端口的 802.1X 后,802.1X 的配置才能在端口上生效。
dot1x //开启802.1X
interfce g1/0/1
dot1x //端口开启dot1x
dot1x mandatory-domain bbb //配置认证域
(3) 配置802.1X认证方法
设备上的 802.1X 系统采用的认证方法与设备对于 EAP 报文的处理机制有关,具体如下:
• • 若指定 authentication-method 为 eap,则表示设备采用 EAP 中继认证方式。该方式下,设备端对客户端发送的 EAP 报文进行中继处理,并能支持客户端与 RADIUS 服务器之间所有类型的 EAP 认证方法。
• • 若指定 authentication-method 为 chap 或 pap,则表示设备采用 EAP 终结认证方式,该方式下,设备端对客户端发送的EAP报文进行本地终结,并能支持与RADIUS服务器之间采用CHAP 或 PAP 类型的认证方法。
dot1x authentication-method {chap|eap|pap} //缺省情况下,设备启用EAP终结方式,并采用CHAP认证方法
(4)配置本地用户
local-user localuser class network
password simple localpass
service-type lan-access
quit
(5)RADIS方案
radius scheme radius1
primary authentication 10.1.1.1
primary accounting 10.1.1.1
key authentication simple name
user-name-format without-domain
6.1MAC地址认证概述
MAC 地址认证是一种基于端口和 MAC 地址对用户的网络访问权限进行控制的认证方法,它不需要用户安装任何客户端软件。设备在启动了MAC地址认证的端口上首次检测到用户的MAC地址以后,即启动对该用户的认证操作。认证过程中,不需要用户手动输入用户名或者密码。若该用户认证成功,则允许其通过端口访问网络资源,否则该用户的 MAC 地址就被设置为静默 MAC。在静默时间内(可通过静默定时器配置),来自此 MAC 地址的用户报文到达时,设备直接做丢弃处理,以防止非法 MAC 短时间内的重复认证。
使用不同用户名格式的MAC地址认证
根据设备最终用于验证用户身份的用户名格式和内容的不同,可以将 MAC 地址认证使用的用户帐户格式分为两种类型:
• • MAC 地址用户名格式:使用用户的 MAC 地址作为认证时的用户名和密码。
• • 固定用户名格式:不论用户的 MAC 地址为何值,所有用户均使用设备上指定的一个固定用户名和密码替代用户的 MAC 地址作为身份信息进行认证。由于同一个端口下可以有多个用户进行认证,因此这种情况下端口上的所有MAC地址认证用户均使用同一个固定用户名进行认证,服务器端仅需要配置一个用户帐户即可满足所有认证用户的认证需求,适用于接入客户端比较可信的网络环境。
6.2 MAC地址认证配置
domain bbb
authentication lan-access local //配置认证方法
mac-authentication //开启全局MAC地址认证
mac-authentication domain bbb //配置使用的ISP域
mac-authentication user-name-format mac-address //配置用户名格式为MAC地址格式
mac-authentication user-name-format fixed [account name] [password {cipher|simple string} ] //配置用户名格式为固定用户名,并配置密码
interface vlan 10
mac-autheniticaton //端口开启MAC地址认证
quit
local-user 00-e0-fc-12-34-56 class network
password simple localpass
service-type lan-access
display mac-authentication
7.1 Portal概述
Portal 在英语中是入口的意思。Portal 认证通常也称为 Web 认证,即通过 Web 页面接受用户输入的用户名和密码,对用户进行身份认证,以达到对用户访问进行控制的目的。在采用了 Portal 认证的组网环境中,未认证用户上网时,接入设备强制用户登录到特定站点,用户可以免费访问其中的服务;当用户需要使用互联网中的其它信息时,必须在 Portal Web 服务器提供的网站上进行 Portal认证,只有认证通过后才可以使用这些互联网中的设备或资源。
Portal的认证方式
Portal 支持三种认证方式:直接认证方式、二次地址分配认证方式和可跨三层认证方式。直接认证方式和二次地址分配认证方式下,认证客户端和接入设备之间没有三层转发设备;可跨三层认证方式下,认证客户端和接入设备之间可以(但不必须)跨接三层转发设备。
(1)直接认证方式
用户在认证前通过手工配置或 DHCP 直接获取一个 IP 地址,只能访问 Portal Web 服务器,以及设定的免认证地址;认证通过后即可访问网络资源。认证流程相对简单。
(2) 二次地址分配认证方式
用户在认证前通过 DHCP 获取一个私网 IP 地址,只能访问 Portal Web 服务器,以及设定的免认证地址;认证通过后,用户会申请到一个公网 IP 地址,即可访问网络资源。该认证方式解决了 IP 地址规划和分配问题,对未认证通过的用户不分配公网 IP 地址。例如运营商对于小区宽带用户只在访问小区外部资源时才分配公网 IP。目前,仅 H3C iNode 客户端支持该认证方式。需要注意的是,IPv6Portal 认证不支持二次地址分配方式。
(3)可跨三层认证方式
和直接认证方式基本相同,但是这种认证方式允许认证用户和接入设备之间跨越三层转发设备。对于以上三种认证方式,IP 地址都是用户的唯一标识。接入设备基于用户的 IP 地址下发 ACL 对接口上通过认证的用户报文转发进行控制。由于直接认证和二次地址分配认证下的接入设备与用户之间未跨越三层转发设备,因此接口可以学习到用户的 MAC 地址,接入设备可以利用学习到 MAC 地址增强对用户报文转发的控制力度。
7.2 Portal认证配置
portal server server-name
ip 10.10.10.1 [key {cipher |simple} string] //配置Portal认证服务器
port port-number //配置配置接入设备主动向Portal认证服务器发送Portal
报文时使用的UDP端口号,缺省为50100
server-type imc //配置Portal认证服务器的类型,缺省为IMC服务器
portal web-server server-name //配置Portal Web服务器
url url-string //指定Portal Web服务器的URL
if-match { original-url url-string redirect-url url-string [ url-param-encryption { aes | des } key { cipher | simple } string ] | user-agent string redirect-url url-string } //配置重定向匹配规则
interface vlan 100 //必须是三层接口
portal enable method {direct | layer3|redhcp }
portal apply web-server server-name //引用Web服务器