Centos7-防火墙firewalld使用笔记

记录 Centos7 中的防火墙 firewalld 的使用及一些常用命令

启用 firewalld

开启服务

1
sudo systemctl start firewalld

关闭服务

1
sudo systemctl stop firewalld

查看服务状态

1
sudo systemctl status firewalld

开机启用

1
sudo systemctl enable firewalld

开机禁用

1
sudo systemctl disable firewalld

firewall-cmd

查询当前状态

1
2
# sudo firewall-cmd --state
running

关于zone

查询所有

1
2
# sudo firewall-cmd --get-zones
block dmz drop external home internal public trusted work

要将 eth0 接口改用 work zone ,则

1
sudo firewall-cmd --zone=work --change-interface=eth0

查询当前(好像没输出?)

1
sudo firewall-cmd --get-active-zones

查询默认的 zone 配置

1
2
# sudo firewall-cmd --get-default-zone
public

查询当前防火墙配置

查询放空的端口,服务等

1
sudo firewall-cmd --zone=public --list-all

增加配置

1
sudo firewall-cmd --zone=public --add-port=7000/tcp --permanent

这里放空 7000/tcp 端口并持久化

这里 --permanent 表示持久化该配置,没有此参数重启后失效

命令执行后,需执行以下命令才会生效

1
sudo firewall-cmd --reload

这里端口可以是范围,如

1
sudo firewall-cmd --zone=public --add-port=7000-7100/tcp --permanent

ps: 重复添加会提示以下

1
2
3
# sudo firewall-cmd --zone=public --add-port=7000-7100/tcp --permanent
Warning: ALREADY_ENABLED: 7000-7100:tcp
success

删除配置

1
2
3
sudo firewall-cmd --zone=public --permanent --remove-port=5555/tcp
sudo firewall-cmd --zone=public --permanent --remove-port=7000-7100/tcp
sudo firewall-cmd --reload

其他命令

拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic

ssh注意事项

如果你改过 ssh 端口,不是 22,在此时开了防火墙,则会导致你连不上远程服务器了这时就会出现你想连也连不上你的远程服务器了只能去控制台强制关机(如果开了开机自启,我觉得要提交工单了或者重装

开启了 firewalld 服务在默认下是放空了 ssh 服务的,但是改了ssh端口就没用了,此时建议要先还原回22端口。

而且需要注意以下顺序

假如,应先开启 firewalld 服务

如果需要将ssh端口改为 5555,则先将5555/tcp 加到防火墙配置中去,再去修改 /etc/ssh/sshd_config 文件。

0%
隐藏