防火墙&&firewalld&&iptables

发布时间 2023-06-28 16:11:29作者: 赵财进宝

防火墙&&firewalld&&iptables

一、firewalld

1.centos8查看防火墙开放的端口

firewall-cmd --zone=public --list-ports

2.开通5432端口

firewall-cmd --zone=public --add-port=5432/tcp --permanent

3.源地址为 "172.30.3.19",目标端口为 6379,使用 TCP 协议,将连接请求拒绝(reject)。

firewall-cmd --add-rich-rule='rule family="ipv4" source address="<IP地址>" port port="<端口>" protocol="<协议>" reject'

4.重启生效

firewall-cmd --reload

二、iptables

1.查看当前的防火墙规则:

 iptables -L
该命令将列出当前的防火墙规则,包括过滤规则(filter)、网络地址转换规则(NAT)和网络地址端口转换规则(MANGLE)。

2.清除所有防火墙规则:

 iptables -F
该命令将删除所有的防火墙规则,即将防火墙规则设置为默认的允许所有流量。

3.常用方法

iptables -A <CHAIN> -p <协议> --dport <端口> -s <来源IP> -j <动作>
<CHAIN>:指定要添加规则的链,常见的链包括 INPUT、OUTPUT 和 FORWARD。
<协议>:指定要匹配的协议,例如 tcp、udp 或 icmp。
<端口>:指定要匹配的端口号。
<来源IP>:指定要匹配的源 IP 地址。
<动作>:指定匹配规则后要执行的动作,常见的动作包括 ACCEPT(允许)、DROP(丢弃)和 REJECT(拒绝)。

示例:
iptables -A INPUT -p tcp --dport 80 -s 192.168.1.10 -j ACCEPT
该命令将添加一个规则,允许来自 IP 地址为 192.168.1.10 的主机访问本地的 TCP 80 端口。

4.要查看 iptables 规则的规则号,您可以使用以下命令

iptables -L --line-numbers

5.删除防火墙规则:

 iptables -D <CHAIN> <规则号>
<CHAIN>:指定要删除规则的链。
<规则号>:指定要删除的规则的编号。
实例:
iptables -D INPUT 1
该命令将删除 INPUT 链中编号为 1 的规则。

6.禁止入站规则

iptables -A INPUT -s 172.30.3.19 -p tcp --dport 6379 -j DROP

7.禁止出站规则

iptables -A OUTPUT -p tcp --dport 6379 -d 172.30.3.19 -j REJECT