07-用户身份识别与管理配置
本章节下载: 07-用户身份识别与管理配置 (276.14 KB)
通过用户身份识别与管理功能,设备可以将网络流量的IP地址识别为用户,并基于用户进行网络访问控制。此功能便于网络管理员基于用户进行安全策略的制定,以及基于用户进行网络攻击行为以及流量的统计和分析,解决了用户IP地址变化带来的策略控制问题。
基于用户身份的访问控制流程主要包括如下步骤:
(1) 用户身份认证:网络接入用户完成身份验证,并成为在线用户。
(2) 用户身份识别:设备记录在线用户的用户名和IP地址等信息,并与本地的身份识别用户账户和身份识别用户组进行关联,实现IP地址和用户的映射。管理员也可以直接配置用户和IP地址的映射关系,便于无需认证的网络接入用户使用。
(3) 安全策略执行:在线用户访问网络服务时,设备识别出用户流量的源IP地址,并根据已建立IP地址和用户的映射关系解析出对应的用户名以及所属的用户组,然后按照安全特性(用户黑名单、对象组等)对用户/用户组的策略配置,对该用户的网络访问权限进行控制。
设备上的所有身份识别用户按树形结构组织:
· 每个身份识别用户可以隶属于一个或多个身份识别用户组;
· 每个身份识别用户组可以隶属于一个或多个更高结构层次的身份识别用户组;
· 每个身份识别用户以及身份识别用户组可以隶属于一个域或不属于任何域,该域称为身份识别域。身份识别域是整个用户身份识别管理架构中最高级别的管理单元。设备通过域名和用户名的组合,以及域名和用户组名的组合唯一标识一个被管理对象。
这种树形组织结构易于管理员查询、定位,是企业内常用的用户组织方式。网络管理员可以根据企业的组织结构在设备上管理身份识别用户组和身份识别用户,分别对应不同管理级别的部门和员工,如图1-1所示:
身份识别用户账户用于存储和管理不同来源的网络接入用户身份信息,包括用户名、用户组名以及所属身份识别域名。设备上,不同来源的身份识别用户账户被身份识别模块统一管理。
目前,支持以下几种方式生成身份识别用户账户:
· 从本地用户数据库学习:用户身份识别模块学习设备上的网络接入类本地用户信息,将其保存为身份识别用户账户。关于网络接入类本地用户的详细介绍请参见“安全配置指导”中的“AAA”。
· 从CSV文件中导入:管理员将记录了用户信息的CSV文件导入到设备中,实现批量创建身份识别用户账户。
· 从第三方服务器导入:通过向第三方服务器发起用户信息请求,将服务器上的网络接入用户账户信息直接导入本地,并生成对应的身份识别用户账户。如果实际网络环境中的用户信息存放在第三方认证服务器上,则可采用此方式统一管理。支持的第三方服务器包括LDAP服务器和H3C iMC的RESTful服务器。
身份识别用户账户将会由于以下原因被删除:
· 管理员通过命令行删除身份识别用户账户。
· 本地用户数据库中删除某网络接入类本地用户之后,用户身份识别模块会同步删除对应的身份识别用户账户。
通过用户身份识别模块管理的网络接入类(包括Portal、PPP、IPoE类型)在线用户,被称为在线身份识别用户。设备记录的在线身份识别用户信息可包括用户名、身份识别域名、IP地址、MAC地址等。
在线身份识别用户有以下两种来源:
· 动态生成:
¡ 在本设备接入,且通过本地认证或远程服务器认证的在线网络接入用户。用户上线后,用户身份识别模块会在本地身份识别用户账户中查询该用户名和域名对应的表项,如果查询成功,则会生成一条在线身份识别用户表项。
¡ 从第三方服务器上导入的在线网络接入用户。导入在线用户信息时,用户身份识别模块会在本地身份识别用户账户中查询用户名和域名对应的表项,如果查询成功,则会生成对应的在线身份识别用户表项。可采用此方式将第三方服务器上的所有在线用户信息(包括其它设备上的在线用户信息)导入到本机进行统一管理和监控。支持的第三方服务器为H3C iMC的RESTful服务器。
· 静态配置:网络管理员手工配置静态类型的身份识别用户表项,它记录用户名和IP地址的绑定关系。一个静态类型的身份识别用户表项创建后,用户身份识别模块会在本地身份识别用户账户中查询该用户名和域名对应的表项,如果查询成功,则会生成一条静态类型的在线身份识别用户表项。一些组网需求下,例如有少量指定人员临时接入网络时,网络管理员希望这些用户无需进行认证也能够在安全特性的管理下访问网络,则可以通过配置静态类型的身份识别用户满足该需求。
在线身份识别用户可被应用模块引用进行相关安全策略的处理。在线身份识别用户表项被删除后,用户身份识别模块将通知应用模块停止该用户相关的业务处理。
在线身份识别用户表项将会由于以下原因被删除:
· 管理员通过命令行删除在线身份识别用户表项。
· 本设备接入的用户下线后,接入模块通知用户身份识别模块删除对应的在线身份识别用户表项。
· 设备重启后,所有动态类型的在线身份识别用户表项均被删除。
· 用户身份识别功能关闭,所有在线身份识别用户表项均被删除。
· 第三方服务器上用户下线时,服务器会主动通知设备删除相应的在线身份识别用户表项。
在用户身份识别业务中,可以将用户加入到组中进行批量配置和层级式管理,这样的组称为身份识别用户组。设备上,不同来源的身份识别用户组被用户身份识别模块统一管理。
目前,支持以下几种方式生成身份识别用户组:
· 从本地用户数据库学习:当设备上创建本地用户组时,会通知用户身份识别模块生成相应的身份识别用户组。关于本地用户组的详细介绍请参见“安全配置指导”中的“AAA”。
· 从CSV文件中导入:设备在从CSV文件中导入身份识别用户账户的同时,可以根据管理员的配置自动生成相应的身份识别用户组。
· 从第三方服务器导入:设备在从第三方服务器上导入身份识别用户账户的同时,会根据账户中的组信息自动生成相应的身份识别用户组。
身份识别用户组被应用模块引用之后,该用户组将处于激活状态,所有基于该组的业务将会生效。当应用模块取消对该身份识别用户组的引用,该身份识别用户组将处于非激活状态。
身份识别用户组将会由于以下原因被删除:
· 管理员通过命令行删除身份识别用户组。
· 本地用户数据库中删除本地用户组之后,用户身份识别模块会同步删除对应的身份识别用户组。
本特性支持的H3C iMC的RESTful服务器必须为支持SSM组件的iMC PLAT 7.0 (E0201)及其补丁版本。
本特性不支持对基于MAC地址的快速认证Portal用户的身份识别与管理。关于基于MAC地址的快速认证的详细介绍,请参见“安全配置指导”中的“Portal”。
表1-1 用户身份识别配置任务简介
配置任务 |
说明 |
详细配置 |
|
开启用户身份识别功能 |
必选 |
||
配置服务器身份识别用户导入策略 |
配置RESTful服务器 |
可选 RESTful服务器和LDAP方案的配置由实际组网环境中的第三方服务器部署情况决定 |
|
配置LDAP方案 |
|||
配置身份识别用户导入策略 |
|||
管理身份识别用户账户 |
可选 |
||
管理在线身份识别用户 |
可选 |
||
管理身份识别用户组 |
可选 |
开启用户身份识别功能后,用户身份识别模块才会与接入模块(包括PPP、Portal、IPoE)以及应用模块一起联动实现基于用户身份的访问控制。
表1-2 开启用户身份识别功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启用户身份识别功能 |
user-identity enable |
缺省情况下,用户身份识别功能处于关闭状态 |
若要从第三方服务器导入身份识别用户账户、在线身份识别用户或身份识别用户组,则需要配置服务器身份识别用户导入策略,该策略主要用于设置连接RESTful服务器和LDAP服务器的相关参数。
RESTful服务器视图中定义了RESTful服务器的相关参数,包括登录账户和服务器URI。设备与RESTful服务器成功建立连接之后,可以从该服务器上手工或定期导入身份识别用户账户和在线身份识别用户信息。
表1-3 配置RESTful服务器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建RESTful服务器,并进入RESTful服务器视图 |
user-identity restful-server server-name |
缺省情况下,不存在RESTful服务器 系统中仅能存在一个RESTful服务器 |
配置登录到RESTful服务器所需的用户名和密码 |
login-name user-name password { cipher | simple } string |
缺省情况下,未配置登录到RESTful服务器所需的用户名和密码 指定的用户名和密码必须是RESTful服务器上已存在的,否则无法与RESTful服务器建立连接 |
指定RESTful服务器的URI |
uri { get-online-user | get-user-database | get-user-group-database | put-offline-user | put-online-user } uri-string |
缺省情况下,未指定RESTful服务器的URI 指定的URI必须与RESTful服务器上提供各类用户资源服务的URI保持一致,否则将会导致用户信息交互失败 |
LDAP方案中定义了LDAP认证服务器的相关参数,主要包括服务器IP地址、与LDAP服务器建立连接所使用的管理员DN和密码、以及DN查询策略。设备与LDAP服务器成功建立连接之后,管理员可以从该服务器上导入身份识别用户账户。如果需要同时导入身份识别用户组信息,则还需在LDAP方案中引用用户组类型的LDAP属性映射表项。LDAP方案的详细介绍以及具体配置请参见“安全配置指导”中的“AAA”。
目前,系统不支持从LDAP服务器上导入在线身份识别用户。
表1-4 配置身份识别用户导入策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建身份识别用户导入策略,并进入身份识别用户导入策略视图 |
user-identity user-import-policy policy-name |
缺省情况下,不存在身份识别用户导入策略 系统中仅能存在一个身份识别用户导入策略。如需修改当前策略,请先删除该策略 |
指定RESTful服务器 |
restful-server server-name |
缺省情况下,未指定RESTful服务器 只能指定一个RESTful服务器。如需指定其它的RESTful服务器,请先删除已指定的RESTful服务器 |
指定LDAP方案 |
ldap-scheme ldap-scheme-name |
缺省情况下,未指定LDAP方案 最多可指定16个LDAP方案 |
(可选)配置自动导入身份识别用户账户的周期 |
account-update-interval interval |
缺省情况下,自动导入身份识别用户账户的周期为24小时 |
开启指定策略的身份识别用户账户自动导入功能后,设备首先会从该策略指定的服务器上导入所有身份识别用户账户和所有在线身份识别用户信息,然后定期从该服务器上自动导入身份识别用户账户(导入周期由account-update-interval命令配置)。
表1-5 开启身份识别用户账户自动导入功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启身份识别用户账户自动导入功能 |
user-identity user-account auto-import policy policy-name |
缺省情况下,身份识别用户自动账户导入功能处于关闭状态 如果开启此功能时,用户身份识别功能处于关闭状态,则仅能从服务器上导入身份识别用户账户 |
可以通过执行本命令向第三方服务器发起用户信息请求,将服务器上的网络接入用户账户信息直接导入本地,并生成对应的身份识别用户账户。在导入过程中,若某个账户导入失败,则跳过该账户,继续导入。
表1-6 导入服务器上的身份识别用户账户
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
导入服务器上的身份识别用户账户 |
user-identity user-account import policy policy-name |
指定的身份识别用户导入策略必须已经存在,且必须指定了有效的RESTful服务器的URI或LDAP服务器IP地址 |
可以通过执行本命令从CSV文件中导入身份识别用户账户。在导入过程中,若某个账户导入失败,则立即停止导入。
表1-7 导入CSV文件中的身份识别用户账户
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
从CSV文件中导入身份识别用户账户 |
user-identity user-account import url url-string [ auto-create-group | override | start-line line-number ] * |
合法的CSV文件需要遵循一定格式,具体格式要求可查看由user-identity user-account export url命令导出的标准模板 |
可以通过执行本命令将设备上的身份识别用户账户导出到一个CSV文件中保存。若执行本命令时指定了template参数,则导出一个标准的CSV文件模板,此模板可用于指导管理员编辑符合设备要求的CSV文件。
表1-8 导出身份识别用户账户
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
将身份识别用户账户导出到CSV文件 |
user-identity user-account export url url-string [ { domain domain-name | null-domain } [ user user-name ] | template ] |
导出的CSV文件可直接或在编辑之后用于导入到本设备或其它设备上使用 |
可以通过执行本命令删除从服务器或者从CSV文件导入的身份识别用户账户。从本地用户数据库学习到的身份识别用户账户不能通过该命令删除。
表1-9 删除身份识别用户账户
操作 |
命令 |
说明 |
删除身份识别用户账户 |
reset user-identity user-account { all | { domain domain-name | null-domain } [ name user-name ] } |
本命令在用户视图下执行 |
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置静态类型的身份识别用户 |
user-identity static-user user-name [ domain domain-name ] bind { ipv4 ipv4-address | ipv6 ipv6-address } [ mac mac-address ] |
缺省情况下,不存在静态类型的身份识别用户 一个用户名可以绑定多个IP地址或者多个IP地址和MAC地址的组合,但同一个IP地址或者IP地址和MAC地址的组合不能被多个用户名绑定 |
设备创建一条在线身份识别用户表项之前,首先检查该用户是否能够匹配上本地的身份识别用户账户,如果能够匹配上,才会生成对应的在线身份识别用户表项。本功能来用来配置设备采用哪种用户名格式去匹配身份识别用户账户。
表1-11 配置在线用户身份识别的用户名匹配模式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置在线用户身份识别的用户名匹配模式 |
user-identity online-user-name-match { keep-original | with-domain | without-domain } |
缺省情况下,在线用户身份识别的用户名匹配模式为keep-original |
可以通过执行本命令向指定的第三方服务器实时发起在线用户请求,实现导入服务器上当前所有在线用户信息的目的。目前,仅支持从H3C iMC的RESTful服务器上导入在线身份识别用户。
表1-12 导入服务器上的在线身份识别用户
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
导入服务器上的在线身份识别用户 |
user-identity online-user import policy policy-name |
指定的身份识别用户导入策略必须已经存在,且必须指定了有效的RESTful服务器的URI 若未开启用户身份识别功能,则本命令执行失败 |
可以通过执行以下命令删除从服务器导入的动态在线身份识别用户,以及通过匹配静态身份识别用户表项生成的静态在线身份识别用户。
表1-13 删除在线身份识别用户
操作 |
命令 |
说明 |
删除动态在线身份识别用户 |
reset user-identity dynamic-online-user { all | { domain domain-name | null-domain } [ name user-name ] | { ip ipv4-address | ipv6 ipv6-address } [ mac mac-address ] } |
本命令在用户视图下执行 |
进入系统视图 |
system-view |
- |
删除静态在线身份识别用户 |
undo user-identity static-user [ domain domain-name ] [ bind { ipv4 ipv4-address | ipv6 ipv6-address } [ mac mac-address ] ] |
- |
可以通过执行本命令删除从服务器或者从CSV文件导入的身份识别用户组。从本地用户数据库学习到的身份识别用户组不能通过该命令删除。
表1-14 删除身份识别用户组
操作 |
命令 |
说明 |
删除身份识别用户组 |
reset user-identity user-group { all | { domain domain-name | null-domain } [ name group-name ] } |
本命令在用户视图下执行 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后用户身份识别与管理的运行情况,通过查看显示信息验证配置的效果。
表1-15 用户身份识别与管理显示和维护
操作 |
命令 |
显示RESTful服务器配置 |
display user-identity restful-server [ server-name ] |
显示身份识别用户导入策略 |
display user-identity user-import-policy [ policy-name ] |
显示指定的身份识别用户或身份识别用户组 |
display user-identity { domain domain-name | null-domain } { user [ user-name [ group ] ] | user-group [ group-name [ member { group | user } ] ] } |
显示所有身份识别用户或身份识别用户组 |
display user-identity all { user | user-group } |
显示在线身份识别用户 |
display user-identity online-user { domain domain-name | null-domain } name user-name |
显示激活的身份识别用户组 |
display user-identity active-user-group { all | domain domain-name | null-domain } |
如图1-2所示组网环境中,管理员要求用户不需要经过身份认证即可通过设备访问网络,但其网络访问权限需要接受对象策略的控制。具体要求为:IP地址为1.2.3.4、MAC地址为0001-0001-0001、用户名为usera的用户只有在工作日才可以访问外部网络。
(1) 配置接口IP地址、路由保证网络可达,具体配置步骤略
(2) 配置用户身份识别
# 创建网络接入类本地用户usera。
<Device> system-view
[Device] local-user usera class network
[Device-luser-network-usera] quit
# 配置一个静态类型的身份识别用户:IP地址为1.2.3.4,MAC地址为0001-0001-0001、用户名为usera。
[Device] user-identity static-user usera bind ipv4 1.2.3.4 mac 0001-0001-0001
# 开启用户身份识别功能。
[Device] user-identity enable
(3) 配置对象策略及规则
# 创建名为work的时间段,其时间范围为每周工作日的8点到18点。
[Device] time-range work 08:00 to 18:00 working-day
# 创建名为ipgroup1的IP地址对象组,并定义网络用户名称为usera。
[Device] object-group ip address ipgroup1
[Device-obj-grp-ip-ipgroup1] network user usera
[Device-obj-grp-ip-ipgroup1] quit
# 制订只允许用户在工作时间访问外部网络的对象策略ippolicy1。
[Device] object-policy ip ippolicy1
[Device-obj-policy-ip-ippolicy1] rule pass source-ip ipgroup1 time-range work
[Device-obj-policy-ip-ippolicy1] quit
(4) 配置安全域间实例并应用对象策略
# 创建名为trust的安全域,并将接口GigabitEthernet1/0/1加入该安全域中。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
# 创建名为untrust的安全域,并将接口GigabitEthernet1/0/2入该安全域中。
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
# 创建源安全域trust到目的安全域untrust的安全域间实例,并应用对象策略ippolicy1。
[Device] zone-pair security source trust destination untrust
[Device-zone-pair-security-Trust-Untrust] object-policy apply ip ippolicy1
[Device-zone-pair-security-Trust-Untrust] quit
以上配置完成后,当IP地址为1.2.3.4、MAC地址为0001-0001-0001的用户接入网络后,可通过如下显示命令查看静态类型的在线身份识别用户信息。该用户只有在工作日才可以访问外部网络。
[Device] display user-identity online-user null-domain name usera
User name: usera
IP : 1.2.3.4
MAC : 0001-0001-0001
Type: Static
Total 1 records matched.
如图1-3所示组网环境中,要求设备对Portal用户进行身份识别和访问控制。具体要求如下:
· 采用一台Portal服务器承担Portal认证服务器和Portal Web服务器的职责。
· 采用RADIUS服务器作为认证/计费服务器。
· 用户通过DHCP获取的公网IP地址进行Portal认证。
· 对所有Portal在线用户进行身份识别和基于组的访问控制,要求它们只有在工作日才可以访问外部网络。
图1-3 Portal用户的身份识别与管理配置组网图
(1) 配置接口IP地址、路由保证网络可达,具体配置步骤略
(2) 配置Portal认证
完成Portal认证相关的所有配置,保证用户Host A、Host B、Host C分别使用用户名usera、userb、userc正常通过Portal认证。Portal认证详细配置请参见“安全配置指导”中的“Portal”,具体配置步骤略。
(3) 配置用户身份识别
# 创建网络接入类本地用户usera、userb、userc。
<Device> system-view
[Device] local-user usera class network
[Device-luser-network-usera] quit
[Device] local-user userb class network
[Device-luser-network-userb] quit
[Device] local-user userc class network
[Device-luser-network-userc] quit
# 创建本地用户组group1。
[Device] user-group group1
# 将本地用户usera、userb、userc加入用户组group1。
[Device-ugroup-group1] identity-member user usera
[Device-ugroup-group1] identity-member user userb
[Device-ugroup-group1] identity-member user userc
[Device-ugroup-group1] quit
# 开启用户身份识别功能。
[Device] user-identity enable
(4) 配置对象策略及规则
# 创建名为work的时间段,其时间范围为每周工作日的8点到18点。
[Device] time-range work 08:00 to 18:00 working-day
# 创建名为ipgroup1的IP地址对象组,并定义网络用户组名称为group1。
[Device] object-group ip address ipgroup1
[Device-obj-grp-ip-ipgroup1] network user-group group1
[Device-obj-grp-ip-ipgroup1] quit
# 制订只允许用户在工作时间访问外部网络的对象策略ippolicy1。
[Device] object-policy ip ippolicy1
[Device-obj-policy-ip-ippolicy1] rule pass source-ip ipgroup1 time-range work
[Device-obj-policy-ip-ippolicy1] quit
(5) 配置安全域间实例并应用对象策略
# 创建名为zone1的安全域,并将接口GigabitEthernet1/0/1加入该安全域中。
[Device] security-zone name zone1
[Device-security-zone-zone1] import interface gigabitethernet 1/0/1
[Device-security-zone-zone1] quit
# 创建名为zone2的安全域,并将接口GigabitEthernet1/0/2入该安全域中。
[Device] security-zone name untrust
[Device-security-zone-zone2] import interface gigabitethernet 1/0/2
[Device-security-zone-zone2] quit
# 创建源安全域zone1到目的安全域zone2的安全域间实例,并应用对象策略ippolicy1。
[Device] zone-pair security source zone1 destination zone2
[Device-zone-pair-security-zone1-zone2] object-policy apply ip ippolicy1
[Device-zone-pair-security-zone1-zone2] quit
以上配置完成后,可通过如下显示命令查看身份识别用户组group1的所有身份成员信息。
[Device] display user-group name group1 identity-member all
Total 1 user groups matched.
User group: group1
Identity groups: 0
Identity users: 3
User ID Username
0x1 usera
0x2 userb
0x3 userc
当有Portal用户成功上线,可通过如下显示命令查看当前的在线身份识别用户信息。
[Device] display user-identity online-user null-domain name usera
User name: usera
IP : 2.2.2.2
MAC : 0001-0002-0003
Type: Dynamic
Total 1 records matched
以上显示信息中查看到的用户将会受到对象策略的控制,只有在工作日才可以访问外部网络。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!