首页 > 资讯 >

微速讯:一文读懂最佳 Kubectl 安全插件(下)

2023-02-16 07:05:04 来源:腾讯云

Hello folks,我是 Luga,接着上一篇博文,我们继续来解析 Kubectl 安全插件相关内容...


(资料图)

8、RBAC-tool Plugin

基于角色的访问控制 ( RBAC ) 是一种根据组织内各个用户的角色来调节对计算机或网络资源的访问的方法。RBAC 工具简化了 RBAC 策略的查询和创建。

我们可以使用以下 Krew 命令安装 RBAC 工具,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install rbac-tool

如果我们不熟悉如何将 RBAC 角色分配给不同的 Kubernetes Cluster 组件,那么,可视化命令将会帮助我们生成所有 RBAC 决策的有见地的图表,具体如下:

[leonli@Leon ~ % ]kubectl rbac-tool viz --cluster-context nigel-douglas-cluster

上面的命令使用 kubeconfig 上下文“ nigel-douglas-cluster ”扫描 Kubernetes Cluster。这些图表对于显示分配给服务帐户的权限前后的可视化很有帮助。

除了 RBAC 工具插件提供的“ viz ”之外,还有多个命令可供使用,最有用的是 " who-can " 命令。这表明哪些主体具有 RBAC 权限,可以对对象执行由“VERB”(创建、读取、更新或删除)表示的操作。

通常,我们若要查看某些内容,可以通过名称“ important-secret ”读取密钥资源,那么,我们可以运行以下命令进行:

[leonli@Leon ~ % ]kubectl rbac-tool who-can get secret/important-secret

9、Cilium Plugin

Cilium 是一个网络安全项目,由于其强大的 eBPF 数据平面而越来越受大众欢迎。由于 Kubernetes 在设计时并未考虑任何特定的 CNI(网络)插件,因此尝试通过 Kubectl 管理 Cilium 代理可能性不确定。于是,便有 Cilium 团队发布 Cilium Kubectl 插件以支撑此项功能。

我们可以使用以下 Krew 命令安装 Cilium 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install cilium

作为基本的第一步,我们可以通过以下命令对由 Cilium 网络提供支持的单个 Node 进行连接检查,具体如下:

[leonli@Leon ~ % ]kubectl cilium connectivity test --single-node 

这不仅提供了操作的可见性,例如,如果 Cilium 无法与“ Hubble ”等核心组件通信,将会以特定的方式进行可观测性显示。

Hubble 为 Kubernetes 提供网络、服务和安全可观察性。能够快速诊断连接错误,例如“连接被拒绝”,可以提高威胁的整体可见性,并提供维护法规遵从性所需的集中网络事件视图。如果想更深入地研究网络策略,请查阅“如何防止对 Kubernetes 的拒绝服务 (DoS) 攻击”等相关文章。

10、Access-matrix Plugin

Access-matrix,可称为“访问矩阵”(通常称为“Rakkess”)是一个 Kubectl 插件,可显示服务器资源的访问矩阵。

我们可以使用以下 Krew 命令安装 Access-matrix 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install access-matrix

通常情况下,我们只需运行以下命令即可查看“默认”网络命名空间中所有资源的创建、读取、更新和删除 (CRUD) 权限,具体如下:

[leonli@Leon ~ % ]kubectl rakkess –n default

某些角色仅适用于具有特定名称的资源。要查看此类配置,请提供资源名称作为附加参数。例如,显示命名空间 sysdig-agent 中名为 sysdig-controller 的 ConfigMap 的访问权限,具体如下:

[leonli@Leon ~ % ]kubectl access-matrix r cm sysdig-controller -n sysdig-agent --verbs=all

由于 Rakkess 资源需要查询 Roles、ClusterRoles 及其绑定,因此通常需要管理集群访问权限。

11、Rolesum Plugin

Rolesum Kubectl 插件主要用于生成 Kubernetes 集群中定义的角色和权限的摘要。它允许我们查看已在集群中定义的所有角色和权限、已被授予这些角色的用户和组以及总结指定主题(ServiceAccount、用户和组)的 RBAC 角色。

我们可以使用以下 Krew 命令安装 Rolesum 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install rolesum

使用 Rolesum kubectl 插件的一个潜在安全优势是它可以帮助我们识别和理解 Kubernetes Cluster 中定义的角色和权限。这对于确保适当的访问控制已经到位以及识别潜在的漏洞或错误配置很有用。

