Linux系统-centos防火墙firewalld详解

news2025/3/16 11:38:20

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: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: ssh dhcpv6-client
  ports: 
  protocols: 
  masquerade: no
  forward-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: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: ssh dhcpv6-client
  ports: 1000-2000/tcp
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 
        rule family="ipv4" source address="192.168.142.90" accept
        rule 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: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: ssh dhcpv6-client
  ports: 1000-2000/tcp
  protocols: 
  masquerade: no
  forward-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: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: ssh dhcpv6-client
  ports: 1000-2000/tcp
  protocols: 
  masquerade: no
  forward-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
在这里插入图片描述

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

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

相关文章

Unity3D仿星露谷物语开发28之切换场景

1、目标 Player可以在Scene1_Farm和Scene2_Field之间自动切换。通过Trigger实现该功能。同时创建一个预设体绑定该功能,这样可以把预设体放到任何场景中,通过配置即可实现Player在Scene之间的自由切换。 2、创建场景切换的工具对象 在Hierarchy中&…

阿里通义实验室提出AnyStory:开启个性化文本到图像生成的新篇章!

在这个数字化时代,生成式AI技术正以前所未有的速度改变着我们的创作方式。近期,阿里通义实验室发表了一篇题为《AnyStory: Towards Unified Single and Multi-Subject Personalization in Text-to-Image Generation》的论文,该论文提出了一种…

开启蓝耘之旅:DeepSeek R1 模型在智算平台的起步教程

----------------------------------------------------------我的个人主页-------------------- 动动你的手指----------------------------------------点赞👍 收藏❤--------------------------------------------------------------- 引言 在深度学习的广袤领…

ISAAC Sim 1.1. Isaac Sim 4.2.0 环境配置

我使用的系统是ubuntu20.04,根据推荐使用Binary installation 1.下载和安装 1.1. Isaac Sim 参照Installation using Isaac Sim Binaries — Isaac Lab Documentation完成ISAAC SIM安装。 1.2. Isaac Lab “Isaac Lab 提供您需要的工具,以便您根据项…

活动预告 | Power Hour: Copilot 引领商业应用的未来

课程介绍 智能化时代,商业应用如何实现突破?微软全球副总裁 Charles Lamanna 将为您深度解析,剖析其中关键因素。 在本次线上研讨会中,Charles Lamanna 将分享他在增强商业运营方面的独到见解与实战策略,深度解读商业…

Gemini 2.0模型更新:谷歌最新AI大模型全面开启智能时代

引言 2025年2月5日,谷歌人工智能实验室(Google DeepMind)发布了最新的Gemini 2.0模型系列更新,包括2.0 Flash、Flash-Lite和Pro实验版本。这些AI大模型的发布标志着人工智能技术在性能、效率和多模态能力上的进一步突破&#xff…

前端布局与交互实现技巧

前端布局与交互实现技巧 1. 保持盒子在中间位置 在网页设计中&#xff0c;经常需要将某个元素居中显示。以下是一种常见的实现方式&#xff1a; HTML 结构 <!doctype html> <html lang"en"> <head><meta charset"UTF-8"><m…

乘 DeepSeek 之风,破工作传统之浪,驶向智能高效新航道⭐

引言&#xff1a;当工作场景遭遇认知革命 在数字化转型的浪潮中&#xff0c;人工智能正以指数级速度重塑职场生态。DeepSeek作为国内领先的认知智能平台&#xff0c;其技术突破已超越简单的信息检索工具&#xff0c;正在演变为职场人的"第二大脑"。本文将系统解构De…

Chirpy3D:用于创意 3D 鸟类生成的连续部分潜在特征

Chirpy3D框架可以将细粒度的2D图像理解提升至3D生成的全新境界。当前的3D生成方法往往只关注于重构简单的对象&#xff0c;缺乏细致的特征和创造性。Chirpy3D通过结合多视角扩散模型和连续的部件潜在空间&#xff0c;能够生成全新且合理的3D鸟类模型。该系统不仅能够保持细致的…

viem库

viem是一个用于和以太坊进行交互的javascript库&#xff0c;它提供了简单的API进行智能合约的读取和写入操作&#xff0c;你可以使用它来与区块链上智能合约进行交互&#xff0c;查询链上数据等。 基本功能 1&#xff0c;创建公有客户端 createPublicClient 可以创建一个链接…

