linux笔记6-firewalld防火墙

2024-02-28 20:59

本文主要是介绍linux笔记6-firewalld防火墙,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 区域概念与作用
    • 字符管理工具
    • 图形配置工具
    • 服务的访问控制列表

RHEL7已经使用firewalld服务替代了iptables服务,但但是RHEL7中仍然可以使用iptables命令来管理内核的netfilter。其实iptalbes 和firewalld都不是真正的防火墙,他们只是用来定义防火墙规则的工具。定义好规则后交给netfilter来读取,从而实现防火墙功能。
Firewal是RHEL7中默认的防火墙管理工具,特点事拥有运行时配置与永久配置选型,能够支持动态啊更新及区域功能概念。提供了新的防火墙管理命令 firewall-cmd 和图形化工具firewall-config。

区域概念与作用

防火墙的网络区域定义了网络拦截的可信等级。我们可以根据不同的场景来调用不同的firewalld区域,简单来讲就是为用户预先准备了几套规则组合,我们可以根据场景选择不同的规则组合。默认区域是public
区域规则清单如下:
在这里插入图片描述
在这里插入图片描述

字符管理工具

firewall-cmd 命令可以高效的配置防火墙
firewalld 服务有两份规则策略配置记录,RunTime 当前生效的 Permanent 永久生效的,当修改的是永久生效的记录时必须执行 firewall-cmd -reload 命令来生效。命令参数如下:
在这里插入图片描述
在这里插入图片描述
操作示例:

