CentOS各版本的防火墙操作

  • FIREWALLD的基本使用
  • 启动: systemctl start firewalld
  • 查看状态: systemctl status firewalld
  • 禁用,禁止开机启动: systemctl disable firewalld
  • 停止运行: systemctl stop firewalld
  • 配置FIREWALLD-CMD
  • 查看版本: firewall-cmd --version
  • 查看帮助: firewall-cmd --help
  • 显示状态: firewall-cmd --state
  • 查看所有打开的端口: firewall-cmd --zone=public --list-ports
  • 更新防火墙规则: firewall-cmd --reload
  • 更新防火墙规则,重启服务: firewall-cmd --completely-reload
  • 查看已激活的Zone信息: firewall-cmd --get-active-zones
  • 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
  • 拒绝所有包:firewall-cmd --panic-on
  • 取消拒绝状态: firewall-cmd --panic-off
  • 查看是否拒绝: firewall-cmd --query-panic
  • 端口转发:
  • 打开端口转发,首先需要打开IP地址伪装
  • firewall-cmd --zone=external --add-masquerade
  • 转发 tcp 22 端口至 1100:
  • firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=1100
  • 转发端口数据至另一个IP的相同端口:
  • firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toaddr=10.10.0.1
  • 转发端口数据至另一个IP的 1100 端口:
  • firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=1100:toaddr=10.10.0.1

centos7以后版本的s防火墙与centos6之前的版本命令有所不同,centos6之前一直用的iptables,而centos7.0以后都是用的firewall

查看防火墙状态:firewall-cmd --state

查看防火墙规则: firewall-cmd --list-all 

禁用防火墙(开机不启动): systemctl disable firewalld.service 

启用防火墙(开机启动): systemctl enable firewalld.service 

开启防火墙: systemctl start firewalld.service

关闭防火墙: systemctl stop firewalld.service

重启防火墙: systemctl restart firewalld.service

查询端口是否开放:firewall-cmd --query-port=8080/tcp

配置文件位置:/etc/firewalld/zones/public.xml

添加开放端口:

#--permanent:表示设置为持久

firewall-cmd --permanent --add-port=8080/tcp

firewall-cmd --permanent --add-port=8080/udp 

移除端口:

firewall-cmd --permanent --remove-port=8080/tcp

firewall-cmd --permanent --remove-port=8080/udp

原文地址:https://www.cnblogs.com/delphixe/p/13796090.html