我们可以汇总绑定到 “nigeldouglas” ServiceAccount 的角色。默认情况下,rolesum 查找服务帐户时,无需指定任何标识符。

[leonli@Leon ~ % ]kubectl rolesum nigeldouglas

另一个潜在的安全优势便是 Rolesum 可以帮助我们快速识别已被授予特定角色或权限的用户和组,这对于解决问题或执行安全评估很有用。

例如,可以汇总绑定到 “staging” 组的角色,具体如下:

[leonli@Leon ~ % ]kubectl rolesum -k Group staging

总的来说,Rolesum Kubectl 插件可以帮助我们了解和管理集群中定义的角色和权限,从而成为提高 Kubernetes 集群安全性。

12、Cert-Manager Plugin

Cert-Manager 是一个 Kubectl 插件,可在集群内自动管理传输层安全 (TLS) 证书。它允许轻松地为我们的应用程序配置、管理和续订 TLS 证书,而无需手动处理证书签名过程。

我们可以使用以下 Krew 命令安装 Cert-Manager 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install cert-manager

使用 Cert-Manager 的一个潜在安全优势是它可以帮助我们确保应用程序使用有效的、最新的 TLS 证书。这对于保护应用程序与其用户之间通信的机密性和完整性非常重要。

另一个潜在的安全优势是 Cert-Manager 可以帮助我们自动化获取和更新 TLS 证书的过程,这可以降低证书过期或管理不善的风险。

总的来说,Cert-Manager Kubectl 插件可以帮助我们以安全和自动化的方式管理 TLS 证书,从而成为提高 Kubernetes Cluster 安全性的有用工具。Cert-Manager 插件松散地基于 Kube-lego 的工作,并借鉴了其他类似项目的一些智慧,例如 Kube-Cert-Manager。

13、Np-viewer Plugin

Kubectl-np-viewer 插件是一个可视化 Kubernetes 集群网络拓扑的工具。它允许我们以图形格式查看集群内 Pod、Services 和其他 Resource 之间的连接。

我们可以使用以下 Krew 命令安装 Np-viewer 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install np-viewer

与我们之前提到的 Cilium 插件不同,Kubectl-np-viewer 插件可以帮助用户理解和可视化集群内的通信模式,而不管使用的是否 CNI 插件。Cilium 插件仅帮助管理 Cilium 资源,例如 Cilium 网络策略。通过查看默认的 Kubernetes 网络策略,开始使用 Kubernetes 网络的团队可以从对潜在漏洞或错误配置的有用可见性中获益,例如与非预期资源通信或暴露在互联网上的 Pod。

若我们想知道影响当前 Namespace 中特定 Pod 的网络策略规则,那么,可以将其打印出来,具体如下:

[leonli@Leon ~ % ]kubectl np-viewer -p pod-name

同样,Kubectl-np-viewer 插件的潜在安全优势是它可以帮助用户解决集群内的网络问题。例如,如果我们遇到 Pod 或服务之间的连接问题,那么,可以使用该插件来可视化这些资源之间的连接,并确定所有网络命名空间中的问题根源。

以下命令打印所有命名空间的所有网络策略规则,具体如下:

[leonli@Leon ~ % ]kubectl np-viewer --all-namespaces

总的来说,Kubectl-np-viewer 插件可以帮助我们了解和监控集群的网络拓扑,从而成为提高 Kubernetes 集群安全性的有用工具。并非所有企业都已转向高级网络策略实施,例如 Calico 和 Cilium。当用户探索 Kubernetes 网络策略实施时,他们可以更好地了解他们的策略如何使用此安全插件控制集群中潜在的有害或恶意流量。

14、Ksniff Plugin

Ksniff Kubectl 插件是一个用于捕获和分析 Kubernetes Cluster 中网络流量的工具。基于此,可用于解决网络问题、监控流量模式和执行安全评估。

我们可以使用以下 Krew 命令安装 Ksniff 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install ksniff

使用 Ksniff 的一个好处是它允许我们捕获和分析流量,而无需直接访问 Kubernetes Cluster 中的 Node。这在我们无法直接访问 Node 的情况下,或者我们希望将捕获流量对集群的潜在影响降至最低的情况下很有用。

另一个优势便是 Ksniff 可用于捕获 Pod 和服务之间的流量,这对于了解应用程序如何在集群内通信很有用。这有助于解决问题、优化性能和识别潜在的安全漏洞。

