打开系统的 IP 转发功能
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf sysctl -p
# 开启 NAT 转发
firewall-cmd --add-masquerade --permanent 或者下一句 firewall-cmd --permanent --zone=public --add-masquerade
# 开放 DNS 使用的 53 端口,UDP# 必须,否则其他机器无法进行域名解析
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 检查是否允许 NAT 转发
firewall-cmd --query-masquerade
# 禁止防火墙 NAT 转发
firewall-cmd --remove-masquerade
#开放IP端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent firewall-cmd --permanent --zone=public --add-port=100-500/tcp firewall-cmd --permanent --zone=public --add-port=100-500/udp
指定IP与端口
# 将80端口的流量转发至8080 firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 # 将80端口的流量转发至 firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.0.1192.168.0.1 # 将80端口的流量转发至192.168.0.1的8080端口 firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080
可以看到转发参数分别是port(端口)、proto(协议)、toaddr(目的IP)、toport(目的端口),每个参数之间用英文冒号分隔。
要删除之前设置的转发规则,把以上命令中的–add-forward-port改为–remove-forward-port运行一次即可。
因为我目前没有多IP的服务器,没办法测试是否有addr这个参数。
同样,如果要使转发规则永久有效,要在命令最后面加上–permanent参数。
SS多IP采用下面这句转发
firewall-cmd --permanent --zone=public --add-forward-port=port=6103:proto=tcp:toaddr=xx.xx.xx.xx:toport=6103
设置完需重启防火墙,运行命令:
firewall-cmd --reload
删除规则
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.142.166" port protocol="tcp" port="11300" accept"
常用命令
firewall-cmd --zone=public --list-ports -列出所有类型public 的端口 firewall-cmd --zone=public --list-ports -列出所有类型public 的端口 firewall-cmd --list-ports --列出所有信息 查看防火墙所有开放的端口 firewall-cmd --zone=public --list-ports 关闭防火墙 firewall-cmd --list-forward-ports #查看转发端口 firewall-cmd --list-ports # 查看开放的端口 如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估 systemctl stop firewalld.service 4、查看防火墙状态 firewall-cmd --state 5、查看监听的端口 netstat -lnpt 6、检查端口被哪个进程占用 netstat -lnpt |grep 5672 查看进程的详细信息 ps 6832 firewall-cmd --remove-port=8056/tcp --临时删除端口 firewall-cmd --zone=public --remove-port=8005/tcp --permanent --永久删除卡对外开放的端口 firewall-cmd --permanent --zone=public --remove-forward-port=port=8056:proto=tcp:toaddr=xxx.xx.xx.xxx:toport=3356 --删除转发规则
其他的可以参考