Centos7
查看:sudo systemctl status firewalld
临关:sudo systemctl stop firewalld
临开:sudo systemctl start firewalld
永关:sudo systemctl disable firewalld查询防火墙服务是否开机启动:systemctl is-enabled firewalld
查询已经启动的服务列表:systemctl list-unit-files|grep enabled
添加端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
更新防火墙规则:firewall-cmd --reload
查看端口状态:firewall-cmd --zone=public --query-port=80/tcp
删除开放的端口:firewall-cmd --zone=public --remove-port=80/tcp --permanent
每次都更新防火墙规则,都需要重新更新:firewall-cmd --reload,更新状态;
此外,在更新完防火墙的设置后,也可以查看所有开启的端口:firewall-cmd --zone=public --list-ports
Centos 6
1) 重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off
2) 即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
Ubuntu
查看:sudo ufw status inactive状态是防火墙关闭状态 active是开启状态。
开启:sudo ufw enable
关闭:sudo ufw disable
fw default allow/deny:外来访问默认允许/拒绝
ufw allow/deny 20:允许/拒绝 访问20端口,20后可跟/tcp或/udp,表示tcp或udp封包。
ufw allow/deny servicename:ufw从/etc/services中找到对应service的端口,进行过滤。
ufw allow proto tcp from 10.0.1.0/10 to 本机ip port 25:允许自10.0.1.0/10的tcp封包访问本机的25端口。
ufw delete allow/deny 20:删除以前定义的"允许/拒绝访问20端口"的规则开放端口:iptables -I INPUT -p tcp --dport 9222 -j ACCEPT
查看规则:iptables -t nat -nL --line 或 iptables -t nat -vnL PREROUTING --line-number
删除规则:删除指定表的指定链上的规则, -D 并指定序号即可:iptables -t nat -D PREROUTING 1
中间人要把流量转发到真实地址,就要开启路由功能
- sysctl -w net.ipv4.ip_forward=1
- 其实就是修改了文件的值:cat /proc/sys/net/ipv4/ip_forward
端口转发:iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080 #HTTPS(80端口(既服务原始端口)流量重定向8080)
清空规则:iptables -t nat -F(清空复原)
linux 各系统防火墙操作
最新推荐文章于 2025-05-09 10:28:08 发布