firewalld防火墙命令行工具

firewall-cmd命令

(1)启动、停止、查看firewalld服务

        在安装CentOS 7系统时,会自动安装firewalld 和图形化工具firewall-config.执行以下命令可 以启动 firewalld 并设置为开机自启动状态。

[root@llcgc ~]# systemctl start firewalld.service    //启动firewalld
[root@llcgc ~]# systemctl enable firewalld.service   //设置firewalld为开机自启动

如果firewalld 正在运行,通过 systemctl status firewalld 或firewall-cmd 命令可以查看其运行 状态.

[root@llcgc ~]# systemctl status firewalld.service或[root@llcgc ~]# firewall-cmd --state

如果想要禁用firewalld,执行以下命令即可实现。

[root@llcgc ~]# systemctl stop firewalld.service        //停止firewalld
[root@llcgc ~]# systemctl disable firewalld.service     //设置firewalld开机不自启动

 

(2)获取预定义信息

firewall-cmd预定义信息主要包括三种:可用的区域、可用的服务以及可用的ICMP阻塞类型. 具体的查看命令如下所示。

[root@llcgc ~]# firewall-cmd --get-zones         //显示预定义的区域
[root@llcgc ~]# firewall-cmd --get-service       //显示预定义的服务
[root@llcgc ~]# firewall-cmd --get-icmptypes     //显示预定义的ICMP类型

(3)区域管理

        使用 firewall-cmd 命令可以实现获取和管理区域,为指定区域绑定网络接口等功能。

具体操作如下所示

[root@llcgc ~]# firewall-cmd --get-default-zone     //显示当前系统中默认区域
public[root@llcgc ~]# firewall-cmd --list-all        //显示默认区域的所有规则
public (active)target: defaulticmp-block-inversion: nointerfaces: ens34 br0sources: services: ssh dhcpv6-clientports: protocols: masquerade: noforward-ports: source-ports: icmp-blocks: rich rules: [root@llcgc ~]# firewall-cmd --get-zone-of-interface=ens34    //显示网络接口ens34对应区域
public[root@llcgc ~]# firewall-cmd --zone=public --change-interface=ens34    //将接口ens34对应区域更改为public区域
[root@llcgc ~]# firewall-cmd --zone=public --list-interfaces 
ens34
[root@llcgc ~]# firewall-cmd --get-zone-of-interface=ens34
public[root@llcgc ~]# firewall-cmd --get-active-zones      //显示所有激活区域
publicinterfaces: ens34

(4)服务管理

        为了方便管理,firewalld预先定义了很多服务,存放在/usr/lib/firewalld/services/目录中. 服务通过单个的XM.配置文件来指定,这些配置文件则按以下格式命名:service-name.xml,每个 文件对应一项具体的网络服务,如 ssh 服务等.与之对应的配置文件中记录了各项服务所使用的 tcp/udp端口.在最新版本的firewalld 中默认已经定义了70多种服务供我们使用,对于每个网络 区域,均可以配置允许访问的服务,当默认提供的服务不适用或者需要自定义某项服务的端口时, 我们需要将service配置文件放置在/etc/firewalld/services/目录中。

        service配置具有以下优点:

        >通过服务名字来管理规则更加人性化。

        >通过服务来组织端口分组的模式更加高效,如果一个服务使用了若干个网络端口,则服务 的配置文件就相当于提供了到这些端口的规则管理的批量操作快捷方式。

firewall-cmd 命令区域中服务管理的常用选项说明

具体操作如下所示

[root@llcgc ~]# firewall-cmd --list-services     //显示默认区域内允许访问的所有服务
ssh dhcpv6-client
[root@llcgc ~]# firewall-cmd --add-service=http    //设置默认区域允许访问http服务
success
[root@llcgc ~]# firewall-cmd --add-service=https    //设置默认区域允许访问httpd服务
success
[root@llcgc ~]# firewall-cmd --list-services        
ssh dhcpv6-client http https
[root@llcgc ~]# firewall-cmd --zone=internal --add-service=mysql       //设置internal区域允许访问mysql服务
success
[root@llcgc ~]# firewall-cmd --zone=internal --remove-service=samba-client      //设置internal区域不允许访问samba-client服务
success
[root@llcgc ~]# firewall-cmd --zone=internal --list-services      //显示internal区域内允许访问的所有服务
ssh mdns dhcpv6-client mysql

