Linux系统-centos防火墙firewalld详解
Linux系统-centos7.6 防火墙firewalld详解
1 firewalld了解
CentOS 7.6默认的防火墙管理工具是firewalld,它取代了之前的iptables防火墙。firewalld属于典型的包过滤防火墙或称之为网络层防火墙,与iptables一样,都是用来管理防火墙的工具(属于用户态)来定义防火墙的各种规则功能,内部结构都指向netfilter这一强大的网络过滤子系统(属于内核态)以实现包过滤防火墙功能。
firewalld支持动态更新,同时支持IPv4和IPv6,可以通过字符管理工具(Firewall-cmd)和图形化管理工具(Firewall-config)进行管理。它还加入了“区域”(zone)的概念,将所有网络流量分为多个区域(zone),然后根据数据包的源IP地址或传入的网络接口条件等将流量传入相应区域,每个区域都定义了自己打开或者关闭的端口和服务列表。其中默认区域为public。
firewalld基于区域,根据不同的区域来设置不同的规则,从而保证网络的安全。与硬件防火墙的设置相类似。
此外,firewalld提供了支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具,这使得其成为动态的,允许创建、更改和删除规则,而无需在每次更改规则时重新启动防火墙守护程序。
2 firewalld相关命令
2.1 firewalld 启动,状态,开启
[root@zbx-server ~]# systemctl stop firewalld #关闭防火墙
[root@zbx-server ~]# systemctl status firewalld #查看防火墙状态
[root@zbx-server ~]# systemctl start firewalld #开启防火墙
2.2 查看防火墙的配置
[root@zbx-server ~]# firewall-cmd --state
running
[root@zbx-server ~]# firewall-cmd --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: ens33sources: services: ssh dhcpv6-clientports: protocols: masquerade: noforward-ports: source-ports: icmp-blocks: rich rules:
2.3开放和关闭防火墙端口
[root@zbx-server ~]# firewall-cmd --list-port #查看防火墙端口
[root@zbx-server ~]# firewall-cmd --permanent --add-port=8080/tcp #开放8080端口:--permanent 表示这个规则是永久的,即使重启系统也不会消失,如果你想要临时添加规则而不是永久的,可以去掉 --permanent 参数,这样规则只在当前会话中有效,
重启系统后会失效。;--add-port=80/tcp 表示添加一个允许TCP协议通过端口80的规则
success
[root@zbx-server ~]# firewall-cmd --list-ports #查看防火墙端口,没有生效,需要重新加载--reload才能生效
[root@zbx-server ~]# firewall-cmd --reload #--reload,需要重新加载才能生效
success
[root@zbx-server ~]# firewall-cmd --list-ports #查看防火墙端口
8080/tcp
[root@zbx-server ~]# firewall-cmd --permanent --remove-port=8080/tcp #移除防火墙端口
success
[root@zbx-server ~]# firewall-cmd --reload #重新加载防火墙,使配置生效
success
[root@zbx-server ~]# firewall-cmd --list-ports #查看防火墙端口
2.4 放开某个端口段
[root@zbx-server ~]# firewall-cmd --permanent --zone=public --add-port=1000-2000/tcp
success
[root@zbx-server ~]# firewall-cmd --reload
success
[root@zbx-server ~]# firewall-cmd --list-ports
1000-2000/tcp
2.5 开放和禁止某个IP访问
开放IP:192.168.142.90
禁止IP:10.10.10.8
[root@zbx-server ~]# firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="192.168.142.90" accept'
success
[root@zbx-server ~]# firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="10.10.10.8" drop'
success
[root@zbx-server ~]# firewall-cmd --reload
success
[root@zbx-server ~]# firewall-cmd --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: ens33sources: services: ssh dhcpv6-clientports: 1000-2000/tcpprotocols: masquerade: noforward-ports: source-ports: icmp-blocks: rich rules: rule family="ipv4" source address="192.168.142.90" acceptrule family="ipv4" source address="10.10.10.8" drop
移除以上规则
[root@zbx-server ~]# firewall-cmd --permanent --remove-rich-rule='rule family=ipv4 source address="192.168.142.90" accept'
success
[root@zbx-server ~]# firewall-cmd --permanent --remove-rich-rule='rule family=ipv4 source address="10.10.10.8" drop'
success
[root@zbx-server ~]# firewall-cmd --reload
success
[root@zbx-server ~]# firewall-cmd --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: ens33sources: services: ssh dhcpv6-clientports: 1000-2000/tcpprotocols: masquerade: noforward-ports: source-ports: icmp-blocks: rich rules: [root@zbx-server ~]#
2.6 放开某个IP段的访问
[root@zbx-server ~]# firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.0.0.0/24 accept'
success
[root@zbx-server ~]# firewall-cmd --reload
success
[root@zbx-server ~]# firewall-cmd --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: ens33sources: services: ssh dhcpv6-clientports: 1000-2000/tcpprotocols: masquerade: noforward-ports: source-ports: icmp-blocks: rich rules: rule family="ipv4" source address="10.0.0.0/24" accept
[root@zbx-server ~]#
2.7 放开某个IP的可访问某个端口
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="192.168.142.90" port protocol="tcp" port="22" accept'
2.8 如设置未生效,可尝试直接编辑规则文件,删掉原来的设置规则,重新载入一下防火墙即可
vi /etc/firewalld/zones/public.xml
3 ssh登录限制IP
在/etc/hosts.allow中添加允许ssh登陆的ip或者网段
sshd:183.242.4.225:allow或 sshd:192.168.0.0/24:allow
(其中 192.168.0.16 是你要允许登陆 ssh 的 ip, 或者是一个网段 192.168.0.0/24)

