一、组网需求分析
目标
通过防火墙实现访问控制,在 8:00~17:00 禁止IP为 10.1.1.2、10.2.1.2 的PC访问 Server1(TCP 8888)和Server2(UDP 6666),其他PC无限制。
核心配置点
接口与安全区域、地址对象、时间段、自定义服务、安全策略规则。
二、配置步骤
步骤 1
进入系统视图并修改设备名称
#从用户视图进入系统视图,以便进行系统级别的配置
[HUAWEI] system-view
# 将设备名称修改为 shaiops
[HUAWEI] sysname shaiops
步骤 2
配置接口IP地址并加入安全区域
配置GE0/0/1接口(加入DMZ区域)
# 进入GE0/0/1接口视图,准备对该接口进行配置
[shaiops] interface ge 0/0/1
# 关闭该接口的二层交换功能,使其工作在三层模式
[shaiops-GE0/0/1] undo portswitch
# 为 GE0/0/1 接口配置IP地址和子网掩码
[shaiops-GE0/0/1] ip address 10.2.0.1 24
# 退出 GE0/0/1 接口视图
[shaiops-GE0/0/1] quit
# 进入 DMZ 安全区域视图,用于配置该区域的相关策略
[shaiops] firewall zone dmz
# 将 GE0/0/1 接口添加到DMZ安全区域
[shaiops-zone-dmz] add interface ge 0/0/1
# 退出 DMZ 安全区域视图
[shaiops-zone-dmz] quit
配置GE0/0/2接口(加入Trust区域)
# 进入GE0/0/2接口视图
[shaiops] interface ge 0/0/2
# 关闭该接口的二层交换功能,使其工作在三层模式
[shaiops-GE0/0/2] undo portswitch
# 为 GE0/0/2 接口配置IP地址和子网掩码
[shaiops-GE0/0/2] ip address 10.1.1.1 24
# 退出 GE0/0/2 接口视图
[shaiops-GE0/0/2] quit
# 进入 Trust 安全区域视图
[shaiops] firewall zone trust
# 将 GE0/0/2 接口添加到Trust安全区域
[shaiops-zone-trust] add interface ge 0/0/2
# 退出 Trust 安全区域视图
[shaiops-zone-trust] quit
配置GE0/0/3接口(加入Trust区域)
# 进入GE0/0/3接口视图
[shaiops] interface ge 0/0/3
# 关闭该接口的二层交换功能,使其工作在三层模式
[shaiops-GE0/0/3] undo portswitch
# 为 GE0/0/3 接口配置IP地址和子网掩码
[shaiops-GE0/0/3] ip address 10.2.1.1 24
# 退出 GE0/0/3 接口视图
[shaiops-GE0/0/3] quit
# 再次进入 Trust 安全区域视图
[shaiops] firewall zone trust
# 将 GE0/0/3 接口添加到Trust安全区域
[shaiops-zone-trust] add interface ge 0/0/3
# 退出 Trust 安全区域视图
[shaiops-zone-trust] quit
步骤 3
配置地址对象
# 创建一个名为server_deny的地址对象集,类型为对象
[shaiops] ip address-set server_deny type object
# 向server_deny地址对象集中添加IP地址 10.1.1.2,子网掩码为 32 位
[shaiops-object-address-set-server_deny] address 0 10.1.1.2 mask 32
# 向server_deny地址对象集中添加IP地址 10.2.1.2,子网掩码为 32 位
[shaiops-object-address-set-server_deny] address 1 10.2.1.2 mask 32
# 退出地址对象集配置视图
[shaiops-object-address-set-server_deny] quit
步骤 4
配置时间段
# 配置一个名为time_deny的时间段,每天的08:00到17:00生效
[shaiops] time-range time_deny 08:00 to 17:00 daily
步骤 5
配置自定义服务
配置Server1的服务(TCP 8888 端口)
# 创建一个名为server1_port的服务集,类型为对象
[shaiops] ip service-set server1_port type object
# 定义该服务集的协议为TCP,源端口范围是0到65535,目的端口为8888
[shaiops-object-service-set-server1_port] service protocol TCP source-port 0 to 65535 destination-port 8888
# 退出服务集配置视图
[shaiops-object-service-set-server1_port] quit
配置Server2的服务(UDP 6666 端口)
# 创建一个名为server2_port的服务集,类型为对象
[shaiops] ip service-set server2_port type object
# 定义该服务集的协议为UDP,源端口范围是0到65535,目的端口为6666
[shaiops-object-service-set-server2_port] service protocol UDP source-port 0 to 65535 destination-port 6666
# 退出服务集配置视图
[shaiops-object-service-set-server2_port] quit
步骤 6
配置安全策略规则
限制特定PC使用Server1对外提供的服务
# 进入安全策略配置视图
[shaiops] security-policy
# 创建一个名为policy_sec_deny1的安全策略规则
[shaiops-policy-security] rule name policy_sec_deny1
# 指定该规则的源安全区域为 Trust
[shaiops-policy-security-rule-policy_sec_deny1] source-zone trust
# 指定该规则的目的安全区域为 DMZ
[shaiops-policy-security-rule-policy_sec_deny1] destination-zone dmz
# 指定该规则的源地址为之前配置的server_deny地址对象集
[shaiops-policy-security-rule-policy_sec_deny1] source-address address-set server_deny
# 指定该规则的目的地址为 10.2.0.10,子网掩码为32 位
[shaiops-policy-security-rule-policy_sec_deny1] destination-address 10.2.0.10 32
# 指定该规则应用的服务为之前配置的server1_port服务集
[shaiops-policy-security-rule-policy_sec_deny1] service server1_port
# 指定该规则的生效时间段为之前配置的time_deny时间段
[shaiops-policy-security-rule-policy_sec_deny1] time-range time_deny
# 设置该规则的动作是拒绝访问
[shaiops-policy-security-rule-policy_sec_deny1] action deny
# 退出该安全策略规则配置视图
[shaiops-policy-security-rule-policy_sec_deny1] quit
限制特定PC使用Server2对外提供的服务
# 创建一个名为policy_sec_deny2的安全策略规则
[shaiops-policy-security] rule name policy_sec_deny2
# 指定该规则的源安全区域为 Trust
[shaiops-policy-security-rule-policy_sec_deny2] source-zone trust
# 指定该规则的目的安全区域为 DMZ
[shaiops-policy-security-rule-policy_sec_deny2] destination-zone dmz
# 指定该规则的源地址为之前配置的server_deny地址对象集
[shaiops-policy-security-rule-policy_sec_deny2] source-address address-set server_deny
# 指定该规则的目的地址为 10.2.0.11,子网掩码为 32 位
[shaiops-policy-security-rule-policy_sec_deny2] destination-address 10.2.0.11 32
# 指定该规则应用的服务为之前配置的server2_port服务集
[shaiops-policy-security-rule-policy_sec_deny2] service server2_port
# 指定该规则的生效时间段为之前配置的time_deny时间段
[shaiops-policy-security-rule-policy_sec_deny2] time-range time_deny
# 设置该规则的动作是拒绝访问
[shaiops-policy-security-rule-policy_sec_deny2] action deny
# 退出该安全策略规则配置视图
[shaiops-policy-security-rule-policy_sec_deny2] quit
允许其他PC使用Server1对外提供的服务
# 创建一个名为policy_sec_permit3的安全策略规则
[shaiops-policy-security] rule name policy_sec_permit3
# 指定该规则的源安全区域为Trust
[shaiops-policy-security-rule-policy_sec_permit3] source-zone trust
# 指定该规则的目的安全区域为DMZ
[shaiops-policy-security-rule-policy_sec_permit3] destination-zone dmz
# 指定该规则应用的服务为之前配置的server1_port服务集
[shaiops-policy-security-rule-policy_sec_permit3] service server1_port
# 设置该规则的动作是允许访问
[shaiops-policy-security-rule-policy_sec_permit3] action permit
# 退出该安全策略规则配置视图
[shaiops-policy-security-rule-policy_sec_permit3] quit
允许其他PC使用Server2对外提供的服务
# 创建一个名为policy_sec_permit4的安全策略规则
[shaiops-policy-security] rule name policy_sec_permit4
# 指定该规则的源安全区域为 Trust
[shaiops-policy-security-rule-policy_sec_permit4] source-zone trust
# 指定该规则的目的安全区域为 DMZ
[shaiops-policy-security-rule-policy_sec_permit4] destination-zone dmz
# 指定该规则应用的服务为之前配置的server2_port服务集
[shaiops-policy-security-rule-policy_sec_permit4] service server2_port
# 设置该规则的动作是允许访问
[shaiops-policy-security-rule-policy_sec_permit4] action permit
# 退出该安全策略规则配置视图
[shaiops-policy-security-rule-policy_sec_permit4] quit
# 退出安全策略配置视图
[shaiops-policy-security] quit