CLI举例:基于用户接入方式和终端设备类型的安全策略

组网需求

图1所示,某企业在网络边界处部署了FW作为安全网关,连接内部网络与Internet。具体情况如下:

  • 内部网络中已经部署了Agile Controller身份验证机制,Agile Controller服务器上存储了用户信息。
  • 内部网络中的用户可以使用不同的接入方式(如通过有线或无线接入、通过Portal页面或支持802.1x认证的客户端接入)和不同的终端设备类型(如使用PC、手机等接入)接入认证。

本例中的Agile Controller简称Controller。

图1 配置安全策略组网图
 

企业的网络管理员希望利用FW提供的用户管理与认证机制,将内部网络中的IP地址识别为不同接入方式和不同终端设备类型的用户,并通过配置安全策略,实现基于用户接入方式和终端设备类型的访问控制。具体需求如下:

  • 内部网络中的用户访问业务时无需提前访问Agile Controller的Portal认证页面进行认证,直接访问HTTP业务即可重定向到Agile Controller的Portal认证页面。
  • 内部网络中的用户使用Agile Controller帐号和密码认证通过后,无需再进行认证就可以访问网络资源。
  • 仅允许有线连接下使用电脑通过Portal页面接入的内网用户访问外网。

配置思路

完成用户与认证相关配置:

  1. 在Agile Controller服务器上添加FW,并在FW上配置Agile Controller服务器,使FW能与Agile Controller服务器进行通信。
  2. 在FW上配置服务器导入策略,将Agile Controller服务器上的用户信息导入到FW。
  3. 配置用户访问HTTP业务时重定向认证页面的URL为Agile Controller的Portal认证页面地址。
  4. 配置认证策略,对用户访问Internet进行认证。
  5. 在FW上配置Agile Controller单点登录参数。
  6. 配置认证域中的新用户选项,新用户通过认证后作为临时用户上线到指定用户组中。
  7. 由于FW部署在用户和Agile Controller服务器之间,用户的认证报文经过FW。为实现单点登录功能,需要配置认证策略,对目的地址为Agile Controller服务器的报文不进行认证处理;同时配置安全策略,确保FW和Agile Controller服务器之间能正常通信。
  8. 配置安全策略,确保用户、Agile Controller服务器和FW之间通信正常。

完成基于接入方式和终端设备类型的管控的相关配置:

  1. 配置从Agile Controller服务器导入终端设备到FW。
  2. 配置安全策略,允许接入方式为“有线Portal”,终端类型属于终端设备组“pc”的内网用户访问外网。

数据规划

项目

数据

说明

Agile Controller服务器

  • 名称:auth_server_tsm

  • Agile ControllerIP地址:10.2.0.50

  • 服务器端口:8084

  • 加密算法:AES128
  • 共享密钥:Admin@123

在FW上配置Agile Controller服务器,即FW与Agile Controller服务器通信时使用的一系列参数。

此处设置的参数必须与Agile Controller服务器的参数保持一致。

服务器导入策略

  • 名称:policy_import

  • 服务器类型:Agile Controller

  • 服务器名称:auth_server_tsm

  • 导入类型:仅导入用户到本地

  • 导入到用户组:/default

  • 全量同步:120分钟

  • 当前用户存在时,覆盖本地用户记录

从Agile Controller服务器上将用户导入到FW中。

新用户所属组

新用户通过认证后作为临时用户上线到指定用户组default中。

通过Agile Controller认证的用户对于FW来说都是新用户。

Agile Controller认证页面Portal地址

http://10.2.0.50:8080/portal

该地址与Agile Controller服务器的配置必须保持一致。

Agile Controller单点登录

  • Agile Controller单点登录:启用

  • Agile Controller身份认证通过后允许用户上网

在FW上配置单点登录参数,接收Agile Controller服务器发送的用户登录/注销信息。

导入终端设备

  • 服务器名称:auth_server_tsm
  • 当终端设备类型存在时,覆盖本地记录

只能导入通过Agile Controller单点登录的设备。

安全策略1

  • 名称:policy_sec_tsm
  • 源安全区域:trust
  • 目的安全区域:dmz
  • 源地址/地区:10.3.0.0/24
  • 目的地址/地区:10.2.0.50/32
  • 动作:允许

用于用户到Agile Controller服务器进行认证。

安全策略2

  • 名称:policy_sec_tsm_1
  • 源安全区域:local
  • 目的安全区域:dmz
  • 动作:允许

用于Agile Controller服务器与FW的交互。

安全策略3

  • 名称:policy_sec_tsm_2
  • 源安全区域:dmz
  • 目的安全区域:local
  • 动作:允许

用于Agile Controller服务器与FW的交互。

