执行iptables命令之前注意:
1、iptables命令即时生效;
2、新的linux系统iptables基本都被阉割或停用了,需要重新安装:
systemctl stop firewalld
systemctl disable firewalld
yum/apt install iptables-services
systemctl enable iptables
systemctl start iptables
service iptables save
允许所有连接访问22号 ssh端口:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
拒绝所有连接访问22号 ssh端口:
iptables -A INPUT -p tcp --dport 22 -j DROP
在INPUT表中插入规则:
-A
是直接添加在结尾
-I
可以添加在指定的行
如在第6行给5454号端口放行:
iptables -I INPUT 6 -p tcp --dport 5454 -j ACCEPT
拒绝其他连接(通常用在表的末尾):
iptables -A INPUT -p tcp -j REJECT
限制指定的端口速度:
iptables -A INPUT -p tcp --dport 12345 -m limit --limit 40/s -j ACCEPT
// 40/s 是每秒发40个包。每个包大概1KB左右的大小
iptables -A INPUT -p tcp --dport 12345 -j DROP
只允许1.2.3.4访问3306端口:
iptables -A INPUT -p tcp -s 1.2.3.4 --dport 3306 -j ACCEPT
查看iptables 所有的规则:
iptables -L
清除iptables 所有的规则:
iptables -F
删除某条规则:
iptables -D INPUT 1
// 此处的1代表在INPUT中按照顺序添加的第1条策略。
保存iptables命令
service iptables save
iptables-save > /etc/network/iptables.up.rules
屏蔽某个IP地址:
iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP
解除掉IP屏蔽:
iptables -D INPUT -s xxx.xxx.xxx.xxx -j DROP