linux firewalld简介
2023-12-13 04:16:21
    		firewalld简介
Firewalld上有一些预定义区域,可分别进行自定义,下表介绍了这些初始区域配置
firewalld将所有传入流量划分成区域,每个区域都具有自己的一套规则
 任何新网络接口默认区域都将设置为public区域
| 区域名称 | 默认配置 | 
|---|---|
| trusted | 可信区域,防火墙放行一切流量,等同于关闭防火墙功能 | 
| home | 区全域内主动发起连接的流入回程数据包允许通过,默认放行ssh,mdns,ipp-client,samba-clent或dhcpv6-client服务 //别人不能连进来,但是区域内发起的请求,回程数据能进来 | 
| internal | 与home区域相同 | 
| work | 区域内主动发起连接的流入回程数据包允许通过,放行ssh,dhcpv6-client服务 | 
| external | 区域内主动发起连接的流入回程数据包允许通过,放行ssh服务匹配,开启地址伪装功能 | 
| dmz | 区域内主动发起连接的流入回程数据包允许通过,放行ssh服务匹配 | 
| block | 区域内主动发起连接的流入回程数据包允许通过 | 
| drop | 对进入该区域的所有数据包丢弃,并且不进行任何回包,区域内主动发起连接的流入回程数据包允许通过 | 
| public | 默认区域,拒绝除与出站有关的通信或预定义服务(ssh,dhcpv6-client)以外的所有进站通信 | 
配置
firewall-cmd --set-default-zone=drop    //set 设置  设置默认区域为drop区域
firewall-cmd --reload   //firewall重新生效
firewall-cmd --get-default-zone    //get  查看  查看默认区域
firewall-cmd --list-all    //查看放行了哪些服务
 
firewall-cmd命令行工具
| 参数 | 作用 | 
|---|---|
| –get-default-zone | 查访默认的区域名称 | 
| –set-default-zone=(区域名称) | 设置默认的区域,使其永久生效 | 
| –list-all | 显示当前区域的网卡配置参数,资源,端口以及服务等信息 | 
| –list-all-zone | 显示所有区域的网卡配置参数,资源,端口以及服务等信息 | 
| –get-zones | 显示可用可用的区域 | 
| –get-active-zones | 显示当前正在使用的区域,来源地址和网卡名称 | 
| –add-source= | 将源自此IP或子网的流量导向指定的区域 | 
| –remove-source= | 不再将源自此IP或子网的流量导向这个区域 | 
| –change-source= | 将源自此IP或子网的流量导向指定到新的区域 | 
firewall-cmd --add-source=172.25.250.11 --zone=drop   //把源IP为172.25.250.11引入到drop区域
 
| 参数 | 作用 | 
|---|---|
| –add-interface=(网卡名称) | 将源自该网卡的所有流量都导向某个指定区域 | 
| –change-interface=(网卡名称) | 将某个网卡与区域进行关联 | 
| –get-services | 显示预定义的服务 | 
| –add-service=(服务名) | 设置默认区域允许该服务的流量 | 
| –add-port=(端口号/协议) | 设置默认区域允许该端口的流量 | 
| –remove-service=(服务名) | 设置默认区域不再允许该服务的流量 | 
| –remove-port=(端口号/协议) | 设置默认区域不再允许该端口的流量 | 
| –permanent | 让配置永久生效 | 
| –reload | 让“永久生效”的配置规则立即生效,并覆盖当前的配置规则 | 
firewall-cmd --change-interface=ens32 --zone=trusted   //将ens32网卡该改变到trusted区域
firewall-cmd --remove-interface=ens32 --zone=trusted   //把ens32网卡从trusted区域放出来
 
生产配置
firewall-cmd --permanent --add-service=http   //最好要加permanent   永久放行http服务
firewall-cmd --list-all   //查看当前区域的所有规则
 
firewall-cmd --get-service   //查看放行的服务
firewall-cmd --permanent --add-port=90/tcp   //永久放行端口为tcp 90
放行nfs要放行三个服务
firewall-cmd --permanent --add-service=mountd  
firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=rpc-bind
 
管理firewalld
可以通过三种方式来管理firewalld
    使用命令行工具firewall-cmd
    	运行时配置
    	永久时配置  --permanent
	
	使用图形工具firewall-config
    	打开方式applications->sundry->firewall
    
    使用/etc/firewalld/中的配置文件(不建议)
还有个web端的firewall
	cockpit
		systemctl start cockpik    //开启cockpik服务
 
firewall有两种模式
    runtime临时模式:修改规则马上生效,但如果重启服务则马上失效,测试建议
	permanent持久模式:修改规则后需要reload重载服务才会生效,生产建议
 
放行规则
firewall-cmd --add-service=http   //默认runtime模式,放行80端口
firewall-cmd --permanent --add-service=http  //permanent模式下放行80端口
firewall-cmd --reload   //需要重启firewall服务
 
防火墙规则匹配
firewalld会对于一个接收到的请求具体使用哪个zone,firewalld通过三种方式来判断的:
? 1.source (来源地址)
? 2.interface (接收请求的网卡)
? 3.firewalld配置的默认区域(zone)
    			文章来源:https://blog.csdn.net/qq2353177176/article/details/134833307
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
    	本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!