必看!盘点一下Linux中firewalld防火墙的相关设置
Posted Jzy的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了必看!盘点一下Linux中firewalld防火墙的相关设置相关的知识,希望对你有一定的参考价值。
firewalld将网卡对应到不同的区域(zone),zone 默认共有9个,
block dmzdrop external home internal public trusted work.
drop(丢弃)
任何接收的网络数据包都被丢弃,没有任何回复。仅能有发送出去的网络连接。
block(限制)
任何接收的网络连接都被IPv4 的 icmp-host-prohibited 信息和 IPv6 的 icmp6-adm-prohibited 信息所拒绝。
public(公共)
在公共区域内使用,不能相信网络内的其他计算机不会对您的计算机造成危害,只能接收经过选取的连接。
external(外部)
特别是为路由器启用了伪装功能的外部网。您不能信任来自网络的其他计算,不能相信它们不会对您的计算机造成危害,只能接收经过选择的连接。
dmz(非军事区)
用于您的非军事区内的电脑,此区域内可公开访问,可以有限地进入您的内部网络,仅仅接收经过选择的连接。
work(工作)
用于工作区。您可以基本相信网络内的其他电脑不会危害您的电脑。仅仅接收经过选择的连接。
home(家庭)
用于家庭网络。您可以基本信任网络内的其他计算机不会危害您的计算机。仅仅接收经过选择的连接。
internal(内部)
用于内部网络。您可以基本上信任网络内的其他计算机不会威胁您的计算机。仅仅接受经过选择的连接。
trusted(信任)
可接受所有的网络连接。
指定其中一个区域为默认区域是可行的。当接口连接加入了NetworkManager,它们就被分配为默认区域。
不同的区域之间的差异是其对待数据包的默认行为不同,在CentOS7系统中,默认区域被设置为public.
下面是一些关于防火墙的设置
ls /usr/lib/firewalld/services/ //可以使用容易理解的名称表示的所有服务
firewall-cmd --get-services //查看支持的所有服务名称
firewall-cmd --get-zones //查看所有区域
firewall-cmd --get-default-zone //查看当前默认区域
firewall-cmd --get-zone-of-interface=ens33//查看指定网卡所处的区域
firewall-cmd --zone=public --query-service=ssh//查看指定区域中有没有相关的服务开放
firewall-cmd--zone=public --query-service=http
firewall-cmd --list-services //查看当前区域允许的服务
firewall-cmd --reload //重新加载配置文件
--------设置服务或端口放行--------
firewall-cmd--add-service=http
firewall-cmd--permanent --zone=public --add-service=http
firewall-cmd--reload
firewall-cmd--permanent --zone=public --add-port=80/tcp
firewall-cmd--reload
firewall-cmd--zone=home --remove-service=http
-------为网卡设置区域------
firewall-cmd--permanent --zone=external --change-interface=ens33
firewall-cmd--reload--reload
firewall-cmd --permanent --zone=public--add-rich-rule="rule family="ipv4" sourcee
address="172.27.10.0/22" service name="ssh" reject"//拒绝172.27.10.0/22网络用户访问ssh
-------设置默认区域------
firewall-cmd--set-default-zone=work--set-default-zone=work
-----查看活动区域及端口-----
firewall-cmd--get-active-zones--get-active-zones
firewall-cmd --zone=work --add-interface=ens37 //将接口加入到相关区域
firewall-cmd --zone=public --remove-interface=ens37//将接口移出相关的区域回到默认区域
以上是关于必看!盘点一下Linux中firewalld防火墙的相关设置的主要内容,如果未能解决你的问题,请参考以下文章
Linux中netfilter火墙访问控制策略优化详解(下)—firewalld