iptables示例命令(五)
1、IP 过滤
iptables -t filter -I FORWARD -p tcp -s 192.168.1.210 -m time --timestart 06:14 --timestop 07:12 --kerneltz --weekdays Mon.,Tues.,Wed. -j DROP
iptables -t filter -I INPUT -p tcp -s 192.168.1.210 -m time --timestart 06:14 --timestop 07:12 --kerneltz --weekdays Mon.,Tues.,Wed. -j DROP
(--kerneltz:使用内核配置的时区而非默认的UTC)
2、MAC过滤
iptables -t filter -I FORWARD -p tcp -m mac --mac-source 8c:66:66:77:b0:08 -m time --timestart 04:14 --timestop 16:00 --kerneltz --weekdays Mon.,Tues. -j DROP
iptables -t filter -I INPUT -p tcp -m mac --mac-source 8c:66:66:77:b0:08 -m time --timestart 04:14 --timestop 16:00 --kerneltz --weekdays Mon.,Tues. -j DROP
3、端口过滤
iptables -t filter -I FORWARD -p tcp -m iprange --src-range 192.168.1.200-192.168.1.213 --dport 888:65535 -j DROP
iptables -t filter -I INPUT -p tcp -m iprange --src-range 192.168.1.200-192.168.1.213 --dport 888:65535 -j DROP
(目标地址范围:--dst-range)
4、URL(域名)过滤
iptables -t filter -A FORWARD -m iprange --src-range 192.168.1.200-192.168.1.214 -m string --string www.baidu.com --algo bm -j DROP
(--algo 字符串匹配算法 )
5、端口转发
iptables -t nat -A PREROUTING -i eth1 -p tcp -d 192.168.31.100 --dport 666:888 -j DNAT --to 192.168.1.210:777-999
iptables -t filter -A FORWARD -o br-lan -p tcp -d 192.168.1.210 --dport 777:999 -j ACCEPT
6、DMZ主机
iptables -t nat -A PREROUTING -i eth1 -d 192.168.31.100 -j DNAT --to-destination 192.168.1.200
iptables -t filter -A FORWARD -d 192.168.1.200 -j ACCEPT
7、远程WEB访问
iptables -t nat -A PREROUTING -p tcp -s 10.1.1.2 -d 192.168.31.100 --dport 80 -j DNAT --to 192.168.1.1:80
8、DNAT
iptables -t nat -A PREROUTING -p tcp -d 10.1.1.2 --dport 888 -j DNAT --to-destination 192.168.1.215:999
9、SNAT
iptables -t nat -A POSTROUTING -p udp -s 192.168.1.200 --sport 888 -j SNAT --to-source 10.1.1.2:999
10、MASQUERADE
iptables -t nat -A POSTROUTING -s 0.0.0.0/0 -j MASQUERADE -o eth1
iptables -t filter -A FORWARD -o eth1 -j ACCEPT
11、防DOS攻击
iptables -A FORWARD -p icmp -m limit --limit 1500/s --limit-burst 5 -j RETURN
iptables -A FORWARD -p icmp -j DROP
iptables -A INPUT -p icmp -m limit --limit 1500/s --limit-burst 5 -j RETURN
iptables -A INPUT -p icmp -j DROP
iptables -A FORWARD -p udp -m limit --limit 1500/s --limit-burst 5 -j RETURN
iptables -A FORWARD -p udp -j DROP
iptables -A INPUT -p udp -m limit --limit 1500/s --limit-burst 5 -j RETURN
iptables -A INPUT -p udp -j DROP
iptables -A FORWARD -p tcp -m limit --limit 1500/s --limit-burst 5 -j RETURN
iptables -A FORWARD -p tcp -j DROP
iptables -A INPUT -p tcp -m limit --limit 1500/s --limit-burst 5 -j RETURN
iptables -A INPUT -p tcp -j DROP