一、#先检查是否安装了
iptables service iptables status
没有安装。
#安装iptables yum install -y iptables #升级iptables yum update iptables #安装iptables-services yum install iptables-services
再来一遍iptables service iptables status
二、启动
systemctl start iptables.service
三、依次开放端口
iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
四、查看目前iptables的规则
iptables -nvL
保存到文件中
service iptables save
具体的文件位置,上面也有提示
vi /etc/sysconfig/iptables
五、启动与状态查看
service iptables status
service iptables start
2022年5月7日
1、检查状态
systemctl status iptables.service
停止与开启
service iptables stop
service iptables start
查看目前的规则
iptables -nvL
恢复某一次的备份规则
iptables-restore /data/iptables20201225.bak
2、常用命令
iptables -h #查询帮助
iptables -L -n #列出(filter表)所有规则
iptables -L -n --line-number #列出(filter表)所有规则,带编号
iptables -L -n -t nat #列出(nat表)所有规则
iptables -F #清除(filter表)中所有规则
iptables -F -t nat #清除(nat表)中所有规则
service iptables save #保存配置(保存配置后必须重启iptables)
systemctl restart iptables.service #重启
3、语法
3.1、filter表解析
filter表是iptables默认使用的表,负责对流入、流出本机的数据包进行过滤,该表中定义了3个链,分别是:INPUT、OUTPUT、FORWARD
INPUT:过滤进入主机的数据包
OUTPUT:处理从本机出去的数据包
FORWARD:负责转发流经本机但不进入本机的数据包,起到转发作用
3.2、iptables常用语法
-A:追加到规则的最后一条
-D:删除记录
-I:添加到规则的第一条
-p:(proto)规定通信协议,常见的协议有:tcp、udp、icmp、all
-j:(jump)指定要跳转的目标,常见的目标有:ACCEPT(接收数据包)、DROP(丢弃数据包)、REJECT(重定向)三种,但是一般不适用重定向,会带来安全隐患
四、常见案例
4.1、IP过滤
4.1.1、禁止192.168.1.3 IP地址的所有类型数据接入
iptables -A INPUT ! -s 192.168.1.3 -j DROP
4.2、开放端口
4.2.1、开放端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放80端口
4.2.2、开放端口范围
iptables -I INPUT -p tcp --dport 22:80 -j ACCEPT #开发22-80范围的端口
4.2.3、不允许80端口流出
iptables -I OUTPUT -p tcp --dport 80 -j DROP