iptables防火墙

链名流量方向常见用途
INPUT进入本地主机的流量控制外部对本地服务的访问(如开放 SSH、Web 服务)
FORWARD经过本地主机的转发流量管理局域网内设备间的互访、配置路由器防火墙策略
OUTPUT从本地主机发出的流量限制本地程序的出站行为(如禁止访问特定网站)
-L:列出当前链(chain)中的所有规则
-n:以数字形式显示 IP 地址和端口号,而不是尝试解析主机名和服务名
--line-number:显示规则的行号,这对于后续删除或修改特定规则非常有用
-A 表示在链的末尾添加规则

Chain:显示防火墙的链(INPUT、FORWARD、OUTPUT 等)
policy:显示链的默认策略(ACCEPT 或 DROP)
num:规则的行号,通过 --line-number 参数添加
target:匹配规则后执行的操作(ACCEPT、DROP、REJECT 等)
prot:协议类型(all、tcp、udp、icmp 等)
opt:选项,通常为空
source:源 IP 地址或网段
destination:目标 IP 地址或网段

禁止端口对外访问

查看当前信息

#查看当前信息
[root@localhost ~]# iptables -L -n --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination  

添加指定IP可以访问8080端口

重要提醒:如果要指定IP能访问某个端口,必须先执行需要通过的IP,最后在执行drop。
#添加指定IP可以访问8080端口 
[root@localhost ~]# iptables -A INPUT -p tcp -s 192.168.62.130 --dport 8080 -j ACCEPT
[root@localhost bin]# iptables -L -n --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  192.168.62.130       0.0.0.0/0            tcp dpt:8080
2    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8080

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination   

禁止8080对任何人访问(必须放在最后一行,最后执行)

[root@localhost ~]# iptables -A INPUT -p tcp --dport 8080 -j DROP

在第二行添加数据

#在第二行添加数据
[root@localhost bin]# iptables -I INPUT 2 -p tcp -s 192.168.62.131 --dport 8080 -j ACCEPT 
[root@localhost bin]# iptables -L -n --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  192.168.62.130       0.0.0.0/0            tcp dpt:8080
2    ACCEPT     tcp  --  192.168.62.131       0.0.0.0/0            tcp dpt:8080
3    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8080

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination 

删除规则

iptables -D INPUT 5  # 删除 INPUT 链中的第 5 条规则

THE END
点赞10 分享