1.firewalld 中常用的区域名称及策略规则

2.firewalld-cmd 命令中使用的参数以及作用

与 Linux 系统中其他的防火墙策略配置工具一样,使用firewalld 配置的防火墙策略默认为运行时(Runtime)模式,又称为当前生效模式,而且随着系统的重启会失效。

如果想让配置策略一直存在,就需要使用永久(Permanent)模式了,方法就是在用firewall-cmd 命令正常设置防火墙策略时添加--permanent 参数,这样配置的防火墙策略就可以永久生效了。

但是,永久生效模式有一个“不近人情”的特点,就是使用它设置的策略只有在系统重启之后才能自动生效。如果想让配置的策略立即生效,需要手动执行firewall-cmd --reload 命令。

查看 firewalld 服务当前所使用的区域:

[root@centos ~]# firewall-cmd --get-default-zone
public

查询ens33 网卡在firewalld 服务中的区域

[root@centos ~]# firewall-cmd --get-zone-of-interface=ens33
public  

把 firewalld 服务中ens33 网卡的默认区域修改为external,并在系统重启后生效。分别查看当前与永久模式下的区域名称:

[root@centos ~]# firewall-cmd --permanent --zone=external --change-interface=ens33
success
[root@centos ~]# firewall-cmd --get-zone-of-interface=ens33
external
[root@centos ~]# firewall-cmd --permanent --get-zone-of-interface=ens33
no zone

把 firewalld 服务的当前默认区域设置为public:

root@centos ~]# firewall-cmd --set-default-zone=public
success
[root@centos ~]# firewall-cmd --get-default-zone
public  

启动/关闭firewalld 防火墙服务的应急状况模式,阻断一切网络连接(当远程控制服务器时请慎用):

[root@centos ~]# firewall-cmd --panic-on
success
[root@centos ~]# firewall-cmd --panic-off
success

查询 public 区域是否允许请求SSH 和HTTPS 协议的流量:

[root@centos ~]# firewall-cmd --zone=public --query-service=ssh
yes
[root@centos ~]# firewall-cmd --zone=public --query-service=https
no

把 firewalld 服务中请求HTTPS 协议的流量设置为永久允许,并立即生效:

[root@centos ~]# firewall-cmd --zone=public --add-service=https
success
[root@centos ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@centos ~]# firewall-cmd --reload
success

把 firewalld 服务中请求HTTP 协议的流量设置为永久拒绝,并立即生效:

[root@centos ~]# firewall-cmd --permanent --zone=public --remove-service=http
Warning: NOT_ENABLED: http
success
[root@centos ~]# firewall-cmd --reload
success

把在firewalld 服务中访问8080 和8081 端口的流量策略设置为允许,但仅限当前生效:

[root@centos ~]# firewall-cmd --zone=public --add-port=8080-8081/tcp
success
[root@centos ~]# firewall-cmd --zone=public --list-ports
8080-8081/tcp

把原本访问本机 888 端口的流量转发到22 端口,要且求当前和长期均有效:

流量转发命令格式为 firewall-cmd --permanent --zone=<区域> --add-forward-port=port=<源端口号>:proto=<协议>:toport=<目标端口号>:toaddr=<目标IP 地址>

[root@centos ~]# firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10
success
[root@centos ~]# firewall-cmd --reload
success

firewalld 中的富规则表示更细致、更详细的防火墙策略配置,它可以针对系统服务、端口号、源地址和目标地址等诸多信息进行更有正对性的策略配置。它的优先级在所有的防火墙策略中也是最高的。

比如,我们可以在firewalld 服务中配置一条富规则,使其拒绝192.168.10.0/24 网段的所有用户访问本机的ssh 服务(22 端口):

[root@centos ~]# firewall-cmd --permanent --zone=public --add-rich-rule="
rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject"
success
[root@centos ~]# firewall-cmd --reload
success

在客户端使用 ssh 命令尝试访问192.168.10.10 主机的ssh 服务(22 端口):

[root@client A ~]# ssh 192.168.10.10
Connecting to 192.168.10.10:22...
Could not connect to '192.168.10.10' (port 22): Connection failed.