[root@bogon ~]# firewall-cmd --get-default-zone  --查看当前默认区域
public
[root@bogon ~]# firewall-cmd --get-zone-of-interface=eno16777728
no zone
[root@bogon ~]# firewall-cmd --get-zone-of-interface=ens33 --查看 网卡ens33区域
dmz
[root@bogon ~]# firewall-cmd --zone=public --query-service=ssh //查看public区域是否支持ssh协议
yes
[root@bogon ~]# firewall-cmd --zone=public --query-service=http//查看public区域是否支持http协议
no
[root@bogon ~]# firewall-cmd --set-default-zone=dmz //设置默认规则为 dmz
success
[root@bogon ~]# firewall-cmd --reload //让规则修改永远生效
success
[root@bogon ~]# firewall-cmd --panic-on
success
[root@bogon ~]# 
[root@bogon ~]# firewall-cmd --panic-on  启动应急情况模式,会阻断所有网络连接
success
[root@bogon ~]# firewall-cmd --panic-off  --关闭应急情况模式
success方法1同时设置运行时和永久性允许https
Last login: Fri Nov 20 00:23:50 2020
[root@bogon ~]# firewall-cmd  --zone=public --add-service=https
success
[root@bogon ~]# firewall-cmd --permanent  --zone=public --add-service=https
success
方法2 同时设置运行时和永久性允许https 先设置永久性 然后 relaod即可
[root@bogon ~]# firewall-cmd --permanent  --zone=public --add-service=https
Warning: ALREADY_ENABLED: https
success
[root@bogon ~]# firewall-cmd --reload
success
--不允许http服务通过public区域
[root@bogon ~]# firewall-cmd --permanent  --zone=public --remove-service=http
Warning: NOT_ENABLED: http
success
[root@bogon ~]# firewall-cmd --reload
success
--允许8080 8081端口流量经过public区域
[root@bogon ~]# firewall-cmd --permanent  --zone=public --add-port=8080-8081/tcp
success
--查看是否生效
[root@bogon ~]# firewall-cmd --zone=public --list-ports
58625/tcp 10020/tcp 59173/tcp 80/tcp 48533/tcp 10020/udp 10030/udp
[root@bogon ~]# firewall-cmd --reload
success
--reload后再次查看是否生效
[root@bogon ~]# firewall-cmd --zone=public --list-ports
58625/tcp 10020/tcp 59173/tcp 80/tcp 48533/tcp 10020/udp 10030/udp 8080-8081/tcp
--将ens33区域修改为external
[root@bogon ~]# firewall-cmd --zone=external --change-interface=ens33
success
[root@bogon ~]# firewall-cmd --get-zone-of-interface=ens33
external
--设置富规则,拒绝192.168.10.0-24网段的ssh服务
--firewalld服务富规则用来设置对服务、端口、协议进行详细的配置,优先级最高  
--(该设置目前报错 日后排查)
[root@bogon ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule  family="ipv4" sourceaddress="192.168.10.0/24" service name ="ssh"  reject "
Error: INVALID_RULE: internal error in _lexer(): =ssh 

图形配置工具

执行firewall-config命令即可看到firewalld防火墙图形化工具

服务的访问控制列表

TCP_wrappers是一款基于IP层的ACL访问控制列表流量监控程序,它根据来访主机地址与本机目标服务程序制定规则,如果匹配到允许的规则则放行流量,如果匹配到拒绝的流量则拒绝。如果都没有匹配到默认也放行。
允许名单:/etc/hosts.allow
拒绝名单:/etc/hosts.deny
指定客户端规则如下:在这里插入图片描述
在这里插入图片描述
限制只有192.168.10. 网段的主机可以访问本机的httpd服务:

[root@bogon ~]# vi /etc/hosts.allow
httpd:192.168.10.
[root@bogon ~]# vi /etc/hosts.deny
httpd:*
~

这篇关于linux笔记6-firewalld防火墙的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/756608

相关文章

linux生产者,消费者问题

pthread_cond_wait() :用于阻塞当前线程,等待别的线程使用pthread_cond_signal()或pthread_cond_broadcast来唤醒它。 pthread_cond_wait() 必须与pthread_mutex 配套使用。pthread_cond_wait()函数一进入wait状态就会自动release mutex。当其他线程通过pthread

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

RedHat运维-Linux文本操作基础-AWK进阶

你不用整理,跟着敲一遍,有个印象,然后把它保存到本地,以后要用再去看,如果有了新东西,你自个再添加。这是我参考牛客上的shell编程专项题,只不过换成了问答的方式而已。不用背,就算是我自己亲自敲,我现在好多也记不住。 1. 输出nowcoder.txt文件第5行的内容 2. 输出nowcoder.txt文件第6行的内容 3. 输出nowcoder.txt文件第7行的内容 4. 输出nowcode

【Linux进阶】UNIX体系结构分解——操作系统,内核,shell

1.什么是操作系统? 从严格意义上说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境。我们通常将这种软件称为内核(kerel),因为它相对较小,而且位于环境的核心。  从广义上说,操作系统包括了内核和一些其他软件,这些软件使得计算机能够发挥作用,并使计算机具有自己的特生。这里所说的其他软件包括系统实用程序(system utility)、应用程序、shell以及公用函数库等

《offer来了》第二章学习笔记

1.集合 Java四种集合:List、Queue、Set和Map 1.1.List:可重复 有序的Collection ArrayList: 基于数组实现,增删慢,查询快,线程不安全 Vector: 基于数组实现,增删慢,查询快,线程安全 LinkedList: 基于双向链实现,增删快,查询慢,线程不安全 1.2.Queue:队列 ArrayBlockingQueue:

Windows/macOS/Linux 安装 Redis 和 Redis Desktop Manager 可视化工具

本文所有安装都在macOS High Sierra 10.13.4进行,Windows安装相对容易些,Linux安装与macOS类似,文中会做区分讲解 1. Redis安装 1.下载Redis https://redis.io/download 把下载的源码更名为redis-4.0.9-source,我喜欢跟maven、Tomcat放在一起,就放到/Users/zhan/Documents

操作系统实训复习笔记(1)

目录 Linux vi/vim编辑器(简单) (1)vi/vim基本用法。 (2)vi/vim基础操作。 进程基础操作(简单) (1)fork()函数。 写文件系统函数(中等) ​编辑 (1)C语言读取文件。 (2)C语言写入文件。 1、write()函数。  读文件系统函数(简单) (1)read()函数。 作者本人的操作系统实训复习笔记 Linux

Linux系统稳定性的奥秘:探究其背后的机制与哲学

在计算机操作系统的世界里,Linux以其卓越的稳定性和可靠性著称,成为服务器、嵌入式系统乃至个人电脑用户的首选。那么,是什么造就了Linux如此之高的稳定性呢?本文将深入解析Linux系统稳定性的几个关键因素,揭示其背后的技术哲学与实践。 1. 开源协作的力量Linux是一个开源项目,意味着任何人都可以查看、修改和贡献其源代码。这种开放性吸引了全球成千上万的开发者参与到内核的维护与优化中,形成了