安全策略4

  • 名称:policy_sec_dns
  • 源安全区域:trust
  • 目的安全区域:untrust
  • 源地址/地区:10.3.0.0/24
  • 服务:DNS
  • 动作:允许

用于允许解析HTTP业务URL地址的DNS报文通过。

安全策略5

  • 名称:policy_sec_user
  • 源安全区域:trust
  • 目的安全区域:untrust
  • 源地址/地区:10.3.0.0/24
  • 接入方式:有线Portal
  • 终端设备:PC
  • 动作:允许

用于允许有线连接下使用电脑通过Portal页面接入的内网用户访问外网。

操作步骤
  1. 在FW上配置接口IP地址和安全区域,完成网络基本参数配置。

    # 配置接口IP地址。
    
    <FW> system-view
    [FW] interface GigabitEthernet 1/0/1
    [FW-GigabitEthernet 1/0/1] ip address 1.1.1.1 24
    [FW-GigabitEthernet 1/0/1] quit
    [FW] interface GigabitEthernet 1/0/2
    [FW-GigabitEthernet 1/0/2] ip address 10.2.0.1 24
    [FW-GigabitEthernet 1/0/2] quit
    [FW] interface GigabitEthernet 1/0/3
    [FW-GigabitEthernet 1/0/3] ip address 10.3.0.1 24
    [FW-GigabitEthernet 1/0/3] quit
    # 配置接口加入相应安全区域。
    
    [FW] firewall zone trust
    [FW-zone-trust] add interface GigabitEthernet 1/0/3
    [FW-zone-trust] quit
    [FW] firewall zone dmz
    [FW-zone-dmz] add interface GigabitEthernet 1/0/2 
    [FW-zone-dmz] quit
    [FW] firewall zone untrust
    [FW-zone-untrust] add interface GigabitEthernet 1/0/1
    [FW-zone-untrust] quit

  2. 配置安全策略,确保用户、Agile Controller服务器和FW之间通信正常。
    配置用户所在安全区域Trust到Agile Controller服务器所在安全区域DMZ的安全策略,用于用户到Agile Controller服务器进行认证。
    
    
    [FW] security-policy
    [FW-policy-security] rule name policy_sec_tsm
    [FW-policy-security-rule-policy_sec_tsm] source-zone trust
    [FW-policy-security-rule-policy_sec_tsm] source-address 10.3.0.0 24
    [FW-policy-security-rule-policy_sec_tsm] destination-zone dmz
    [FW-policy-security-rule-policy_sec_tsm] destination-address 10.2.0.50 32
    [FW-policy-security-rule-policy_sec_tsm] action permit
    [FW-policy-security-rule-policy_sec_tsm] quit
    如果认证页面URL是域名形式,并且DMZ安全区域存在用于解析认证页面域名的DNS服务器,则注意开放Trust到DMZ的DNS服务。
    
    
    
    配置Agile Controller服务器所在安全区域DMZ到Local域的安全策略,用于Agile Controller服务器与FW的交互。
    
    
    [FW-policy-security] rule name policy_sec_tsm_1
    [FW-policy-security-rule-policy_sec_tsm_1] source-zone local
    [FW-policy-security-rule-policy_sec_tsm_1] destination-zone dmz
    [FW-policy-security-rule-policy_sec_tsm_1] action permit
    [FW-policy-security-rule-policy_sec_tsm_1] quit
    [FW-policy-security] rule name policy_sec_tsm_2
    [FW-policy-security-rule-policy_sec_tsm_2] source-zone dmz
    [FW-policy-security-rule-policy_sec_tsm_2] destination-zone local
    [FW-policy-security-rule-policy_sec_tsm_2] action permit
    [FW-policy-security-rule-policy_sec_tsm_2] quit
    
    
    配置用户所在安全区域Trust到Internet所在安全区域Untrust的安全策略,允许解析HTTP业务URL地址的DNS报文通过。
    
    
    [FW-policy-security] rule name policy_sec_dns
    [FW-policy-security-rule-policy_sec_dns] source-zone trust
    [FW-policy-security-rule-policy_sec_dns] source-address 10.3.0.0 24
    [FW-policy-security-rule-policy_sec_dns] destination-zone untrust
    [FW-policy-security-rule-policy_sec_dns] service dns
    [FW-policy-security-rule-policy_sec_dns] action permit
    [FW-policy-security-rule-policy_sec_dns] quit
    [FW-policy-security] quit
    注意开放Trust到Untrust的DNS服务,允许解析HTTP业务域名的DNS报文通过。

  3. 在Agile Controller服务器上添加FW。

    因Agile Controller会随版本更新,本举例中的Agile Controller配置仅供参考,实际配置请参见Agile Controller的配置手册。

    选择“系统 > 服务器配置 > 上网行为管理设备配置”,单击“增加”,按如下参数配置。完成后单击“确定”。

    当FW工作在双机热备场景下,需要在Agile Controller服务器上进行两次“上网行为管理设备配置”,此处的“IP地址”需要分别配置为与Agile Controller服务器连接的主备设备接口的实IP地址。

  4. 在FW上配置Agile Controller服务器。

    此处设置的参数必须与Agile Controller服务器上的参数保持一致。一般情况下Agile Controller的服务器端口是8084。

    [FW] tsm-server template auth_server_tsm 
    [FW-tsm-auth_server_tsm] tsm-server ip-address 10.2.0.50
    [FW-tsm-auth_server_tsm] tsm-server port 8084
    [FW-tsm-auth_server_tsm] tsm-server encryption-mode aes128 shared-key Admin@123
    [FW-tsm-auth_server_tsm] test tsm-server template auth_server_tsm
    [FW-tsm-auth_server_tsm] quit

  5. 在FW上配置服务器导入策略。

    [FW] user-manage import-policy policy_import from tsm
    [FW-import-policy_import] server template auth_server_tsm
    [FW-import-policy_import] server basedn root  
    [FW-import-policy_import] destination-group /default 
    [FW-import-policy_import] import-type user   
    [FW-import-policy_import] import-override enable 
    [FW-import-policy_import] time-interval 120

  6. 执行导入策略将用户导入FW。

    [FW] execute user-manage import-policy policy_import

  7. 配置Portal认证页面。

    [FW] user-manage portal-template portal
    [FW-portal-template-portal] portal-url http://10.2.0.50:8080/portal
    Portal URL需要与Controller实际使用的认证页面保持一致。

  8. 配置用户访问Internet的认证策略认证动作为Portal认证,使用户访问HTTP业务的流量触发认证。配置用户访问Agile Controller服务器的认证策略动作为不认证,使用户认证报文能经过FW到达Agile Controller服务器。

    [FW] auth-policy
    [FW-policy-auth] rule name auth_policy_tsm
    [FW-policy-auth-rule-auth_policy_tsm] source-zone trust
    [FW-policy-auth-rule-auth_policy_tsm] destination-zone dmz 
    [FW-policy-auth-rule-auth_policy_tsm] source-address 10.3.0.0 24
    [FW-policy-auth-rule-auth_policy_tsm] destination-address 10.2.0.50 32
    [FW-policy-auth-rule-auth_policy_tsm] action none
    [FW-policy-auth-rule-auth_policy_tsm] quit
    [FW-policy-auth] rule name auth_policy_service
    [FW-policy-auth-rule-auth_policy_service] source-zone trust
    [FW-policy-auth-rule-auth_policy_service] destination-zone untrust
    [FW-policy-auth-rule-auth_policy_service] source-address 10.3.0.0 24
    [FW-policy-auth-rule-auth_policy_service] action auth portal-template portal

  9. 在FW上配置单点登录参数。

    [FW] user-manage single-sign-on tsm
    [FW-sso-tsm] enable

  10. 配置认证域中的新用户选项。

    [FW] aaa
    [FW-aaa] domain default
    [FW-aaa-domain-default] service-type internetaccess
    [FW-aaa-domain-default] new-user add-temporary group /default
    [FW-aaa-domain-default] quit
    [FW-aaa] quit

  11. 在Agile Controller服务器上开启终端设备识别功能。

    选择“资源 > 终端 > 参数配置”,在“终端设备识别”选中“启用”。

  12. 配置从Agile Controller服务器导入终端设备,以便在安全策略中引用。

    [FW] update device-category tsm-server template auth_server_tsm import-overwrite

    只能导入通过Agile Controller单点登录的设备。

  13. 配置安全策略,允许接入方式为“有线Portal”,终端类型属于终端设备组“pc”的内网用户访问外网。

     
    [FW] security-policy
    [FW-policy-security] rule name policy_sec_user
    [FW-policy-security-rule-policy_sec_user] source-zone trust
    [FW-policy-security-rule-policy_sec_user] destination-zone untrust
    [FW-policy-security-rule-policy_sec_user] source-address 10.3.0.0 24
    [FW-policy-security-rule-policy_sec_user] access-authentication wired-portal
    [FW-policy-security-rule-policy_sec_user] device-classification device-group pc
    [FW-policy-security-rule-policy_sec_user] action permit
    [FW-policy-security-rule-policy_sec_user] quit

