Linux 防火墙系统

news/2025/3/20 20:03:19/文章来源:https://www.cnblogs.com/xtyuns/p/18337849

iptables 和 nftables

iptables 是 Linux 中最常用的防火墙工具,它通过 Linux 内核中的 netfilter 模块提供的 Hook 来管理网络数据包的处理和转发。

nftables 是 iptables 的代替品,在 Debian 10、Ubuntu 22、CentOS 8 中已经由 iptables 切换到了 nftables。

iptables 的操作命令是 iptables,nftables 的操作命令是 nft。在一些 Linux 发行版中为了实现兼容,会将 iptables 命令作为一个接口链接到 iptables-nft 来使用 nftables,也可以使用 update-alternatives 命令手动将 iptables 命令切换到 iptables-legacy 来使用原版的 iptables (通过 iptables -v 可以查看当前实现: iptables v1.8.9 (nf_tables))。

工具链

image

  1. netfilter 是一个位于 Linux 内核层的软件框架,用于管理网络数据包。netfilter 制定了五个数据包的挂载点(Hook),分别是 PRE_ROUTING、INPUT、OUTPUT、FORWARD 与 POST_ROUTING。
  2. iptables 是一个运行在用户空间的应用软件,它通过 netfilter 提供的 Hook 来实现对网络数据包的处理和转发。
  3. nftables 是 iptables 的代替品。
  4. ufw/firewalld 分别是 Debian/Redhat 系中的默认防火墙配置工具前端,为防火墙提供了轻量化的配置功能,它们后端通常是 iptables。

它们之间的关系可以总结为:netfilter 是 Linux 的一个内核模块,iptables/nftables 是基于 netfilter 模块实现的防火墙应用程序,ufw/firewalld 是防火墙功能的前端工具。

防火墙的原理

netfilter 的原理如下
image

linux 防火墙:ufw,firewalld,iptables,netfilter

iptables 四表五链执行流程

背景:
docker container1 8080
docker container2 80

container2 -> container1

ufw deny 8080

ip:8080 可以访问
ip:80 -> ip:8080 无法访问

相关知识:
防火墙工具关系

解决步骤:
iptables 打印日志

解决方案:

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

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

相关文章

[计算机网络]HTTPS

HTTP 与 HTTPS 有哪些区别? HTTP 是超文本传输协议,信息是明文传输,存在安全风险的问题。HTTPS 则解决 HTTP 不安全的缺陷,在 TCP 和 HTTP 网络层之间加入了 SSL/TLS 安全协议,使得报文能够加密传输。 HTTP 连接建立相对简单, TCP 三次握手之后便可进行 HTTP 的报文传输。…

腾讯云资源分页获取不全问题

如下,之前把offset值当成页码来使用了。偏移量实际是从第几条开始。 第一页的是从0*页码开始,偏移0*页码数 第二页是从1*页码开始,偏移1*页码数 依此类推。所以偏移量这里,当时只是填写页码,是不对的params = { "ZoneId": ZoneId, "Offset": cu…

[笔记](更新中)KMP算法 - 下(例题)

CF1200E Compress Words ~ 洛谷给定\(n\)个字符串,请按下面的规则,从左往右依次合并\(n\)个字符串,成为\(1\)个字符串:将\(A,B\)合并,就是找到最大的\(i\),使得\(A\)的长为\(i\)的后缀和\(B\)的长为\(i\)的前缀相等,删除\(A\)的这个后缀,并将\(B\)连接到它的后面。注意…

5个好看的vue3后台管理模板

- 1.SoybeanAdmin https://soybeanjs.cn 简介 SoybeanAdmin 是一个清新优雅、高颜值且功能强大的后台管理模板,基于最新的前端技术栈,包括 Vue3, Vite5, TypeScript, Pinia 和 UnoCSS。采用 Vue3, Vite5, TypeScript, Pinia 和 UnoCSS 等最新流行的技术栈。 采用 pnpm monor…

(全)Python 的虚拟环境构建和jupyter notebook 中虚拟环境切换

1、 在开始菜单打开Anaconda Prompt(anaconda3) 2、 构建虚拟环境语法:conda create --name 虚拟环境名字 python=版本号 conda create --name py38_env02 python=3.83、激活虚拟环境 语法: conda activate 虚拟环境名称 4、环境变量的配置 “我的电脑”→右键→ 属性 …

2. vite 构建项目

目录vite 构建项目1 安装node.js2 创建项目 vite 构建项目 1 安装node.js 下载链接 https://nodejs.p2hp.com/ 版本需大于 18.0 查看版本 node -v 添加环境变量npm(包管理工具, 类似于python的pip) npm -g (查看包安装位置) npm install (安装在项目的node_model下) npm inst…

[vue3] patchFlags与位运算

Vue 3在编译template过程中,会通过patchFlags优化虚拟DOM更新,提升性能。这些标志通过位运算进行操作,包括动态文本、类、样式、属性、静态提升等。patchFlags的使用极大地提高了diff算法的效率。Vue3在编译template的过程中会分析模板中的动态部分和静态部分,并标记相应的…

进度报告10

(1)1.代码块2.继承:用extends关键字,不支持多继承

2024-08-03:用go语言,给定一个从 0 开始的字符串数组 `words`, 我们定义一个名为 `isPrefixAndSuffix` 的布尔函数,该函数接受两个字符串参数 `str1` 和

2024-08-03:用go语言,给定一个从 0 开始的字符串数组 words, 我们定义一个名为 isPrefixAndSuffix 的布尔函数,该函数接受两个字符串参数 str1 和 str2。 当 str1 同时是 str2 的前缀和后缀时,函数返回 true;否则返回 false。 例如,isPrefixAndSuffix("aba", …

AGC064B 题解

设红色的点值为 0,蓝色为 1。 注意到,如果有一条边的颜色和两端点同色,一定可以选。例子:选择和两端点同色的边。 又发现,如果存在一个 \(sz>1\) 的合法连通块,无论和其他点怎么连,原来的这个连通块内的点一定合法。 有注意到形如 \(0\xleftrightarrow 10,1\xleftrig…

Java源码:泡泡堂

学习java朋友们,福利来了,今天小编给大家带来了一款泡泡堂源码。此源码仅供学习使用!! 源码搭建和讲解 代码简介包名称类描述com.whh.frame MyJFrame.java 显示窗体、绑定监听、启动线程com.whh.frame MyJPanel.java 不断读取人物信息com.whh.main GameStart.java 游戏入口…