iptables防火墙的通俗理解,和k8s中的iptables策略使用

news2024/11/15 12:43:23

iptables是什么?

是ip   table   s

ip      表格    多个

就是

多个和ip有关系的表格

什么是ip?

每个网络设备的唯一标识

有这个,能和别的有ip的设备聊天

没这个,得想别的办法

拿四版本来说

ip是32个二进制数       比如:11101010  10101010  01010101 10101010

常用表示方法,四个点分十进制数    比如: 192.168.1.3

什么是点分十进制数?

就是用点隔开的,十进制的,数

192一个十进制数

168第二个十进制数

1第三个十进制数

3第四个十进制数

共四个

每个之间用点"."隔开

什么是表格?

确实,就长excel那样

上下左右都很整体,排列工整

捋一捋

交换机有mac地址表

路由器有路由表、连接状态表

ospf里面有邻居表,链路状态表

mysql里面有一大堆表

linux系统里有arp表,进程表

硬盘上面有MBR分区表

oracle里面有重做日志表Redo log

文件系统里有超级块,inode表,符号连接表

那么

iptables

作为防火墙,

有几个表格

不过分吧

这么看来,要公公整整的做事情

有个表格还是挺有用的

iptables 常说四表五链

raw  mangle  nat  filter

这四个是四表,常用的是nat  filter

nat主要是地址转换

还可以用来负载均衡,流量分发

filter是过滤表

相当于这几个表格里面更核心的那个

说五链之前,说一下

iptables防火墙,是Linux内核管的

外部流量进入一个服务器

是要先进物理网卡

然后进操作系统内核

内核让通过了

才会传递给用户空间

也就说是到达应用层

由于Linux操作系统内核有路由器的功能

所以在这里理解内核的数据过滤

应该可以暂时当它为一个路由器

五链:

prerouting  路由器看数据前,也就是数据刚从网卡到内核这

postrouting  路由器看数据后,准备邮寄的时候,”post“ 邮寄

input         进用户空间的时候

output       出用户空间的时候

forward      转发

常用的是filter表

也就是来访的数据,是要到操作系统的用户空间的

那么这个时候filter表出手

这种数据

我来管

input,数据进用户空间的时候怎么管,什么规则,什么数据能进站,什么数据得等一下

output,数据出站的时候,怎么管,什么数据能出站

forward,管转发,什么数据怎么转发,转发到哪

这个大概就是四表五连的一个基本情况

k8s中的networkPolicy

网络策略

也就是防火墙

k8s底层调用的防火墙是iptables

那么在k8s这个容器管理平台上

怎么调用防火墙呢

k8s的networkPolicy提供了

两个模块

一个是Ingress 进站流量管理模块

一个是Egress  出站流量管理模块

管理的项目有哪些?

ipBlock    网络层怎么管,也就是根据ip地址去管

port          传输层怎么管,TCP还是UDP,端口号多少

namespaceSelector   名称空间这里有两个点,一个是networkPolicy必须指定是在哪个名称空为作用域的,因为每个名称空间是相互隔离的,名称空间下的资源和别的名称空间下的资源是各干各的。大家的关系好像就是,都在一个集群,都在用这些集群的物理资源。从k8s集群外看,这些进程和文件都属于这个k8s集群。但是从k8s集群内部看,不同名称空间的资源是完全独立的,比如网络ip,文件系统,挂载,持久卷,用户和组,进程id,消息队列,信号量,主机名,这些如果不在同一个名称空间下,是看不到别的名称空间的这些资源的。也就是说,名称空间的核心概念就是隔离集群中的这些资源。整个集群给不同的名称空间分配资源,有的资源是要从物理层面分的,比如存储,分了之后,每个名称空间之间互不影响。有的资源是可以重复的,比如A名称空间有个服务帐号叫abc,B名称空间也有个服务帐号叫abc,互不影响。再比如A名称空间有个pod叫httpd,B名称空间也可以有个pod叫httpd。所以,在用kubectl管理k8s集群的时候,如果没有指定名称空间,比如kubectl get pods,看一下有哪些pod,这个是默认看的是default名称空间下的pod,如果要看lucky名称空间下的pod,就需要用kubectl -n lucky get pods来查看。所以名称空间的隔离作用,在k8s中还是很重要的。

namespaceSelector的第二个点是,在防火墙这边,是过滤名称空间是什么样的。往往分为两种,一种是和这个策略所在的名称空间的同一个名称空间来访问的数据,第二种是和这个策略所在的名称空间的不同的名称空间来访的数据。

