类别:CentOS / 日期:2019-10-10 / 浏览:960 / 评论:0

iptables防火墙常用的策略

1、有一网络192.168.100.0/24,路由器IP为192.168.100.1,计划只允许192.168.100.1和192.168.100.97-126上网,其它网段禁止上网。

先划分网段:

(0-63)——192.168.100.0/26  禁止

(64-95)——192.168.100.64/27  禁止

(96-127)——192.168.100.64/27  允许

(128-255)——192.168.100.128/25  禁止

策略为:

#允许路由器IP上网。单IP。

iptables -I FORWARD -s 192.168.100.1 -j ACCEPT

#禁止以下网段上网

iptables -I FORWARD -s 192.168.100.0/26 -j DROP

iptables -I FORWARD -s 192.168.100.64/27 -j DROP

iptables -I FORWARD -s 192.168.100.128/25 -j DROP

 

2、其它策略

(1)、拒绝进入防火墙的所有ICMP协议数据包

iptables -I INPUT -p icmp -j REJECT

(2)、允许防火墙转发除ICMP协议以外的所有数据包

iptables -A FORWARD -p ! icmp -j ACCEPT

(3)、拒绝转发来自192.168.1.10主机的数据,允许转发来自192.168.0.0/24网段的数据

iptables -A FORWARD -s 192.168.1.11 -j REJECT
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
说明:注意要把拒绝的放在前面不然就不起作用了啊。

(4)、丢弃从外网接口(eth1)进入防火墙本机的源地址为私网地址的数据包

iptables -A INPUT -i eth1 -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i eth1 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP

(5)、封堵网段(192.168.1.0/24),两小时后解封。

[root@server ~]# iptables -I INPUT -s 10.20.30.0/24 -j DROP
[root@server ~]# iptables -I FORWARD -s 10.20.30.0/24 -j DROP
[root@server ~]# at now +2 hours
at> iptables -D INPUT 1
at> iptables -D FORWARD 1

说明:这个策略咱们借助crond计划任务来完成,就再好不过了。
[1]+  Stopped     at now +2 hours

(6)、只允许管理员从202.13.0.0/16网段使用SSH远程登录防火墙主机

iptables -A INPUT -p tcp --dport 22 -s 202.13.0.0/16 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP

说明:这个用法比较适合对设备进行远程管理时使用,比如位于分公司中的SQL服务器需要被总公司的管理员管理时。

 

(7).允许本机开放从TCP端口20-1024提供的应用服务

iptables -A INPUT -p tcp --dport 20:1024 -j ACCEPT

iptables -A OUTPUT -p tcp --sport 20:1024 -j ACCEPT

 

(8).允许转发来自192.168.0.0/24局域网段的DNS解析请求数据包

iptables -A FORWARD -s 192.168.0.0/24 -p udp --dport 53 -j ACCEPT

iptables -A FORWARD -d 192.168.0.0/24 -p udp --sport 53 -j ACCEPT

 

 (9).禁止其他主机ping防火墙主机,但是允许从防火墙上ping其他主机

iptables -I INPUT -p icmp --icmp-type Echo-Request -j DROP

iptables -I INPUT -p icmp --icmp-type Echo-Reply -j ACCEPT

iptables -I INPUT -p icmp --icmp-type destination-Unreachable -j ACCEPT

 

(10).禁止转发来自MAC地址为00:0C:29:27:55:3F的和主机的数据包

iptables -A FORWARD -m mac --mac-source 00:0c:29:27:55:3F -j DROP

说明:iptables中使用“-m 模块关键字”的形式调用显示匹配。咱们这里用“-m mac –mac-source”来表示数据包的源MAC地址。

 

(11).允许防火墙本机对外开放TCP端口20、21、25、110以及被动模式FTP端口1250-1280

iptables -A INPUT -p tcp -m multiport --dport 20,21,25,110,1250:1280 -j ACCEPT

说明:这里用“-m multiport –dport”来指定目的端口及范围

 

(12).禁止转发源IP地址为192.168.1.20-192.168.1.99的TCP数据包。

iptables -A FORWARD -p tcp -m iprange --src-range 192.168.1.20-192.168.1.99 -j DROP

说明:此处用“-m –iprange –src-range”指定IP范围。

 

(13).禁止转发与正常TCP连接无关的非—syn请求数据包。

iptables -A FORWARD -m state --state NEW -p tcp ! --syn -j DROP

说明:“-m state”表示数据包的连接状态,“NEW”表示与任何连接无关的,新的嘛!

 

(14).拒绝访问防火墙的新数据包,但允许响应连接或与已有连接相关的数据包

iptables -A INPUT -p tcp -m state --state NEW -j DROP

iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

说明:“ESTABLISHED”表示已经响应请求或者已经建立连接的数据包,“RELATED”表示与已建立的连接有相关性的,比如FTP数据连接等。

 

(15).只开放本机的web服务(80)、FTP(20、21、20450-20480),放行外部主机发住服务器其它端口的应答数据包,将其他入站数据包均予以丢弃处理

iptables -I INPUT -p tcp -m multiport --dport 20,21,80 -j ACCEPT

iptables -I INPUT -p tcp --dport 20450:20480 -j ACCEPT

iptables -I INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT

iptables -P INPUT DROP

打赏

感谢您的赞助~

打开支付宝扫一扫,即可进行扫码打赏哦~

版权声明 : 本文未使用任何知识共享协议授权,您可以任何形式自由转载或使用。

 可能感兴趣的文章