22.firewalld的更多相关文章

  1. iptables规则备份和恢复、firewalld的9个zone、以及firewalld关于zone和service的操作 使用介绍

    第7周第5次课(5月11日) 课程内容: 10.19 iptables规则备份和恢复10.20 firewalld的9个zone10.21 firewalld关于zone的操作10.22 firewa ...

  2. centos 7.0 修改ssh默认连接22端口 和 添加防火墙firewalld 通过端口

    首先 先做的就是 修改ssh的默认端口22 需要修改文件 /etc/ssh/sshd_config 使用命令 vi /etc/ssh/sshd_config [root@localhost ~]# v ...

  3. Linux网络相关命令firewalld和netfilter、iptables 使用(6/22)

    iptables和netfilter的关系: netfilter在内核空间的代码根据table中的rules,完成对packet的分析和处置.但是这些table中的具体的防火墙rules,还是必须由系 ...

  4. Linux防火墙配置(iptables, firewalld)

    netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...

  5. centos7 开启防火墙端口 firewalld

    systemctl start firewalld firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd -- ...

  6. 第8章 Iptables与Firewalld防火墙

    章节简述: 红帽RHEL7系统已经用firewalld服务替代了iptables服务,新的防火墙管理命令firewall-cmd与图形化工具firewall-config. 本章节基于数十个防火墙需求 ...

  7. centos7通过firewalld更改sshd端口

    1.设置selinux端口 [root@hn ~]# semanage port -l|grep ssh -bash: semanage: 未找到命令 [root@hn ~]# whereis sem ...

  8. CentOS7安全设置 yum-cron系统自动更新,firewalld防火墙简单使用

    PermitRootLogin nosystemctl restart sshd.service; yum -y install firewalld; systemctl start firewall ...

  9. FirewallD 详解

    在CentOS7开始,默认是没有iptables的,而是使用了firewall防火墙.与时俱进,简单的整理了一下firewall的使用方法.关于详细的介绍参考官网,就不搬字了.这个网站有中文选项.可以 ...

随机推荐

  1. [从源码学设计]蚂蚁金服SOFARegistry之服务上线

    [从源码学设计]蚂蚁金服SOFARegistry之服务上线 目录 [从源码学设计]蚂蚁金服SOFARegistry之服务上线 0x00 摘要 0x01 业务领域 1.1 应用场景 1.1.1 服务发布 ...

  2. 深入理解Kafka必知必会(1)

    Kafka的用途有哪些?使用场景如何? 消息系统: Kafka 和传统的消息系统(也称作消息中间件)都具备系统解耦.冗余存储.流量削峰.缓冲.异步通信.扩展性.可恢复性等功能.与此同时,Kafka 还 ...

  3. 杭电OJ2005---第几天?(c++)

    Problem Description 给定一个日期,输出这个日期是该年的第几天. Input 输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外 ...

  4. WPF DataGrid与ListView性能对比与场景选择

    开门见山的说 性能对比: 在Demo中,DataGrid与ListView默认开启虚拟化(可以理解为动态渲染,类似懒加载只渲染屏幕可以看见的地方) DataGrid渲染10列50行随机字符280ms ...

  5. 【SpringBoot1.x】RestfulCRUD

    SpringBoot1.x RestfulCRUD 文章源码 添加资源 将所有的静态资源都添加到 src/main/resources/static 文件夹下,所有的模版资源都添加到 src/main ...

  6. 搞定面试官:咱们从头到尾再说一次 Java 垃圾回收

    接着前几天的两篇文章,继续解析JVM面试问题,送给年后想要跳槽的小伙伴 万万没想到,面试中,连 ClassLoader类加载器 也能问出这么多问题..... 万万没想到,JVM内存区域的面试题也可以问 ...

  7. Ubuntu 18.04.4 LTS 更换国内系统源

    Ubuntu 18.04.4 LTS 更换国内系统源 1.1) 好习惯先做备份在干活: mv /etc/apt/sources.list /etc/apt/sources.list.bak 1.2) ...

  8. ubuntu 安装 docker 并配置镜像加速(使用 apt-get 进行安装)

    ubuntu 安装docker CentOS docker安装 https://blog.csdn.net/weixin_44953227/article/details/108597310 你需要这 ...

  9. 【Linux】shell脚本实现多并发

    情景 shell脚本的执行效率虽高,但当任务量巨大时仍然需要较长的时间,尤其是需要执行一大批的命令时.因为默认情况下,shell脚本中的命令是串行执行的.如果这些命令相互之间是独立的,则可以使用&qu ...

  10. URL重定向 - Pikachu

    概述: 不安全的url跳转问题可能发生在一切执行了url地址跳转的地方.如果后端采用了前端传进来的(可能是用户传参,或者之前预埋在前端页面的url地址)参数作为了跳转的目的地,而又没有做判断的话就可能 ...