防火墙预定义的服务配置文件是xml文件
在 /usr/lib/firewalld/services/
在 /etc/firewalld/services/ 这个目录中也有配置文件
但是/etc/firewalld/services/目录 优先于 /usr/lib/firewalld/services/ 目录
yum install firewalld 安装firewalld 防火墙
systemctl start firewalld.service 开启服务
systemctl stop firewalld.service 关闭防火墙
systemctl enable firewalld.service 开机自动启动
systemctl disable firewalld.service 关闭开机制动启动
systemctl status firewalld 查看状态
firewall-cmd --state 查看状态running 表示运行
firewall-cmd --get-active-zones 获取活动的区域,将用以下格式输出每个区域所含接口
<zone1>: <interface1> <interface2> ..<zone2>: <interface3> .
firewall-cmd --get-service 获取所有支持的服务
firewall-cmd --get-service --permanent 获取永久选项所支持的服务 就是重启后也支持
firewall-cmd --panic-on 开启应急模式阻断所有网络连接
firewall-cmd --panic-off 关闭应急模式
firewall-cmd --query-panic 查看应急模式的状态
firewall-cmd --reload 修改配置文件在不改变状态的条件下重新加载防火墙
服务与端口
firewall-cmd --zone=public --add-service=https 临时启用某个服务
firewall-cmd --zone=public --add-port=8080-8081/tcp 临时开启某个端口
firewall-cmd --permanent --zone=public --add-service=https 永久启用某个服务
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp 永久开启某个端口
firewall-cmd --permanent --zone=public --list-services 查看开启的服务、服务空格隔开
firewall-cmd --permanent --zone=public --list-ports 查看开启的端口、端口空格隔开
每次修改 端口和服务后 /etc/firewalld/zones/public.xml 文件就会被修改 所以也可以在文件中之间修改 然后重新加载
firewall-cmd --permanent --zone=public --add-rich-rule=“rule family=“ipv4” source address=“192.168.0.4/24” service name=“http” accept” 设置某个ip 访问某个服务 (ip 192.168.0.4/24 访问 http).设置后 public.xml 就会出现变化
firewall-cmd --permanent --zone=public --remove-rich-rule=“rule family=“ipv4” source address=“192.168.0.4/24” service name=“http” accept” 删除上面设置的规则
端口转发
先开启允许伪装IP
firewall-cmd --query-masquerade 检查是否允许伪装IP
firewall-cmd --add-masquerade 允许防火墙伪装IP
firewall-cmd --remove-masquerade 禁止防火墙伪装IP
设置转发
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=3753 然后转发 tcp 22 端口至 3753
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toaddr=192.168.1.100 转发 22 端口数据至另一个 ip 的相同端口上
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=2055:toaddr=192.168.1.100 转发 22 端口数据至另一 ip 的 2055 端口上
参考博客:http://blog.java1234.com/blog/articles/327.html
PS:至此结束,再接再厉