刚才不是说,名称空间是相互隔离的吗

是啊

但是,有方式能让一个名称空间下的pod所运行的服务向外暴露

一般是nodeport和ingress两种方式

nodeport是端口转发

ingress常用的相当于nginx反向代理

这两个服务是把pod内的比如web进程向公网暴露

也就是集群外的主机都可以访问这个pod的服务

那么另一个名称空间的pod比如跑的就是web请求,那么也应当可以访问这个web服务

再怎么隔离,把别的名称空间的pod当成公网上的请求就行了,就没有必要隔离了。

当然,这个的条件是通过service将pod对外发布服务。

所以,namespaceSelector就是筛选,是跟网络策略在一个名称空间的,还是别的名称空间的,访问请求。如果是自己名称空间的,允许还是拒绝。如果是别的名称空间的,要说是哪个,怎么分辨?k8s一般喜欢用label也就是标签,来区分资源,对名称空间也一样。

带什么标签的名称空间,怎么弄

语法就是

- namespaceSelector:

      matchLabels:

             key: value

这里的key: value键值对,就是名称空间的标签。

在k8s里面,标签不是key,也不是value,而就是"key=vlaue" 这一对,就是标签。

还有一个筛选项目

就是

podSelector

跟名称空间一样,也是拿标签来区分

什么标签的pod,让出还是让进,还是怎么着

语法是

spec:

     podSelector:

           matchExpressions:

                 - key:   xxxx

                    value:  xxxxx

                    operator:  In   ( In   NotIn    Exists   DoesNotExist ) 这几选一个

进站策略:

ingress

- from:

出站策略:

egress:

- to

图片来源:某站,技术蛋老师

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

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

相关文章

JAVA并发编程JUC包之CAS原理

在JDK 1.5之后,java api中提供了java.util.concurrent包,简称JUC包。这个包定义了很多我们非常熟悉的工具类,比如原子类AtomicXX,线程池executors、信号量semaphore、阻塞队列、同步器等。日常并发编程要用的熟面孔基本都在这里。…

Rk3588 Android12 AIDL 开发

AIDL (Android Interface Definition Language) 和 HIDL (HAL Interface Definition Language) 都是 Android 系统中用于定义接口的工具,但它们有不同的用途和特性。 AIDL (Android Interface Definition Language) 用途: 主要用于应用程序之间的进程间…

基于SpringBoot的智能物流仓库管理系统-源代码-论文

💥💥源码和论文下载💥💥:基于SpringBoot的智能物流仓库管理系统-源代码-论文-数据库 1. 系统介绍 物流快递仓库管理是一项非常繁琐复杂的工作,每天要处理大量的单据数据,包括入库、出库、退库、…

Web:攻防世界unseping

目录 一、初见 二、解题步骤 一、初见 刚拿到这个题目,可以发现是一串PHP代码,关注到unserialize(base64_decode($ctf))函数,就知道是考php反序列化。 审计PHP类ease: __construct($method, $args) :构造器需要传入两…

k8s中的层级结构,及节点组件的作用

可以从三个层面来看待k8s集群 第一个层 是client主机 为什么要有client主机 不是在控制节点上管理计算节点吗 是的 但是,当有多个k8s集群需要管理的时候 一般不会每管理一个集群,就登录到那个集群的控制节点上 这样来来回回切换登录 client主机…

电路分析 ---- 加法器