结果验证
  • 在FW上执行命令display user-manage user可以查看到用户信息。
  • 在FW上执行命令display user-manage online-user可以查看到在线用户的信息。
  • 内网用户有线连接下使用电脑通过浏览器访问外网,通过Portal页面认证成功后可以访问外网。其他条件下均无法访问外网,如下表所示。
    表1 内网用户访问外网结果验证

    设备

    有线802.1x

    无线802.1x

    有线Portal

    无线Portal

    电脑

    N

    N

    Y

    N

    其他终端设备类型

    N

    N

    N

    N

    • “Y”代表可以访问外网,“N”代表不能访问外网。
    • 有线802.1x代表有线连接下通过支持802.1x认证的客户端接入;无线802.1x代表无线连接下通过支持802.1x认证的客户端接入;有线Portal代表有线连接下通过Portal页面接入;无线Portal代表无线连接下通过Portal页面接入。

配置脚本
#
 sysname FW
# 
 user-manage single-sign-on tsm
  enable
 user-manage portal-template portal 0
  portal-url http://10.2.0.50:8080/portal
#
tsm-server template auth_server_tsm 
 tsm-server encryption-mode aes128 shared-key %$%$|5<h@/062'gA|%:9CO.2/JA8%$%$
 tsm-server ip-address 10.2.0.50