总的来说,Ksniff Kubectl 插件可以通过帮助识别和解决与网络相关的问题和漏洞来提高 Kubernetes 集群的安全性。它通过使用现有技术(例如 TCPdump 和 WireShark)嗅探 Kubernetes Pod 来实现这一点。

15、Inspektor-Gadget Plugin

Inspektor-Gadget 是最有用的 Kubectl 插件之一。该插件在用户系统中执行,并在集群中部署时作为 DaemonSet 执行。其本质上是一款调试和检查 Kubernetes 资源和应用程序的工具(或小工具)的集合。

我们可以使用以下 Krew 命令安装 Inspektor-Gadget 插件,具体如下所示:

[leonli@Leon ~ % ]kubectl krew install gadget

通常情况下,我们可以部署一个或多个小工具,常见的小工具涉及如下:

(1)建议(为集群生成 seccomp 配置文件和网络策略)

(2)审计(跟踪 seccomp 配置文件发送到审计日志的系统调用)

(3)配置文件(通过分布式延迟分析块 I/O ,通过采样堆栈跟踪分析 CPU 性能)

(4)快照(收集有关正在运行的进程和 TCP/UDP 套接字的信息)

(5)顶部(按文件定期报告块设备 I/O 活动、eBPF 运行时统计信息和读/写活动)

(6)跟踪(跟踪从 DNS 查询/响应到触发进程终止的 OOM kill 的几乎所有活动)

除此之外, Inspektor-Gadget 插件也管理 Kubernetes 集群中 eBPF 程序的打包、部署和执行,包括许多基于 BPF Compiler Collection (BCC) 工具的程序,以及一些专门为在 Inspektor Gadget 中使用而开发的程序。毕竟,借助 Inspektor-Gadget 能够自动将低级内核原语映射到高级 Kubernetes 资源,使查找相关信息变得更加容易和快捷。

若要根据网络跟踪活动“建议” Kubernetes 网络策略,我们可以运行以下命令,具体如下:

[leonli@Leon ~ % ]kubectl gadget advise network-policy report --input ./networktrace.log > network-policy.yaml

若要基于 Pod、Namespace、系统调用和代码“审核” seccomp 配置文件,可以运行以下命令,具体如下:

[leonli@Leon ~ % ]kubectl gadget audit seccomp -o custom-columns=namespace,pod,syscall,code

自定义 Kubectl 插件

当然,除了上述基于 Krew 插件管理器进行封装外,我们也可以使用任何能够用于编写命令行命令的编程语言或脚本进行自定义插件开发。不需要插件安装或预加载,这使得编译这些插件相当简单。

需要注意的是,必须在 PATH 的某处安装插件可执行文件‍‍‍‍‍‍‍‍

插件脚本参考如下所示:

#!/bin/bash# optional argument handlingif [[ "$1" == "version" ]]then    echo "1.0.0"    exit 0fi# optional argument handlingif [[ "$1" == "config" ]]then    echo "$KUBECONFIG"    exit 0fiecho "I am a plugin named kubectl-sysdig"

有关构建 Kubectl 插件的完整指南,大家若感兴趣的话,可以查看 Kubernetes 官方文档。

Kubectl 插件的有关思考

在撰写这篇博文时, Krew 插件管理器目前已支持 210* 个 Kubectl 插件,并且,这些插件能够应用于所有主流平台(如 MacOS、Linux 和 Windows)等,开发/维护人员都可以访问这些 Kubectl 插件并进行使用。虽然这些插件通常解决了对操作任务和安全审计的默认 Kubectl 实用程序的明显限制,但它们也为我们的 Kubernetes Cluster 打开了一系列新的安全漏洞。

从安全的角度来讲,基于上述所述,我们讨论了最常见、有用的 Kubectl 安全插件,基于这些插件,可以让安全、维护等团队技术人员能够更好地了解 Kubernetes Cluster 中的事件响应和取证。然而,随着我们向环境中添加更多插件,我们也在暴露额外的未经审计的二进制文件,这些二进制文件可能会受到损害。毕竟,Krew 不提供审计这些二进制文件的已知漏洞或不安全配置的义务。

在实际的业务场景中,我们使用 Kubectl 插件时,往往或多或少会存在一些安全隐患,主要涉及如下:

1、插件漏洞:如果 Kubectl 插件存在漏洞,攻击者可能会利用它来访问我们所构建的 Kubernetes Cluster 并对其进行尝试性破坏。

2、不安全的安装:如果插件是从不受信任的来源安装的,它可能包含可能危及集群安全的恶意代码。