【每日一题 | 2025】2.3 ~ 2.9

个人主页&#xff1a;GUIQU. 归属专栏&#xff1a;每日一题 文章目录 1. 【2.3】P8784 [蓝桥杯 2022 省 B] 积木画2. 【2.4】P8656 [蓝桥杯 2017 国 B] 对局匹配3. 【2.5】[ABC365D] AtCoder Janken 34. 【2.6】P8703 [蓝桥杯 2019 国 B] 最优包含5. 【2.7】P8624 [蓝桥杯 2015…

整数拆分cpp

题目如下 思路&#xff1a;根据数论知识&#xff0c;要使乘积最大化&#xff0c;将该数拆分成3和2即可&#xff0c;一直对该数进行减三操作&#xff0c;直到该数小于等于4即可 代码如下 谢谢观看

DeepSeek之Api的使用(将DeepSeek的api集成到程序中)

一、DeepSeek API 的收费模式 前言&#xff1a;使用DeepSeek的api是收费的 免费版&#xff1a; 可能提供有限的免费额度&#xff08;如每月一定次数的 API 调用&#xff09;&#xff0c;适合个人开发者或小规模项目。 付费版&#xff1a; 超出免费额度后&#xff0c;可能需要按…

如何在WPS和Word/Excel中直接使用DeepSeek功能

以下是将DeepSeek功能集成到WPS中的详细步骤&#xff0c;无需本地部署模型&#xff0c;直接通过官网连接使用&#xff1a;1. 下载并安装OfficeAI插件 &#xff08;1&#xff09;访问OfficeAI插件下载地址&#xff1a;OfficeAI助手 - 免费办公智能AI助手, AI写作&#xff0c;下载…

神经网络常见激活函数 6-RReLU函数

文章目录 RReLU函数导函数函数和导函数图像优缺点pytorch中的RReLU函数tensorflow 中的RReLU函数 RReLU 随机修正线性单元&#xff1a;Randomized Leaky ReLU 函数导函数 RReLU函数 R R e L U { x x ≥ 0 a x x < 0 \rm RReLU \left\{ \begin{array}{} x \quad x \ge 0…

【分布式理论7】分布式调用之:服务间的(RPC)远程调用

文章目录 一、RPC 调用过程二、RPC 动态代理&#xff1a;屏蔽远程通讯细节1. 动态代理示例2. 如何将动态代理应用于 RPC 三、RPC序列化与协议编码1. RPC 序列化2. RPC 协议编码2.1. 协议编码的作用2.2. RPC 协议消息组成 四、RPC 网络传输1. 网络传输流程2. 关键优化点 一、RPC…

【Maven】项目管理工具-Maven

目录 1. Maven简介 1.1 项目管理 1.2 项目构建 1.3 项目构建工具 1.4 Maven的四大特征 1.4.1 依赖管理系统 1.4.2 多模块构建 1.4.3 一致的项目结构 1.4.4 一致的构建模型和插件机制 1.5 Maven模型 ​编辑 2.maven的安装配置 2.1 Maven的安装配置 2.1.1检测jdk的版…

ASP.NET Core WebSocket、SignalR

目录 WebSocket SignalR SignalR的基本使用 WebSocket WebSocket基于TCP协议&#xff0c;支持二进制通信&#xff0c;双工通信。性能和并发能力更强。WebSocket独立于HTTP协议&#xff0c;不过我们一般仍然把WebSocket服务器端部署到Web服务器上&#xff0c;因为可以借助HT…

【学术投稿】第五届计算机网络安全与软件工程(CNSSE 2025)

重要信息 官网&#xff1a;www.cnsse.org 时间&#xff1a;2025年2月21-23日 地点&#xff1a;中国-青岛 简介 第五届计算机网络安全与软件工程&#xff08;CNSSE 2025&#xff09;将于2025年2月21-23日在中国-青岛举行。CNSSE 2025专注于计算机网络安全、软件工程、信号处…

26~31.ppt

目录 26.北京主要的景点 题目 解析 27.创新产品展示及说明会 题目​ 解析 28.《小企业会计准则》 题目​ 解析 29.学习型社会的学习理念 题目​ 解析 30.小王-产品展示信息 题目​ 解析 31.小王-办公理念-信息工作者的每一天 题目​ 解析 26.北京主要的景点…