详解firewall的规则设置与命令(⽩名单设置)
⼀. 设置firewall规则
例1:对外暴露8080端⼝
firewall-cmd --permanent --add-port=8080/tcp
例2:使mysql服务的3306端⼝只允许192.168.1.1/24⽹段的服务器能访问
#添加规则
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.1/24" port protocol="tcp" port="3306" accept"
#reload使⽣效
firewall-cmd --reload
例3:端⼝转发,将到本机的3306端⼝的访问转发到192.168.1.1服务器的3306端⼝
# 开启伪装IP
firewall-cmd --permanent --add-masquerade
# 配置端⼝转发
firewall-cmd --permanent --add-forward-port=port=3306:proto=tcp:toaddr=192.168.1.2:toport=13306
注意:如果不开启伪装IP,端⼝转发会失败;其次,要确保源服务器上的端⼝(3306)和⽬标服务器上的端⼝(13306)是开启的。
⼆. firewall命令
1.启动, 停⽌, 重启firewalld
1. 停⽌
systemctl stop firewalld.service
2. 启动
systemctl start firewalld.service
3. 重启
systemctl restart firewalld.service
4. 查看状态:
systemctl status firewalld
5.禁⽌firewall开机启动
systemctl disable firewalld
6. 设置开机启⽤防⽕墙:
systemctl enable firewalld.service
2.查看firewall规则与状态
1. 查看默认防⽕墙状态(关闭后显⽰notrunning,开启后显⽰running)
firewall-cmd --state
2. 查看防⽕墙规则(只显⽰/etc/firewalld/l中防⽕墙策略)
firewall-cmd --list-all
3. 查看所有的防⽕墙策略(即显⽰/etc/firewalld/zones/下的所有策略)
firewall-cmd --list-all-zones
4. 重新加载配置⽂件
firewall-cmd --reload
3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显⽰状态: firewall-cmd --state
查看所有打开的端⼝: firewall-cmd --zone=public --list-ports
更新防⽕墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接⼝所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
4. 那怎么开启⼀个端⼝呢
1. 添加(--permanent永久⽣效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=80/tcp --permanent
2. 重新载⼊(修改规则后使其⽣效)
firewall-cmd --reload
3. 查看
firewall-cmd --zone= public --query-port=80/tcp
4. 删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent
因为在/usr/lib/firewalld/services/中事先定义了l的相应的规则
5. systemctl是CentOS7的服务管理⼯具中主要的⼯具,它融合之前service和chkconfig的功能于⼀体。ssh命令指定端口
启动⼀个服务:systemctl start firewalld.service
关闭⼀个服务:systemctl stop firewalld.service
重启⼀个服务:systemctl restart firewalld.service
显⽰⼀个服务的状态:systemctl status firewalld.service
在开机时启⽤⼀个服务:systemctl enable firewalld.service
在开机时禁⽤⼀个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论