热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

华为防火墙安全策略

1初识安全策略  小伙伴们,我们试想下如果防火墙把所有流量都拒绝了,内部用户将无法畅游网络,外部合法用户将无法访问内部资源。因此我们需要配置防火墙的一个特性,让它更好的实现防火墙的

1初识安全策略

   小伙伴们,我们试想下如果防火墙把所有流量都拒绝了,内部用户将无法畅游网络,外部合法用户将无法访问内部资源。因此我们需要配置防火墙的一个特性,让它更好的实现防火墙的功能,这个特性就是安全策略。平时我们上班乘坐地铁,出差乘坐高铁或飞机,在这三个场所中都会有蓝色的标志“Security Check”,旁边站着一个工作人员“安检员”。他的作用就是检查乘客随身携带的物品是否安全,如安全放行通过,如不安全,拒绝通过。回顾下防火墙的作用是保护特定的网络免受“不信任”的网络的攻击和入侵,但还要允许网络之间进行合法的通信。安全策略的作用类似于“安检员”对通过防火墙的网络流量和抵达自身流量进行安全检查,满足安全策略条件的流量执行允许的动作才能通过防火墙。

2基本概念

       上图所示,PC位于Untrust区域,HTTP Server位于Trust区域,假设我们希望PC可以访问HTTP Server,配置的策略应该是允许源区域Untrust,目的区域Trust,源IP地址202.100.1.100,目的IP地址192.168.1.100,源端口Any,目的端口是80,应用协议是TCP。

配置中可以看出防火墙安全策略由两大部分组成:

a.条件:防火墙将报文中携带的信息与条件逐一对比,从而来判断报文是否匹配。

b.动作:允许(permit)和拒绝(deny),一条策略只能有一个动作。

      如上图中每条策略中都包含了多个匹配条件,如安全区域、用户、应用等。各个匹配条件之间是“与”的关系,报文的属性与各个条件必须全部匹配,才认为该报文匹配这条规则。也就是说报文中的信息都要满足所有字段才能匹配。一个匹配条件中可以配置多个值,多个值之间是“或”的关系,报文的属性只要匹配任意一个值,就认为报文的属性匹配了这个条件。比如源区域有2个,目的IP有2个,那么这些匹配项之间是“或”的关系,也就是说只要报文的信息满足其中一项,就证明匹配了该条件。

安全策略配置完成后,PC就可以正常访问HTTP Server了,无需放行返回流量的安全策略,防火墙默认是基于状态化进行转发的,所以返回流量匹配会话表就转发了。

 

3匹配顺序

      安全策略之间是存在匹配顺序的,防火墙会按照从上到下的顺序逐条查找相应安全策略。如果报文命中了某一条安全策略,就会执行该策略的动作,不会再继续向下查找;如果报文没有命中某一条安全策略,则会继续向下查找。

     基于安全策略的匹配顺序,建议我们在配置安全策略时,应该遵循“先明细,后粗犷”的原则。比如我们配置两条trust--untrust安全策略,分别为192.168.0.0/24网段报文通过,192.168.1.1报文拒绝通过,防火墙在查找安全策略时,第一条策略192.168.0.0/24网段会匹配允许通过,第二条策略192.168.1.1报文永远也不会匹配到,这样我们实现控制的目的也没有达到。

      如果还没有找到对应的安全策略,则会匹配默认的安全策略,动作为拒绝。默认安全策略的名字叫default,条件为any,动作为拒绝。大部厂商的安全策略都是这样定义的,缺省的为拒绝所有。个人认为如果小伙伴们在排错过程中,快速定位安全策略的问题,可以把默认策略动作配置为允许。如果报文可以通过,证明安全策略配置问题,然后配置正确的安全策略。非常不建议把防火墙安全策略配置为允许所有,因为这样存在极大的安全风险,防火墙也失去了意义

      华为防火墙安全策略控制可分三点:1.控制抵达自身和自身发起的流量,比如从外部网管防火墙,应该是untrust—>local之间的网管流量,如SSH、Telnet、HTTPS等。在比如防火墙要网管其它网络设备,应该是local—>到其它区域之间的网管流量  2.控制区域间的流量,比如untrust—>trust,trust—>dmz  3,控制区域内的流量,比如trust两台PC,我们不希望它们之间进行访问,那就是trust—> trust。

4安全配置案例

组网需求:

a.仅要求互联网到Untrust接口ICMP和Telnet流量。

b.除192.168.1.2/32外,允许所有Trust主机可以访问互联网。

c.Untrust用户在周一至周五上班时间可以访问所有DMZ服务器资源。

d.Trust区域内PC1不能访问PC3资源。

 

5实验配置

#进入接口视图,启用管理功能。

[NGFW] int g1/0/1

[NGFW-GigabitEthernet1/0/1]service-manage enable

[NGFW-GigabitEthernet1/0/1]service-manage ping permit

[NGFW-GigabitEthernet1/0/1]service-manage telnet permit

注:对于抵达防火墙自身的流量建议接口开启。

#进入安全策略视图,配置相应策略

[NGFW]security-policy               

[NGFW-policy-security]rulename rule1

[NGFW-policy-security-rule-rule1]source-zone trust   //可以指多个区域

[NGFW-policy-security-rule-rule1]destination-zone untrust   //如果域内策略,目的为相同区域