1 同相加法器 分析过程 虚短: u u − R G R G R F u O u_{}u_{-}\cfrac{R_{G}}{R_{G}R_{F}}u_{O} u​u−​RG​RF​RG​​uO​ i 1 u I 1 − u R 1 i_{1}\cfrac{u_{I1}-u_{}}{R_{1}} i1​R1​uI1​−u​​; i 2 u I 2 − u R 2 i_{2}\cfrac{u_{…

同时播放多个视频

介绍一款小众的视频播放器,之前有小伙伴找那种可以同时播放多个视频的软件,“恒硕加播放”可以做到这一点,功能不是太多,但是日常播放是足够了。 同时播放多个视频控制多个视频跳到指定进度同时暂停/播放/停止/静音/倍速浏览系统…

金属3D打印与压铸模具的融合:创新引领制造新纪元

步入工业4.0的新纪元,3D打印技术犹如一股强劲的东风,为制造业的转型升级插上了智慧的翅膀。作为铸造领域的核心,压铸模具在工业领域扮演着不可或缺的角色,其重要性不言而喻。然而,面对日益多样化的压铸件需求&#xff…

力扣最热一百题——和为K的子数组

目录 题目链接:560. 和为 K 的子数组 - 力扣(LeetCode) 题目描述 示例 提示: 解法一:暴力枚举 Java写法: C写法: 解法二:前缀和哈希表 计算子数组和 如何优化问题 代码解…

混合部署 | 在RK3568上同时部署RT-Thread和Linux系统-迅为电子

RT-Thread 是一个高安全性、实时性的操作系统,广泛应用于任务关键领域,例如电力、轨道交通、车载系统、工业控制和新能源等。它的加入让 RK3568 能够在保证系统实时性和安全性的同时,灵活处理复杂的任务场景。 在一般情况下,iTOP-…

AI聊天应用不能上架?Google play对AI类型应用的规则要求是什么?

随着生成式AI模型的广泛应用,很多开发者都有在开发AI应用或将其整合到应用中。我们知道,谷歌是非常注重应用生态的,去年开始就推出了一些针对生成式AI应用的政策,对AI应用的内容质量和合规性问题提出了一些要求。 几天前&#xff…

Deep Ocr

1.圈出内容,文本那里要有内容.然后你保存,并导出数据集. 2.找出deep_ocr_recognition_training_workflow.hdev 文件.修改“DatasetFilename : Test.hdict” 310行 write_deep_ocr (DeepOcrHandle, BestModelDeepOCRFilename) 3.推理test.hdev 但发现很慢,没有mlp…

STM32快速复习(九)RTC时钟模块

文章目录 前言一、RTC是什么?RTC的工作原理?二、库函数以及示例1.标准库函数2.示例代码 总结 前言 STM32 的实时时钟(RTC)是一个独立的定时器。 STM32 的 RTC 模块拥有一组连续计数的计数器,在相应软件配置下&#xf…

ARM----时钟

时钟频率可以是由晶振提供的,我们需要高频率,但是外部接高的晶振会不稳定,所有使用PLL(锁相环)来放大频率。接下来就让我们学习用外部晶振提供的频率来配置时钟频率。 一.时钟源的选择 在这里我们选择外部晶振作为时钟源,通过查看芯片手册和原理图来看我们的时钟源。 这是…

2024高教社杯全国大学生数学建模竞赛C题解析 | 思路 代码 论文

C题 农作物种植策略 完整论文模型的建立与求解数据清洗问题一的建模与求解问题二的建模与求解问题三的建模与求解 代码第一问 完整论文 本题是一个运筹优化问题。 对于第一问,题目要求在假定各种农作物未来的预期销售量、种植成本、亩产量和销售价格相对于2023年保…

信号的捕捉处理

文章目录 4 信号的捕捉处理4.1 内核如何实现信号的捕捉4.2 sigaction4.2.1 使用这个函数对2号信号进行捕捉4.2.2 pending位图什么时候由1变04.2.3 不允许信号重复发送 5. 其他5.1 可重入函数5.2 volatile5.3 SIGCHLD信号5.4 信号生命周期 4 信号的捕捉处理 4.1 内核如何实现信…

鸿蒙(API 12 Beta6版)图形加速【Vulkan平台】超帧功能开发

业务流程 基于Vulkan图形API平台,集成超帧内插模式的主要业务流程如下: 用户进入超帧适用的游戏场景。游戏应用调用[HMS_FG_CreateContext_VK]接口创建超帧上下文实例。游戏应用调用接口配置超帧实例属性。包括调用[HMS_FG_SetAlgorithmMode_VK]&#x…

第T11周:使用TensorFlow进行优化器对比实验

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 文章目录 一、前期工作1.设置GPU(如果使用的是CPU可以忽略这步) 二、导入数据1、导入数据2、检查数据3、配置数据集4、数据可视化 三、…

淘宝和微信支付“好”上了,打翻了支付宝的“醋坛子”?

文:互联网江湖 作者:刘致呈 最近,淘宝将全面接入微信支付的消息,在整个互联网圈里炸开了锅。 虽说阿里系平台与腾讯之间“拆墙”的消息,早就不算是啥新鲜事了。而且进一步互联互通,无论是对广大用户&…

43. 1 ~ n 整数中 1 出现的次数【难】

comments: true difficulty: 中等 edit_url: https://github.com/doocs/leetcode/edit/main/lcof/%E9%9D%A2%E8%AF%95%E9%A2%9843.%201%EF%BD%9En%E6%95%B4%E6%95%B0%E4%B8%AD1%E5%87%BA%E7%8E%B0%E7%9A%84%E6%AC%A1%E6%95%B0/README.md 面试题 43. 1 ~ n 整数中 1 …