如何使用iptables或者firewalld配置Linux系统的防火墙策略

在网络安全中,防火墙是一种关键的安全设备,用于保护计算机网络免受恶意攻击和未经授权的访问。在Linux系统中,我们可以使用iptables或者firewalld来配置防火墙策略。本文将介绍如何使用这两种工具来配置Linux系统的防火墙策略,包括基本概念、常用命令和示例。

什么是iptables和firewalld

iptables

iptables是Linux系统上一个基于内核级别的包过滤系统,它可以拦截和处理网络数据包。通过配置iptables,用户可以定义一系列规则来控制进出网络的数据包。

firewalld

firewalld是一个动态网络防火墙管理器,它提供了更加用户友好的配置界面和管理工具。与iptables不同的是,firewalld支持动态更新规则,并且可以在不重启防火墙的情况下应用新的规则。

基本概念

表(Tables)

iptables使用一系列表来存储规则,包括filter表、nat表和mangle表等。filter表用于过滤数据包,nat表用于网络地址转换,mangle表用于修改数据包。

链(Chains)

每个表中包含若干个链,用于存储具体的操作规则。常见的链包括INPUT、OUTPUT和FORWARD等。

规则(Rules)

规则是定义在链中的操作指令,用于控制数据包的流向和处理方式。

Zone

firewalld使用Zone来区分不同的网络环境,例如public、internal、external等。每个Zone内包含预定义的规则,用户可以根据需要进行定制。

使用iptables配置防火墙策略

常用命令

- `iptables -A`:向指定链中添加规则

- `iptables -D`:从指定链中删除规则

- `iptables -L`:列出当前规则

- `iptables -P`:设置默认策略

- `iptables -F`:清空指定链中的所有规则

- `iptables-save`:保存当前规则

- `iptables-restore`:恢复已保存的规则

实例

允许特定端口的数据包通过

如果要允许TCP端口80的数据包通过,可以使用以下命令:

```bash
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
```

允许特定IP范围的数据包通过

如果要允许来自192.168.1.0/24网段的数据包通过,可以使用以下命令:

```bash
iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
```

拒绝特定IP的数据包

如果要拒绝来自IP地址为192.168.1.100的数据包,可以使用以下命令:

```bash
iptables -A INPUT -s 192.168.1.100 -j DROP
```

使用firewalld配置防火墙策略

常用命令

- `firewall-cmd --zone`:指定操作的Zone

- `firewall-cmd --add-service`:添加指定服务

- `firewall-cmd --add-port`:添加指定端口

- `firewall-cmd --remove-service`:移除指定服务

- `firewall-cmd --remove-port`:移除指定端口

- `firewall-cmd --list-all`:列出所有规则

实例

添加HTTP服务

要添加HTTP服务到public Zone,可以使用以下命令:

```bash
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload
```

添加允许端口

要允许TCP端口8080通过external Zone,可以使用以下命令:

```bash
firewall-cmd --zone=external --add-port=8080/tcp --permanent
firewall-cmd --reload
```

移除服务

要从public Zone中移除SSH服务,可以使用以下命令:

```bash
firewall-cmd --zone=public --remove-service=ssh --permanent
firewall-cmd --reload
```

本文介绍了如何使用iptables和firewalld来配置Linux系统的防火墙策略。通过了解基本概念和常用命令,并结合具体实例进行演示,希望读者能够掌握如何灵活地利用这两种工具来保护计算机网络安全。在实际应用中,根据具体需求和网络环境,用户可以选择合适的工具来配置防火墙策略,从而提高系统安全性。

最后

欢迎加入我们的嵌入式学习群!作为这个群的一员,你将有机会与嵌入式系统领域的专业人士和爱好者们交流、分享经验和学习资源。群内涵盖了各种嵌入式系统的应用和开发,无论你是初学者还是经验丰富的专业人士,都能在这里找到志同道合的伙伴和有益的互动。无论你是对物联网、智能家居、工业自动化等领域感兴趣,还是希望分享你自己的项目和经验,我们的群都会为你提供一个广阔的交流平台。

更多学习资源在这里:扫码进群领资料

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

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

相关文章

Spring Cloud Hystrix:服务容错与熔断

1. 理解服务容错与熔断 1.1 服务容错的概念和重要性 在分布式系统中,由于各种原因(例如网络延迟、服务故障等),服务之间的通信可能会出现故障或者延迟。为了提高系统的可用性和稳定性,需要实现服务容错机制&#xff…

数据结构:4_二叉树

二叉树 一.树概念及结构 1. 树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 有一个**特殊的…

17.3.1.6 自定义处理

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 模拟某款图像处理软件的处理,它只留下红色、绿色或者蓝色这样的单一颜色。 首先按照颜色划分了6个色系,分别…

基于Arduino UNO设计一个温控制系统

目录 概述 1 硬件结构 1.1 整体硬件介绍 1.2 硬件连接结构 2 软件设计 2.1 软件功能介绍 2.2 关于Arduino的一些知识点 2.2.1 定时器 2.2.2 PWM 2.3 代码实现 2.3.1 编译工具 2.3.2 详细代码 3 测试 3.1 温度数据监控 3.2 温控测试 概述 本文介绍如何使用Ardui…

Rust 语言学习杂谈 (end) (各种工作中遇到的疑难杂症)

