firewallld

rhel 7:firewall-cmd工具,firewalld服务

1、区域:

firewalld将网卡对应到不同的区域(zone),通过不同的zone定义了不同的安全等级

trusted :允许所有流量通过
home/internal:仅允许ssh数据通过
work:仅允许ssh,ipp-client,dhcpv6-client数据通过
public:默认区域,仅允许ssh,dhcpv6-client数据通过
external:仅允许ssh数据通过,通过该区域的数据将会伪装(SNAT/DNAT)
dmz:仅允许ssh数据通过
block:任何传入的网络数据包都将被阻止。拒绝所有流量
drop:拒绝所有流量,没有返回回应消息
2、命令详解
firewall-cmd --permanent
--permanent   #永久生效的配置参数、资源、端口以及服务等信息
1、域zone相关的命令
--get-default-zone  #查询默认的区域名称
--set-default-zone=<区域名称>   #设置默认的区域
--get-active-zones  #显示当前正在使用的区域与网卡名称
--get-zones         #显示总共可用的区域
2、services管理的命令
--add-service=<服务名> --zone=<区域>       #设置指定区域允许该服务的流量
--remove-service=<服务名> --zone=<区域>    #设置指定区域不再允许该服务的流量
3、Port相关命令
--add-port=<端口号/协议> --zone=<区域>      #设置指定区域允许该端口的流量
--remove-port=<端口号/协议> --zone=<区域>   #设置指定区域不再允许该端口的流量
4、查看所有规则的命令
--list-all --zone=<区域>  显示指定区域的网卡配置参数、资源、端口以及服务等信息
--reload   #让“永久生效”的配置规则立即生效,并覆盖当前的配置规则
3、firewalld配置使用

1、查看默认区域:

环境:
firewall-server/ip:192.168.94.133
test/ip:192.168.94.134

[root@firewall-server ~]# netstat -lntp | grep :80
tcp6       0      0 :::80                   :::*                    LISTEN      1250/httpd
[root@firewall-server ~]# systemctl start firewalld
[root@firewall-server ~]# firewall-cmd --get-default-zone
public
验证:
[root@test ~]# curl -I 192.168.94.133
curl: (7) Failed connect to 192.168.94.133:80; No route to host

2、更改默认区域

[root@firewall-server ~]# firewall-cmd --set-default-zone=trusted
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
[root@test ~]# curl -I 192.168.94.133
HTTP/1.1 200 OK
================================================
修改回默认区域:
[root@firewall-server ~]# firewall-cmd --set-default-zone=public
success
[root@firewall-server ~]# firewall-cmd --reload
success

3.向public区域添加服务

[root@firewall-server ~]# firewall-cmd --permanent --add-service=http --zone=public
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
[root@test ~]# curl -I 192.168.94.133
HTTP/1.1 200 OK

4.指定IP地址为192.168.94.134/24的客户端进入drop区域

[root@firewall-server ~]# firewall-cmd --permanent --add-source=192.168.94.134/24 --zone=drop
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
[root@test ~]# curl -I 192.168.94.133  #访问不通

5.将192.168.94.134/24移除drop区域

[root@firewall-server ~]# firewall-cmd --permanent --remove-source=192.168.94.134/24 --zone=drop
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
[root@test ~]# curl -I 192.168.94.133
HTTP/1.1 200 OK

6.向pubic区域添加服务,以添加端口的方式

[root@firewall-server ~]# firewall-cmd --permanent --add-port=80/tcp --zone=public
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
[root@test ~]# curl -I 192.168.94.133:80
HTTP/1.1 200 OK

7、删除服务、端口

[root@firewall-server ~]# firewall-cmd --permanent --remove-service=http --zone=public 
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
用192.168.94.134访问192.168.94.133机器
[root@test ~]# curl -I http://192.168.94.133   #访问通
HTTP/1.1 200 OK
====================================================================================
[root@firewall-server ~]# firewall-cmd --permanent --remove-port=80/tcp --zone=public 
success
[root@firewall-server ~]# firewall-cmd --reload
success
验证:
在192.168.94.134访问192.168.94.133机器
[root@test ~]# curl -I http://192.168.94.133  #访问失败
curl: (7) Failed connect to 192.168.94.133:80; No route to host
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 防火墙的概念iptables的简介iptables命令网络防火墙NATfirewalld服务 一、防火墙的概念 (...
    哈喽别样阅读 5,878评论 0 1
  • 不同Linux内核版本的防火墙软件 在设置 Linux 防火墙规则时,可以先用 uname -r 查看一下 Lin...
    Zhang21阅读 17,013评论 0 11
  • FirewallD是 iptables 的前端控制器,用于实现持久的网络流量规则。它提供命令行和图形界面,在大多数...
    759_1ebb阅读 4,181评论 0 3
  • 1.简介  firewalld是CentOS 7.0新推出的管理netfilter的工具 firewalld是...
    尛尛大尹阅读 5,706评论 0 0
  • 第一次月考结束后,刚从战场下来的同学们心里都还留着“余味”,我们对于过去一个月,怀着一丝遗憾,一丝喜悦,亦...
    颜娘娘的碎碎念阅读 1,742评论 0 1

友情链接更多精彩内容