Iptables經常使用策略

防火牆處理數據包的三種方式:
ACCEPT容許數據包經過
DROP直接丟棄數據包,不給任何迴應信息
REJECT拒絕數據包經過,必要時會給數據發送端一個響應的信息。
Iptables防火牆規則的導入和導出:
Iptables-save   //導出(備份)
Iptables-restore //導入(還原)
Service iptables save //保存配置文件
Iptables防火牆經常使用的策略:
1. 拒絕進入防火牆的全部ICMP協議數據包
iptables -A 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  -j DROP
5.  只容許管理員從192.168.1.114使用SSH遠程登陸防火牆主機。
iptables -A INPUT -p tcp --dport 22  -s 192.168.1.114 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
6. 容許本機開放從TCP端口20-1024提供的應用服務。
iptables -A INPUT -p tcp --dport 20:1024 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 20:1024 -j ACCEPT
7. 容許轉發來自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
8. 禁止其餘主機ping防火牆主機,可是容許從防火牆上ping其餘主機
iptables -A INPUT -p icmp --icmp-type Echo-Request -j DROP
iptables -A INPUT -p icmp --icmp-type Echo-Reply -j ACCEPT
iptables -A 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
11.  容許防火牆本機對外開放TCP端口20、2一、2五、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. 開放web服務(80)、DNS服務(53)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 53 -j ACCEPT
iptables -A OUTPUT -p udp --sport 53 -j ACCEPT
14.開放FTP服務(20、21)
iptables -A INPUT -p tcp -m multiport --destination-port 20,21 -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --source-port 20,21 -j ACCEPT
( /etc/vsftpd/vsftpd.conf pasv_enable=NO)
15.開放***服務
iptables -A INPUT -p tcp -m multiport --destination-port 47,1723 -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --source-port 47,1723 -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEPT
16. 開放DHCP服務
iptables -A INPUT -p udp -m multiport --destination-port 67,68 -j ACCEPT
iptables -A INPUT -p udp -m multiport --source-port 67,68 -j ACCEPT
17. 開放mail服務
iptables -A INPUT -p tcp -m multiport --destination-port 25,110,143 -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --source-port 25,110,143 -j ACCEPT
18. 開放smb服務
iptables -A INPUT -p tcp -m multiport --destination-port 139,445 -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --source-port 139,445 -j ACCEPT
19.squild 代理
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
( squid.conf
visible_hostname proxy
http_port 3128
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
http_access allow all )
相關文章
相關標籤/搜索