(5)端口管理

        在进行服务配置时,预定义的网络服务可以使用服务名配置,服务所涉及的端口就会自动打开。 但是,对于非预定义的服务只能手动为指定的区域添加端口。

        例如,执行以下操作即可实现在internal 区域打开443/TCP端口。

[root@llcgc ~]# firewall-cmd --zone=internal --add-port=443/tcp
success[root@llcgc ~]# firewall-cmd --list-ports --zone=internal 
443/tcp

        若想实现在internal 区域禁止443/TCP端口访问,可执行以下命令。

[root@llcgc ~]# firewall-cmd --zone=internal --remove-port=443/tcp
success[root@llcgc ~]# firewall-cmd --list-ports --zone=internal 

(6)两种配置模式

        firewall-cmd 命令工具有两种配置模式:运行时模式(Runtime mode)表示当前内存中 运行的防火墙配置,在系统或firewalld服务重启.停止时配置将失效:永久模式(Permanent mode 表示重启防火墙或重新加载防火墙时的规则配置,是永久存储在配置文件中的。

firewall-cmd 命令工具与配置模式相关的选项有三个。

> --reload:重新加载防火墙规则并保持状态信息.即将永久配置应用为运行时配置。

> --permanent:带有此选项的命令用于设置永久性规则,这些规则只有在重新启动firewalld 或重新加载防火墙规则时才会生效:若不带有此选项,表示用于设置运行时规则.

> --runtime-to-permanent:将当前的运行时配置写入规则配置文件中,使之成为永久性配置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/616370.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringSecurity入门demo(一)集成与默认认证

一、集成与默认认证: 1、说明:在引入 Spring Security 项目之后,没有进行任何相关的配置或编码的情况下,Spring Security 有一个默认的运行状态,要求在经过 HTTP 基本认证后才能访问对应的 URL 资源,其默认…

1月自考本周末开考!自考考前注意事项及考试技巧

广东省2024年1月高等教育自学考试将于1月13日至14日举行。 注意: 考生应提前至少20分钟进入考场。 开考15分钟后,迟到考生不得进入考场参加当科考试。 2、自考考试必备物品 准考证:进入考场的有效证件,打印后妥善保存 身份证…

C#编程-实现多线程

实现多线程 多线程帮助同时执行各种操作。这为用户节省时间。多线程程序包括一个主线程和其他用户定义的线程以同时执行多个任务。 微处理器为执行的进程分配内存。每个进程占有内存中它们自己的地址空间。但是,所有在进程中的线程占有相同的地址空间。多线程允许在一个程序…

Linux:进程的通信

目录 进程间的通信 管道 1.概念 2.匿名管道 3.命名管道 4.匿名管道与命名管道的区别 5.总结管道的特点 共享内存 1.原理 2.共享内存的建立 3.代码 1.相关函数 2.总结 进程间的通信 1.进程间通信目的 数据传输:一个进程需要将它的数据发送给另一个进程…

软件测试|Beautiful Soup库详细使用指南

简介 Beautiful Soup是一款强大的Python库,广泛用于解析HTML和XML文档,从中提取数据并进行处理。它的灵活性和易用性使得数据抽取变得简单,本文将详细介绍Beautiful Soup库的基本用法和示例。 安装Beautiful Soup 首先,需要确保…

JavaEE学习笔记 2024-1-12 --Tomcat服务器、Servlet

JavaEE JavaEE是企业级开发 是综合性非常强的阶段  包含的知识点:JavaSE,MySQL,JDBC,WEB(HTML,CSS,JS,前端框架),Servlet,JSP,XML,AJAX等技术 1.服务器 JavaEE项目需要运行在服务器之上 WEB服务器就是WEB项目的容器,WEB项目的运行环境,将项目部署到服务器下,可以通过服务器…

Java面试之并发篇(二)

1、前言 本篇主要基于Java面试题之并发篇(一)继续梳理java中关于并发相关的高频面试题。本篇的面试题基于网络整理,和自己编辑。在不断的完善补充哦。 2、synchronized 的原理是什么? synchronized是 Java 内置的关键字,它提供…

软件测试|selenium 元素无法选择异常的原因及解决

简介 在进行 Web 自动化测试时,使用 Selenium 可能会遇到各种异常情况。其中之一就是 ElementNotSelectableException 异常,该异常通常意味着在尝试选择一个不可选元素时出现了问题。本文将详细介绍这个异常的原因、可能的解决方法,并提供示…

韩国LG集团在 CES2024 消费电子展上发布的的无线透明OLED屏幕

国际消费类电子产品展览会(International Consumer Electronics Show,简称CES),由美国电子消费品制造商协会(简称CTA)主办,旨在促进尖端电子技术和现代生活的紧密结合。该展始于1967年&#xff…

Oracle 19c OCP 1z0 082考场真题解析第32题

考试科目:1Z0-083 考试题量:85 通过分数:57% 考试时间:150min本文为云贝教育郭一军(微信:guoyJoe)原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、演绎…

linux centos 账户管理命令

在CentOS或其他基于Linux的系统上,账户管理涉及到用户的创建、修改、删除以及密码的管理等任务。 linux Centos账户管理命令 1 创建用户: useradd username 这将创建一个新用户,但默认不会创建家目录。如果想要创建家目录,可以…

大数据开发工程师需要具备哪些技能?

在回答这个问题之前,需要充分了解一下当前大数据的几个就业方向,可以参考下主流互联网行业的部门架构、职责和JD,大数据开发工程师,总体来说有这么几类,不同的公司叫法不一样: 1、数仓开发工程师 2、算法挖…

ubantu系统运维命令,端口相关操作

1、使用sudo ufw status命令查看所有开放的端口,如下图: 2、使用命令sudo ufw allow 8443,打开端口8443.如下图: 3、使用 sudo ufw reload刷新端口配置,如下图:

软件测试|Selenium 元素不可交互异常ElementNotInteractableException问题分析与解决

简介 在使用 Selenium 进行 Web 自动化测试时,我们可能会遇到各种异常情况。其中之一就是 ElementNotInteractableException 异常,这通常意味着在尝试与页面元素交互时出现了问题。本文将详细介绍这个异常的原因、可能的解决方法,并提供示例…

Python 解决安装三方包失败的问题

pip 安装三方包失败&#xff0c;常见的情况有三种&#xff1a;不能访问源所在服务器&#xff1b;Python 版本不支持&#xff1b;和本地版本冲突。 不能访问源服务器 对于这张问题&#xff0c;有两种解决方法 # 方法一 pip config set global.index-url <源服务器> pip…

MobaXterm游戏讲解

前言 没想到吧&#xff0c;这里还有游戏&#xff0c;以下是玩法 玩法 注 点击Type可以自由更改地图大小 1.Netwalk 这个游戏是用鼠标点击每一个格子&#xff0c;进行旋转方向&#xff0c;使得所有方块连接接来&#xff0c;全部变成亮蓝色 2.Mines 这个就是扫雷了&#xff…

C++I/O流——(2)预定义格式的输入/输出(第一节)

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 含泪播种的人一定能含笑收获&#xff…

【设计模式】01-前言

23 Design Patterns implemented by C. 从本文开始&#xff0c;一系列的文章将揭开设计模式的神秘面纱。本篇博文是参考了《设计模式-可复用面向对象软件的基础》这本书&#xff0c;由于该书的引言 写的太好了&#xff0c;所以本文基本是对原书的摘抄。 0.前言 评估一个面向对…

如何利用大语言模型(LLM)打造定制化的Embedding模型

一、前言 在探索大语言模型&#xff08;LLM&#xff09;应用的新架构时&#xff0c;知名投资公司 Andreessen Horowitz 提出了一个观点&#xff1a;向量数据库是预处理流程中系统层面上最关键的部分。它能够高效地存储、比较和检索高达数十亿个嵌入&#xff08;也就是向量&…

unittest自动化测试框架

一、unittest简介 Unittest是python内置的一个单元测试框架&#xff0c;主要用于自动化测试用例的开发与执行 简单的使用如下 import unittestclass TestStringMethods(unittest.TestCase):def setUp(self):print("test start")def test_upper(self):self.assertE…