[NGFW-policy-security-rule-rule1]source-address 192.168.1.1 32

[NGFW-policy-security-rule-rule1]action deny

#创建时间范围,调用到安全策略

[NGFW]time-range worktime

[NGFW-time-range-worktime]period-range 09:00:00 to 17:00:00 working-day

[NGFW-policy-security]rulename rule3

[NGFW-policy-security-rule-rule3]time-range worktime

#其它安全策略同理


  • 测试

需求一、

telnet 202.100.1.10

Loginauthentication

Username:user1

Password:

ping 202.100.1.10

PING 202.100.1.10:56  data bytes, press CTRL_C to break

Reply from202.100.1.10: bytes=56 Sequence=1 ttl=255 time=20 ms

Reply from 202.100.1.10: bytes=56 Sequence=2 ttl=255 time=20 ms

需求二、

 

ping 202.100.1.1

PING 202.100.1.1: 56  data bytes, press CTRL_C to break

Request time out

Request time out

Request time out

ping 202.100.1.1

PING 202.100.1.1: 56  data bytes, press CTRL_C to break

 Reply from 202.100.1.1: bytes=56 Sequence=1ttl=254 time=40 ms

 Reply from 202.100.1.1: bytes=56 Sequence=2ttl=254 time=20 ms

 Reply from 202.100.1.1: bytes=56 Sequence=3ttl=254 time=20 ms

 Reply from 202.100.1.1: bytes=56 Sequence=4ttl=254 time=10 ms

需求三、

ping 172.16.1.1

PING 172.16.1.1: 56  data bytes, press CTRL_C to break

Reply from 172.16.1.1: bytes=56Sequence=1 ttl=254 time=30 ms

Reply from 172.16.1.1: bytes=56 Sequence=2ttl=254 time=20 ms

Reply from 172.16.1.1: bytes=56Sequence=3 ttl=254 time=20 ms

Reply from 172.16.1.1: bytes=56Sequence=4 ttl=254 time=10 ms

Reply from 172.16.1.1: bytes=56 Sequence=5ttl=254 time=20 ms

 display clock

2017-06-0618:01:30

Tuesday

ping 172.16.1.1

 PING 172.16.1.1: 56  data bytes, press CTRL_C to break

 Request time out

 Request time out

 Request time out

 Request time out

 需求四、

 

ping192.168.2.1

PING 192.168.2.1: 56  data bytes, press CTRL_C to break

 Request time out

 Request time out

 Request time out

Request time out

ping192.168.1.1

PING 192.168.1.1:56  data bytes, press CTRL_C to break

Reply from 192.168.1.1: bytes=56 Sequence=1ttl=255 time=1 ms 

Reply from 192.168.1.1: bytes=56 Sequence=1ttl=255 time=1 ms

Reply from 192.168.1.1: bytes=56 Sequence=1ttl=255 time=1 ms

注:默认域内的安全策略是允许的。



推荐阅读
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在配置Nginx的SSL证书后,虽然HTTPS访问能够正常工作,但HTTP请求却会遇到400错误。本文详细解析了这一问题,并提供了Nginx配置的具体示例。此外,还深入探讨了DNS服务器证书、SSL证书的申请与安装流程,以及域名注册、查询方法和CDN加速技术的应用,帮助读者全面了解相关技术细节。 ... [详细]
  • Java Socket 关键参数详解与优化建议
    Java Socket 的 API 虽然被广泛使用,但其关键参数的用途却鲜为人知。本文详细解析了 Java Socket 中的重要参数,如 backlog 参数,它用于控制服务器等待连接请求的队列长度。此外,还探讨了其他参数如 SO_TIMEOUT、SO_REUSEADDR 等的配置方法及其对性能的影响,并提供了优化建议,帮助开发者提升网络通信的稳定性和效率。 ... [详细]
  • 本文介绍了如何利用Struts1框架构建一个简易的四则运算计算器。通过采用DispatchAction来处理不同类型的计算请求,并使用动态Form来优化开发流程,确保代码的简洁性和可维护性。同时,系统提供了用户友好的错误提示,以增强用户体验。 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • Docker 中创建 CentOS 容器并安装 MySQL 进行本地连接
    本文详细介绍了如何在 Docker 中创建 CentOS 容器,并在容器中安装 MySQL 以实现本地连接。文章内容包括镜像拉取、容器创建、MySQL 安装与配置等步骤。 ... [详细]
  • 本文深入解析了 Kubernetes 控制平面(特别是 API 服务器)与集群节点之间的通信机制,并对其通信路径进行了详细分类。旨在帮助用户更好地理解和定制其安装配置,从而增强网络安全性,确保集群的稳定运行。 ... [详细]
  • 在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • DVWA学习笔记系列:深入理解CSRF攻击机制
    DVWA学习笔记系列:深入理解CSRF攻击机制 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 在Cisco IOS XR系统中,存在提供服务的服务器和使用这些服务的客户端。本文深入探讨了进程与线程状态转换机制,分析了其在系统性能优化中的关键作用,并提出了改进措施,以提高系统的响应速度和资源利用率。通过详细研究状态转换的各个环节,本文为开发人员和系统管理员提供了实用的指导,旨在提升整体系统效率和稳定性。 ... [详细]
author-avatar
郭倩尔偏执起来不是人_
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有