防火墙概述
防火墙是一种高级访问控制设备,置于不同的网络安全域之间一系列组件的组合,它是不同网络安全域间通信的唯一通道,能根据相关的安全策略控制控制进出网络的访问行为。
防火墙的作用
- 保护内部的网络免受外部Internet恶意的攻击
- 创建安全域
- 加强机构的安全管理策略
防火墙的历程
防火墙工作范围判断信息包过滤网络层、传输层(3-4层)五元组应用代理7层应用层所有应用层的信息包状态检测数据链路层、网络层、传输层(2-4层)IP地址、端口号、TCp标记入侵检测系统(IDS)2-7层抵御2-7层已知威胁入侵防御系统(IPS)2-7层能够主动检测和防御web应用防火墙(WAF)应用层(7层)用来保护web应用防病毒网关(AV)2-7层基于网络侧识别病毒文件下一代防火墙(NGFW)(2-7层)IDS,FW,IPS,AV,WAF
防火墙的功能
- 访问控制
- 地址转换
- 网络环境支持
- 宽带管理功能
- 入侵检测和防御攻击
- 用户认证
- 高可用性
防火墙性能指标
吞吐量 时延 丢包率 背靠背 并发连接数:基于传输层
数据包过滤防火墙
包过滤是一种保安机制,它控制哪些数据包可以进出网络而哪些数据包应被网络拒绝
数据包过滤的安全策略方式
- 源地址
- 目的地址
- 源目端口号
- 标志位
- 数据包传送使用的数据包
数据包过滤的优点
包过滤方式有许多优点,而其主要优点之一是仅用一个放置在重要位置上的包过滤路由器就可保护整个网络。如果我们的站
点与因特网间只有一台路由器,那么不管站点规模有多大,只要在这台路由器上设置合适的包过滤,我们的站点就可获得很好的
网络安全保护
包过滤的缺点:
- 手动配置规则比较麻烦
- 对于系统中的包过滤规则进行测试比较麻烦
- 包过滤产品存在局限性,缺少完备的包过滤产品
包过滤规则的配置
协议的双向性:
协议总是双向的,协议总会有一个发送方和一个接收方,在指定规则时,要注意包的来源和去向
默认允许和默认拒绝:
安全策略有两种方法,默认拒绝和默认允许,从安全角度来看,用默认的拒绝应该更加合适。
包过滤器的规则
- 包过滤标准必须由包过滤设备端口存储起来,这些包过滤标准叫包过滤规则
- 当包到达端口时,对包的报头进行语法分析,大多数包过滤设备只检查IP、TCP或UDP报头中的字段,不检查包体的内容
- 包过滤器规则以特殊的方式存储
- 如果一条规则阻止包传输或接收,此包便不被允许通过
- 如果一条规则允许包传输或接收,该包可以继续处理
- 如果一个包不满足任何一条规则 该包被阻塞
包过滤软件IPTABLES规则的配置
filter表中进行规则的设置:
iptables -t filter -A INPUT -s10.1.1.3 -j ACCEPT允许源地址为10.1.1.3进入
iptables -t filter -A INPUT !-s10.1.1.3 -j ACCEPT不允许源地址为10.1.1.3进入
iptables -t filter -A INPUT -s10.1.1.3 -j DROP拒绝源地址为10.1.1.3进入
iptables -t filter -A OUTPUT -d10.1.1.3-j DROP丢弃到达目标地址为10.1.1.3的包iptables -t filter -A OUTPUT !-d10.1.1.3 -j ACCEPT丢弃到达目标地址为10.1.1.3的包
iptables -t filter -A INPUT -d10.1.1.2 -j DROP丢弃所有到目标地址10.1.1.2的包iptables -t filter -A OUTPUT -s10.1.1.2 -j ACCEPT 源地址为10.1.1.2出去的包全部允许
iptables
iptables -nL-n 表示不对 IP 地址进行反查,加上这个参数显示速度将会加快。
-v 表示输出详细信息,包含通过该规则的数据包数量、总字节数以及相应的网络接口。
显示详细的信息:
[root@localhost ~]# iptables -L --line-number
iptables内置模块
多端口指定:
multiport
[root@localhost ~]# iptables -t filter -I INPUT -m multiport -p tcp --dports 20:22,80 -j ACCEPT
指定IP地址范围:
iprange
[root@localhost ~]# iptables -t filter -I INPUT -m iprange --src-range 10.1.1.2-10.1.1.10 -p tcp --dport 80 -j ACCEPT
被动模式:ftp
[root@localhost ~]# iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
开启端口的访问
[root@localhost ~]# iptables -t filter -A OUTPUT -p tcp --sport 20:21 -j ACCEPT
限制ftp的数据传输的端口
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf pasv_min_port=2000pasv_max_port=3000[root@localhost ~]# iptables -t filter -A INPUT -p tcp --dport2000:3000 -j ACCEPT
[root@localhost ~]# iptables -t filter -A OUTPUT -p tcp --sport 2000:3000 -j ACCEPT
状态连接:
state
[root@localhost ~]# iptables -t filter -A OUTPUT -m state --state ESTABLISHED -j ACCEPT
指定mac地址的范围:
-m mac --mac-source
设置tcp数据包的标志位的规则:
[root@localhost ~]# iptables -A INPUT -p tcp --dport 23 --tcp-flags SYN,ACK,FIN,RST,URG,PSH SYN -j REJECT[root@localhost ~]# iptables -A INPUT -p tcp --dport 23 --tcp-flags ALL SYN -j REJECT[root@localhost ~]# iptables -A INPUT -p tcp --dport 23 --syn -j REJECT-p tcp --tcp-flags LIST1 LIST2
匹配指定的TCP标记,有两个参数列表,列表内部用逗号为分隔符,两个列表之间用空格分开,
LIST1用作参数检查,LIST2用作参数匹配。可用标志有:
SYN( 同步; 表示开始会话请求 ), ACK(应答),
FIN(结束; 结束会话),RST(复位;中断一个连接) ,
PSH(推送; 数据包立即发送),URG(紧急 ),
ALL(指选定所有的标记),NONE(指未选定任何标记)
更改默认规则:
iptables -P OUTPUT ACCEPT
有关IPTABLES详细的介绍后面出文介绍
选择防火墙的原则
- 防火墙自身的安全性 只有当防火墙自身设备的安全性完备时,才能为系统提供更安全的访问控制功能
- 考虑特殊的需求 包过滤防火墙的主要功能是进行包的过滤,但也具有其他的功能,例如:IP地址转换,双重DNS,VPN虚拟企业网络,病毒扫描,特殊的控制需求
- 选择原则 - 防火墙需要保护整个网络的安全- 防火墙必须能弥补其他操作系统的不足- 防火墙具有不同平台的选择- 防火墙具有完善的售后服务
版权归原作者 木子南的翻斗花园 所有, 如有侵权,请联系我们删除。