3、权限提升:Kubectl 插件以与 Kubectl 命令相同的权限运行,因此如果插件遭到破坏,它可能会被用于提升权限并获得对集群中敏感资源的访问权限。

4、数据泄露:如果 Kubectl 插件没有得到妥善保护,它可能会泄露集群中的敏感数据,从而被不法分子利用。‍

为了减轻这些风险,重要的是对所构建的插件进行安全扫描,或只安装来自可信来源的 Kubectl 插件,并定期更新和修补已安装的所有关联插件。除此之外,定期检查已安装的插件并删除不再需要的插件也是一个较好的风险规避措施。

当然,如果我们觉得某个特定的插件不会为所构建的 Kubernetes Cluster 产生较高的价值收益,那么,以防万一,删除它也是一种可取的操作。

最后,给大家安利一本云原生安全书籍,如下所示,对于搞这块的朋友来说或许有一定的帮助。

Adiós !

微速讯:一文读懂最佳 Kubectl 安全插件(下)

Hellofolks,我是Luga,接着上一篇博文,我们继续来解析Kubectl安全插件相关内容

2023-02-16

焦点简讯:十二星座查询 农历

星座是按出生那年的阳历(新历,公历)生日划分的下面是星座日期划分表,把阳历生日对照下面的就可以知...

2023-02-16

环球热文:茶吧机_茶吧机十大名牌排行

MOOSONEE茶吧机使用方法把茶吧机接通电源,然后打开开关就可以使用了。1、首先把茶吧机接通电源,然后打...

2023-02-16

【环球播资讯】资本商品特点

资本商品的特点有预先投入性、增殖性、风险性、运动性和社会性。①、预先投入性:资本价值在其运动的开...

2023-02-16

每日快看:壬水生于未月如何取用神

用神是指月令可用之物,而月令是用来构成格局的,换一种说法就是用神和格局其实是同一种东西。而算命第...

2023-02-15

天天关注:(台青话融合)台青林姿佑成都创业记:“趁年轻来大陆闯一闯”

中新社成都2月15日电题:台青林姿佑成都创业记:“趁年轻来大陆闯一闯”作者单鹏近日,在成都一所社区教...

2023-02-15

环球微头条丨吃了蟹黄苦的螃蟹怎么办 吃了蟹黄苦的螃蟹有什么补救方法

1、吃了蟹黄苦的螃蟹通过催吐以及洗胃的方式补救。2、螃蟹的味道发苦通常是因为生长的环境被污染了,食...

2023-02-15

世界热点!江南大学莱姆顿学院怎么样

江南大学莱姆顿学院,创立于2001年,位于江苏省无锡市,是由教育部直属“211”工程重点建设的百年名校江...

2023-02-15

【全球热闻】current是什么意思 current是中文意思

1、current:adj 现时发生的;当前的;现在的;通用的;流通的;流行的;n (海洋或江河的)水流;气流;电流;思潮;潮流;趋向;2

2023-02-15

世界动态:来佳俊_关于来佳俊简述

1、来佳俊,男,出生于1996年,浙江萧山人,自幼失明,光明天使“荣耀艺术团”成员。2、来佳俊曾和郎朗...

2023-02-15

重点聚焦!奥普光电(002338)2月15日主力资金净买入860.88万元

截至2023年2月15日收盘,奥普光电(002338)报收于26 29元,上涨2 34%,换手率1 91%,成交量4 59万手,成交额1 2亿元。

2023-02-15

【当前独家】慕斯蛋糕和奶油蛋糕哪个更健康_慕斯蛋糕和奶油蛋糕的区别

1、慕斯,是一种奶冻式的甜点,可以直接吃或做蛋糕夹层。2、通常是加入cream与凝固剂来造成浓稠冻状的效...

2023-02-15

【当前独家】张嘉泽李念假戏真做 演戏是真绯闻是假

张泽嘉李念因共同出演电视剧蜗居被传出张嘉泽李念假戏真做的绯闻,据悉绯闻为假,二人均有自己的感情生...

2023-02-15

环球新资讯:02月15日09时湖南株洲疫情数据 阳了以后为什么会腰疼?应该怎么办?

02月15日09时湖南株洲疫情数据阳了以后为什么会腰疼?应该怎么办?以下为详情!一、02月15日09时株洲疫...

2023-02-15

焦点热议:开学第一课,杨浦警察蜀黍想对同学们说→

出门在外安全最重要,开学第一课,就让警察蜀黍来给同学们上一堂交通安全课。同学们大家好,我是来自上...

2023-02-15

