启动安全
systemctl start firewalld
中止bash
systemctl stop firewalld
重启ssh
systemctl restart firewalld
查询状态工具
systemctl status firewalld
另外,对于firewalld来讲还可使用自身的firewall-cmd工具来查询运行状态命令行
firewall-cmd --state
启用开机自启动rest
systemctl enable firewalld
禁用开机自启动code
systemctl disable firewalld
查看自动启动状态xml
systemctl is-enabled firewalld
直接使用firewall-cmd修改的规则是不须要更新就能够直接生效的,可是若是加了--permanent
参数,或者直接编辑xml文件以后就须要咱们手动reload了,blog
firewall-cmd提供了两个更新规则的参数:--reload和--complete-reload,rem
前者只是更新须要更新规则,并且更新的过程当中不会影响现有的链接,
然后者在更新时会将全部的规则清除掉而后重建,并且为了安全考虑,在更新以前首先会将策略设置为DROP,等更新完成以后再恢复为ACCEPT,这样就会对现有链接形成影响,因此若是没有特殊需求咱们应该尽可能使用前者。具体命令以下
firewall-cmd --reload firewall-cmd --complete-reload
对于firewalld来讲最重要的就是策略操做了,策略操做主要有三种方法:使用firewall-config操做、使用firewall-cmd操做和直接编辑xml文件,firewall-config是图形化工具,firewall-cmd是命令行工具。
firewall-cmd中关于规则的命令很是多,可是有四大类使用频率很是高的命令:--add-xxx、--remove-xxx、--query-xxx、--get-xxx以及--list-xxx,这里前两个很是容易理解,一个是添加一个是删除。
--query-xxx主要用于布尔值的查询,好比
#这个命令用于查询在public这个zone中是否包含ssh这个服务。 firewall-cmd --zone=public --query-service=ssh
--get-xxx主要用于获取特定的内容,好比
firewall-cmd --get-zones #这样就能够获取到预设的zones,默认状况下返回结果为 block dmz drop external home internal public trusted work
--list-xxx主要用于按必定条件进行查询(不过有的list命名也不须要条件),好比
#这个命令能够返回public这个zone中所包含的services。 firewall-cmd --zone=public --list-services
表示是否将修改后的规则保存下来,若是不加这个参数,那么所作的修改当时会当即生效,可是在firewalld重启以后就会丢失,而加上这个参数后所作的修改就会永久保存下来,不过这时的修改不会当即生效而是须要reload后才能够生效。其实这个也很是容易理解,当不加--permanent
修改规则时firewalld
会实际修改运行时的规则,而若是加了这个参数firewalld
实际上是去修改的xml配置文件,和咱们直接编辑xml文件同样,因此就须要reload才能够生效。