#                                                                               
interface GigabitEthernet1/0/1                                                  
 ip address 1.1.1.1 255.255.255.0                                        
#                                                                               
interface GigabitEthernet1/0/2                                                  
 ip address 10.2.0.1 255.255.255.0                                        
#                                                                               
interface GigabitEthernet1/0/3                                                  
 ip address 10.3.0.1 255.255.255.0                                        
#                                                                               
firewall zone trust                                                             
 add interface GigabitEthernet1/0/3                                             
#                                                                               
firewall zone untrust                                                           
 add interface GigabitEthernet1/0/1                                             
#                                                                               
firewall zone dmz                                                           
 add interface GigabitEthernet1/0/2          
#                                                                               
security-policy
 rule name policy_sec_tsm  
  source-zone trust 
  destination-zone dmz
  source-address 10.3.0.0 24
  destination-address 10.2.0.50 32
  action permit
 rule name policy_sec_dns  
  source-zone trust 
  destination-zone untrust
  source-address 10.3.0.0 24
  service dns
  action permit
 rule name policy_sec_tsm_1
  source-zone local
  destination-zone dmz
  action permit 
 rule name policy_sec_tsm_2
  source-zone dmz
  destination-zone local
  action permit 
 rule name policy_sec_user
  source-zone trust
  destination-zone untrust
  source-address 10.3.0.0 24
  access-authentication wired-portal
  device-classification device-group pc
  action permit 
#
auth-policy
 rule name auth_policy_tsm
  source-zone trust
  destination-zone dmz 
  source-address 10.3.0.0 24
  destination-address 10.2.0.50 32
  action none
 rule name auth_policy_service
  source-zone trust
  destination-zone untrust
  source-address 10.3.0.0 24
  action auth portal-template portal
#
 user-manage import-policy policy_import from tsm    
 server template auth_server_tsm         
 server basedn root  
 destination-group /default 
 import-type user   
 import-override enable 
 time-interval 120
# 
aaa
 domain default   
  service-type internetaccess
  new-user add-temporary group /default

# 以下配置为一次性操作,不保存在配置文件中
 execute user-manage import-policy policy_import
 update device-category tsm-server template auth_server_tsm import-overwrite 
 test tsm-server template auth_server_tsm

相关推荐

  1. 通过 CLI 引入方式使用 React:基础入门

    2024-04-29 09:38:01       16 阅读
  2. azure cli安装使用

    2024-04-29 09:38:01       8 阅读
  3. 提升用户体验UUID设计策略

    2024-04-29 09:38:01       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-29 09:38:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-29 09:38:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-29 09:38:01       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-29 09:38:01       20 阅读

热门阅读

  1. emacs/tmux 常用快捷键

    2024-04-29 09:38:01       10 阅读
  2. MQTT学习

    2024-04-29 09:38:01       11 阅读
  3. EasyDarwin录像存储

    2024-04-29 09:38:01       11 阅读
  4. HCIP-Datacom-ARST必选题库_堆叠【道题】

    2024-04-29 09:38:01       10 阅读
  5. PHP学习笔记

    2024-04-29 09:38:01       11 阅读
  6. MySQL中的索引及怎么使用

    2024-04-29 09:38:01       9 阅读
  7. 【Flask开发实战】蓝图与子域名

    2024-04-29 09:38:01       10 阅读
  8. http请求内容

    2024-04-29 09:38:01       10 阅读
  9. FaceDiffuser 部署笔记

    2024-04-29 09:38:01       10 阅读
  10. Gateway

    Gateway

    2024-04-29 09:38:01      12 阅读