环球速读:lolIEM11世界总决赛赛程

LOL英雄联盟IEM11世界总决赛同样是受到全世界英雄联盟玩家的关注,IEM的比赛分为四站,参赛的队伍都是来...

2023-02-15

【天天速看料】成都双流国际机场,获评三星级!

2月13日,中国民用机场协会发出通知,对2022年度“双碳机场”评价结果进行公示。此次全国共有19家机场获...

2023-02-15

当前速看:立体爱心盒子折纸图解步骤_立体爱心盒子折纸图解

1、第一步:准备一张方形彩纸。2、第二步:分别沿中线和对角线折叠锯齿形折痕。3、第三步:将正方形彩纸...

2023-02-15

热点在线丨600字日记集锦【5篇】

日记600字怎么写呢?当我们的内心比较烦躁的时候,我们可以和日记诉说我们的真实想法,写完日记就觉得自...

2023-02-15

天天动态:初一上册语文复习资料-人教版

1、七年级上册:童趣一、解释加点词的含义答案项为之强项:颈,脖颈。2、强:通“僵”,僵硬。3、2、徐喷...

2023-02-15

快看:2017f1上海站门票预订多少钱价格

2017F1中国大奖赛比赛即将开始,2017F1上海站门票预售开启,那么你知道2017f1上海站门票多少钱,在哪里...

2023-02-15

当前聚焦:广州到香港高铁价目表_广州到香港高铁时间表

1、广州到香港的火车每天共有12列,其始发站为广州,终点站为香港九龙,全程仅一小时五十八分。2、其时...

2023-02-14

全球热门:炼奶的简单自制方法图解步骤

炼奶对于玩烘焙来说一定不陌生,经常会用到,很多时候我们都是买现成的,但是其实我们可以在家自己慢慢...

2023-02-14

每日信息:免费好用OCR软件图片文字识别还能翻译

全称叫做opticalcharacterrecognition,是对图像领域的文字进行识别。

2023-02-14

环球焦点!蕾,不要跑!对着它冲过来!(钛沉默者词条翻译)

本文是对于星球大战系列相关词条的翻译,取自https: starwars fandom com wiki TIE vn_space_su...

2023-02-14

资讯推荐:核工程与核技术专业就业前景如何

当前要闻:协鑫能科:协鑫集团与宁德时代已签署战略合作协议

速读:贷款人离世后剩下房贷该如何处理?情况不同处理方式不同具体是什么情况

环球热头条丨VOA慢速英语听力资源

环球今亮点!昵称简约游戏女生可爱_游戏名字女生简短可爱

环球速递!山西出台优抚优待政策激励大学生参军报国

今日要闻!【机构调研记录】华商基金调研南网能源、民德电子

环球热讯:阳了应该怎么办-阳性感染者如何用药 02月14日06时辽宁锦州疫情数据

世界热文:钱存银行定期和余额宝哪个利息高_余额宝和银行存款定期哪个利息更高

微资讯!华为电脑打印机脱机怎么重新连接_电脑打印机脱机怎么重新连接

环球热资讯!生鸡爪为什么那么白

世界速讯:qq星钻怎么点亮

全球即时:山鹰国际:发行不超20亿元公司债券申请获证监会同意注册批复

环球讯息:山东奥格森新材料有限公司

当前速读:韩国外交部:将推动尹锡悦最早今年上半年访美,纪念韩美同盟70周年

每日快播:陕西省气象台继续发布道路结冰黄色预警【Ⅲ级/较重】【2023-02-13】

前沿热点:逆否命题和原命题的关系是什么考试里的_逆否命题和原命题的关系是什么

当前快讯:姐姐过生日送什么礼物

当前快播:与名家面对面,感受书香泉城!我们“首届济南书市”见

全球简讯:木兰动态 | 《流浪地球2》《熊出没》票房超46亿;乐华娱乐联手华熙生物发力婴童赛道

环球热头条丨让政策找人 他们为受困居民”雪中送炭”

全球观速讯丨迷你城堡小镇欢乐世界官网在哪下载 最新官方下载安装地址

当前视点!桀骜不驯by余哈利_ldquo 桀犬吠尧 桀骜不驯 rdquo 读音及意思是什么

实时:女儿本命年妈妈送什么礼物好

焦点热门:于都县银坑镇举行企业入驻项目签约仪式

Copyright @  2015-2022 西南家电网版权所有  备案号: 皖ICP备2022009963号-8   联系邮箱:39 60 29 14 2@qq.com