在/etc/hosts.deny添加不允许ssh登陆的IP
sshd:ALL

相关文章:
Linux系统-centos防火墙firewalld详解
Linux系统-centos7.6 防火墙firewalld详解 1 firewalld了解 CentOS 7.6默认的防火墙管理工具是firewalld,它取代了之前的iptables防火墙。firewalld属于典型的包过滤防火墙或称之为网络层防火墙,与iptables一样,都是用来管理防火墙的工具&a…...
零基础都可以本地部署Deepseek R1
文章目录 一、硬件配置需求二、详细部署步骤1. 安装 Ollama 工具2. 部署 DeepSeek-R1 模型3. API使用4. 配置图形化交互界面(可选)5. 使用与注意事项 一、硬件配置需求 不同版本的 DeepSeek-R1 模型参数量不同,对硬件资源的要求也不尽相同。…...
通过Ollama本地部署DeepSeek R1以及简单使用的教程(超详细)
本文介绍了在Windows环境下,通过Ollama来本地部署DeepSeek R1。该问包含了Ollama的下载、安装、安装目录迁移、大模型存储位置修改、下载DeepSeek以及通过Web UI来对话等相关内容。 1、🥇下载Ollama 首先我们到Ollama官网去下载安装包,此处我…...
css实现长尾箭头(夹角小于45度的)
1. 长尾夹角小于45度的箭头 代码 //h5<div class"singleArrow"></div>//css .singleArrow {width: 150px;height: 1px;position: relative;background-color: #15ff00;/* transform: rotate(-40deg); */ /* 旋转角度 */}.singleArrow::after{ // 成品-有…...
封装descriptions组件,描述,灵活
效果 1、组件1,dade-descriptions.vue <template><table><tbody><slot></slot></tbody> </table> </template><script> </script><style scoped>table {width: 100%;border-collapse: coll…...
OC-Block
关于OC中的block作为属性时,为什么要要用copy修饰 property (nonatomic, copy) void (^completionBlock)(void);很多文章包括AI都会给出类似结论 Block 默认分配在栈上,如果没有 copy,当方法退出后,Block 会被销毁。使用 copy 修…...
关于知识蒸馏的概念原理以及常见方法
1. 概念与原理 知识蒸馏的基本定义 知识蒸馏(Knowledge Distillation) 是一种将模型压缩与迁移学习结合的技术:它利用预先训练好的大模型(通常参数量大、精度高、计算开销大)指导一个更轻量(参数量小、推理速度快)的学生模型进行训练,从而在保持模型精度的同时显著减少…...
C++轻量级桌面GUI库FLTK
C轻量级桌面GUI库FLTK Screenshots - Fast Light Toolkit (FLTK) 这里写个备忘录,可以参考一下....
C++20导出模块及使用
1.模块声明 .ixx文件为导入模块文件 math_operations.ixx export module math_operations;//模块导出 //导出命名空间 export namespace math_ {//导出命名空间中函数int add(int a, int b);int sub(int a, int b);int mul(int a, int b);int div(int a, int b); } .cppm文件…...
PID 算法简介(C语言)
一、简介: PID是比例、积分、微分三个环节的组合,用来进行反馈控制。每个部分都有对应的系数,也就是Kp、Ki、Kd。PID 算法实现这三个部分的计算,然后综合起来得到控制输出。 二、PID控制器结构体: PID控制器结构体:包含PID参数(Kp, Ki, Kd);存储积分项和上一次误差;…...
Java中的继承及相关概念
在 Java 中,继承是一种允许一个类继承另一个类的特性。通过继承,子类可以获取父类的属性和方法,这有助于减少代码冗余并提高代码的可维护性。以下是关于文件内容的相关分析和知识点总结: 一、继承的核心概念 1.继承的语法 Java …...
语言月赛 202308【小粉兔做麻辣兔头】题解(AC)
》》》点我查看「视频」详解》》》 [语言月赛 202308] 小粉兔做麻辣兔头 题目描述 粉兔喜欢吃麻辣兔头,麻辣兔头的辣度分为若干级,用数字表示,数字越大,兔头越辣。为了庆祝粉兔专题赛 #1 的顺利举行,粉兔要做一些麻…...
云原生后端|实践?
云原生(Cloud Native)是一种构建和运行应用程序的方法,它充分利用云计算的优势,包括弹性、可扩展性、高可用性和自动化运维。云原生后端开发通常涉及微服务架构、容器化、持续集成/持续部署(CI/CD)、服务网…...
GrassWebProxy
GrassWebProxy第一版: using System; using System.Collections.Generic; using System.Linq; using System.Net.Sockets; using System.Net; using System.Text; using System.Threading; using System.Threading.Tasks; using System.IO; using Newtonsoft.Json;…...
6.Python函数:函数定义、函数的类型、函数参数、函数返回值、函数嵌套、局部变量、全局变量、递归函数、匿名函数
1. 函数定义 Python函数通过def关键字定义。一个函数通常包括函数名、参数列表和函数体。 def greet(name):return f"Hello, {name}!"2. 函数的类型 Python中的函数主要有以下几种类型: 普通函数:具有明确的输入参数和返回值。递归函数&am…...
青少年编程与数学 02-008 Pyhon语言编程基础 22课题、类的定义和使用
青少年编程与数学 02-008 Pyhon语言编程基础 22课题、类的定义和使用 一、类类的定义和使用示例 二、定义1. 类定义语法2. 属性和方法3. 构造器和初始化4. 实例化5. 类变量和实例变量6. 类方法和静态方法7. 继承8. 多态总结 三、使用1. 创建类的实例2. 访问属性3. 调用方法4. 修…...
CosyVoice /F5-TTS /GPT-SoVITS /Fish-Speech 开源语音克隆与文本转语音(TTS)项目的对比整理
四个主流开源语音克隆与文本转语音(TTS)项目的对比整理,基于公开资料与实测反馈总结: 项目CosyVoice F5-TTS GPT-SoVITS Fish-Speech 核心技术双向流式语音合成,支持离线与流式一体化建模基于流匹配的ConvNeXt文本表示…...
MySQL基于binlog和gtid主从搭建方案
MySQL基于binlog和gtid主从搭建方案 一.主库配置 1.1 确认 binlog 是否开启 SHOW VARIABLES LIKE %log_bin%; 1.2 创建日志目录并设置权限 mkdir -p /opt/mysql/log_bin chown -R mysql:mysql /usr/local/mysql chmod -R 755 /usr/local/mysql 1.3 修改 my.cnf 配置文件 …...
5 计算机网络
5 计算机网络 5.1 OSI/RM七层模型 5.2 TCP/IP协议簇 5.2.1:常见协议基础 一、 TCP是可靠的,效率低的; 1.HTTP协议端口默认80,HTTPSSL之后成为HTTPS协议默认端口443。 2.对于0~1023一般是默认的公共端口不需要注册,1024以后的则需…...
Vim跳转文件及文件行结束符EOL
跳转文件 gf 从当前窗口打开那个文件的内容,操作方式:让光标停在文件名上,输入gf。 Ctrlo 从打开的文件返回之前的窗口 Ctrlwf 可以在分割的窗口打开跳转的文件,不过在我的实验不是次次都成功。 统一行尾格式 文本文件里存放的…...
Phi-4-reasoning-vision-15B企业案例:银行客户经理用截图快速生成信贷摘要
Phi-4-reasoning-vision-15B企业案例:银行客户经理用截图快速生成信贷摘要 1. 业务痛点与解决方案 1.1 银行信贷业务的效率瓶颈 在传统银行信贷审批流程中,客户经理需要花费大量时间整理客户资料、录入系统信息、撰写信贷报告。一个典型的信贷审批案例…...
AnotherRedisDesktopManager:让Redis管理变得简单高效的5个理由
AnotherRedisDesktopManager:让Redis管理变得简单高效的5个理由 【免费下载链接】AnotherRedisDesktopManager qishibo/AnotherRedisDesktopManager: Another Redis Desktop Manager 是一款跨平台的Redis桌面管理工具,提供图形用户界面,支持连…...
智能邮件秘书:OpenClaw+Qwen3.5-9B自动分类与回复
智能邮件秘书:OpenClawQwen3.5-9B自动分类与回复 1. 为什么需要自动化邮件处理? 每天早晨打开邮箱时,看到堆积如山的未读邮件总会让人头皮发麻。作为一位经常需要处理客户咨询的技术顾问,我最高纪录是一天收到187封邮件。即使每…...
告别重复代码:BaseMapperPlus在SpringBoot项目中的5个高级用法
BaseMapperPlus实战:SpringBoot项目中提升开发效率的5个高阶技巧 在SpringBoot项目中使用MyBatis-Plus进行数据持久层开发时,BaseMapperPlus作为社区广泛采用的扩展接口,能显著减少模板代码。本文将分享五个实际业务场景中的高阶用法…...
阿联酋人工智能大学:AI能在战争迷雾中做出理性判断吗?
这项由阿联酋穆罕默德本扎耶德人工智能大学和美国马里兰大学共同完成的研究发表于2026年3月,论文编号为arXiv:2603.16642v1。有兴趣深入了解的读者可以通过该编号查询完整论文。在人类历史上,预测战争走向一直是个极其困难的任务。就像我们很难在暴风雨中…...
Nuxt4 官网访问来源统计的实现
今天我遇到一个值得记录的问题,场景是这样的:官网后台需要做访问统计,我得把访问来源和访问目标的 URL 传递给后端。绕了好一阵子,才终于理清楚。 项目结构上,Nuxt 4 负责官网展示,后端是 Java 服务。核心…...
【AI+教育】告别“硬啃”长文,它把文档直接变成你的专属视频课
在这个信息大爆炸的时代,我们最不缺的就是资料:网盘里屯满的行业报告、收藏了却从未打开的学术论文、买来盖泡面的大部头教材……知识就在那里,但“学进去”实在太难了。 秘塔推出的“今天学点啥”,就是为了解决这个痛点而生的。它的核心逻辑非常简单粗暴:你把看不进去的文…...
HRNet的‘并行多分支’到底强在哪?一个动画图解带你彻底搞懂特征融合机制
HRNet并行多分支架构的视觉化解析:如何通过双向特征融合突破关键点检测精度瓶颈 在计算机视觉领域,关键点检测任务(如人体姿态估计、人脸特征点定位)对空间精度的要求近乎苛刻。传统卷积神经网络通过层层下采样提取语义特征的代价…...
SOONet效果展示:多查询并行定位——‘倒水’‘接电话’‘写笔记’三任务同步响应
SOONet效果展示:多查询并行定位——‘倒水’‘接电话’‘写笔记’三任务同步响应 1. 引言:当视频搜索变得像说话一样简单 想象一下,你有一段长达一小时的会议录像,现在需要快速找到“张三站起来发言”、“李四在白板上画图”以及…...
SubtitleOCR:重新定义视频内容处理效率的硬字幕提取革命
SubtitleOCR:重新定义视频内容处理效率的硬字幕提取革命 【免费下载链接】SubtitleOCR 快如闪电的硬字幕提取工具。仅需苹果M1芯片或英伟达3060显卡即可达到10倍速提取。A very fast tool for video hardcode subtitle extraction 项目地址: https://gitcode.com/…...