1.在运行 “cargo build --release” 的时候,到底发生了什么? 源 (GPT4.0) : 当我们运行 cargo build --release 命令时,实际上在进行一系列复杂的步骤来编译和构建 Rust 项目的发布版本。这个过程大致可以分解为以下几个步骤:…

MCU电源控制(PWR)与低功耗

目录 一、STM32 的内核和外设电源系统管理: 二、MCU电源监控: 三、三种低功耗模式: 1、睡眠模式: 2、停止模式: 3、待机模式: 一、STM32 的内核和外设电源系统管理: ① 电池备份区域&#…

关于预训练模型的一点感悟

最近,Yann LeCun 在 WGS 上说: 目前的LLM不可能走到AGI,原因很简单,现在训练这些LLM所使用的数据量为10万亿个令牌,也就是130亿个词,如果你计算人类阅读这些数据需要多长时间,一个人每天阅读8小…

String讲解

文章目录 String类的重要性常用的方法常用的构造方法String类的比较字符串的查找转化数字转化为字符串字符串转数字 字符串替换字符串的不可变性 字符串拆分字符串截取字符串修改 StringBuilder和StringBuffer String类的重要性 在c/c的学习中我们接触到了字符串,但…

MFC提示 未在此计算机上注册ActiveX控件“{648A5600-2C6E-101B-82B6-000000000014}“完美解决

💂 个人主页:pp不会算法^ v ^ 🤟 版权: 本文由【pp不会算法v】原创、在CSDN首发、需要转载请联系博主 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 运行一个mfc老项目的时候出现了这个问题 问题原因: 少了一个文件 …

【开源图床】使用Typora+PicGo+Github+CDN搭建个人博客图床

准备工作: 首先电脑得提前完成安装如下: 1. nodejs环境(node ,npm):【安装指南】nodejs下载、安装与配置详细教程 2. Picgo:【安装指南】图床神器之Picgo下载、安装与配置详细教程 3. Typora:【安装指南】markdown神器之Typora下载、安装与无限使用详细教…

【StarryCoding P9】【模板】可撤销并查集(并查集+启发式合并+栈)

描述 给定 n n n个结点, q q q次询问,每次询问分为三类: 1 x y :可以选择将 x , y x, y x,y两个点连通,如果已经连通则不操作。2 :撤销上一次的操作(若全部撤销完了则不操作)。3 x…

Flex布局简介及微信小程序视图层View详解

目录 一、Flex布局简介 什么是flex布局? flex属性 基本语法和常用属性 Flex 布局技巧 二、视图层View View简介 微信小程序View视图层 WXML 数据绑定 列表渲染 条件渲染 模板 WXSS 样式导入 内联样式 选择器 全局样式与局部样式 WXS 示例 注意事项…

with ThreadPoolExecutor() as executor的使用举例

ThreadPoolExecutor是Python的concurrent.futures模块中的一个类,用于创建一个线程池执行器,可以并发地执行多个任务。 下面是一个使用ThreadPoolExecutor的示例: python from concurrent.futures import ThreadPoolExecutor # 定义一个需…

软件测试概论

第一章、认识软件 一、概述 软件又叫做软体,英文是software 不同的设备上叫法不一样 普通的

【Linux系统化学习】文件重定向

目录 文件内核对象 文件描述符的分配规则 重定向 重定向的概念 dup2系统调用 输出重定向 追加重定向 输入重定向 stderr解析 重定向到同一个文件中 分离常规输出和错输出 文件内核对象 上篇文章中我们介绍到了操作系统中的文件,操作系统为了方…

不同类型的网络拓扑结构在不同的应用场景和需求

不同类型的网络拓扑结构适用于不同的应用场景和需求,下面简要概括几种常见拓扑结构的使用场景及特点: 1、星形 • 使用场景 广泛应用于家庭网络、办公室局域网、企业内部网络以及许多无线网络如Wi-Fi。 • 特点与需求 每个设备通过一条单独的链路连接…

Shellcode免杀对抗(C/C++)

Shellcode C/C免杀,绕过360安全卫士、火绒安全、Defender C/C基于cs/msf的上线 首先是测试一下shellcode上线,主要是俩种方法 测试环境 攻击机:kali2023 靶机:win10 msf方法 首先是启动msf msfconsole 然后msf生成一个sh…

CES 2024:NVIDIA 通过新的笔记本电脑、GPU 和工具提供生成式 AI

在 CES 2024 上,NVIDIA 推出了一系列硬件和软件,旨在释放 Windows 11 PC 上生成式 AI 的全部潜力。 在 PC 上本地运行生成式 AI 对于隐私、延迟和成本敏感型应用程序至关重要。在 CES 上,NVIDIA 将在整个技术堆栈中带来新的创新,…

bat 定时收缩sqlserver2012

在Windows环境下,你可以使用任务计划程序(Task Scheduler)来定时执行批处理文件,进而收缩SQL Server 2012的数据库。批处理文件(.bat)将包含执行收缩操作的SQL命令。然而,如前所述,定…

C#开源免费的Windows右键菜单管理工具

前言 今天分享一个C#开源、免费、纯粹的Windows右键菜单管理工具:ContextMenuManager。 工具主要功能 程序支持国际化多语言显示。启用或禁用文件、文件夹、新建、发送到、打开方式、自定义文件格式、IE浏览器、WinX等右键菜单项目。对上述场景右键菜单项目进行修…