CKS 考试题整理 (15)-镜像扫描ImagePolicyWebhook
Context
cluster 上设置了容器镜像扫描器,但尚未完全集成到cluster 的配置中。
完成后,容器镜像扫描器应扫描并拒绝易受攻击的镜像的使用。
Task
注意:你必须在 cluster 的 master 节点上完成整个考题,所有服务和文件都已被准备好并放置在该节点上。
给定一个目录 /etc/kubernetes/epconfig中不完整的配置,
以及具有 HTTPS 端点 https://acme.local:8082/image_policy 的功能性容器镜像扫描器:
1. 启用必要的插件来创建镜像策略
2. 校验控制配置并将其更改为隐式拒绝(implicit deny)
3. 编辑配置以正确指向提供的 HTTPS 端点
最后,通过尝试部署易受攻击的资源 /cks/img/web1.yaml 来测试配置是否有效。
你可以在 /var/log/imagepolicy/roadrunner.log 找到容器镜像扫描仪的日志文件。




解答
切换集群
kubectl config use-contextKSSH00901
- 切换到master
ssh master01 && sudo -i
- 编辑 admission_configuration.json 修改 defaultAllow 为 false
vim /etc/kubernetes/epconfig/admission_configuration.json ...... "denyTTL": 50, "retryBackoff": 500, "defaultAllow": false # 将 true 改完 false ......
- 编辑 /etc/kubernetes/epconfig/kubeconfig.yml,添加 webhook server 地址:
操作前,先备份文件
mkdir bak14 cp /etc/kubernetes/opconfig/kubeconfig.yml bak14/ vim /etc/kubernetes/opconfig/kubeconfig.yml
修改内容如下:
...... certificate-authority: /etc/kubernetes/epconfig/server.crt server: https://acme.local:8082/image_policy # 添加 webhook server 地址 ......
- 编辑 kube-apiserver.yaml ,从官网中引用 imagePolicyWebhook 的配置信息:
先备份文件
cp /etc/kubernetes/manifests/kube-apiserver.yaml bak14/ vim /etc/kubernetes/manifests/kube-apiserver.yaml
在 command: 下添加如下内容
- --enable-admission-plugins=NodeRestriction,ImagePolicyWebhook - --admission-control-config-file=/etc/kubernetes/epconfig/admission_configuration.json

在kube-apiserver.yaml 的 volumeMounts 增加
volumeMounts: # 在volumeMounts 下面增加 - mountPath: /etc/kubernetes/epconfig name: epconfig readOnly: true

在 kube-apiserver.yaml 的 volumes 增加
volumes: # 在 volumes 下面增加 - name: epconfig hostPath: path: /etc/kubernetes/epconfig type: DirectoryOrCreate
注意:如果是目录,写 DirectoryOrCreate 如果是文件,则写File

- 重启 kubelet
systemctl restart kubelet
等待3分钟左右,等集群应用策略后,确保 kube-apiserver 是running 的
检查

CKS 考试题整理 (15)-镜像扫描ImagePolicyWebhook的更多相关文章
- Trivy 容器镜像扫描工具学习
简介 官方地址:https://github.com/aquasecurity/trivy Trivy是aqua(专注云原生场景下的安全)公司的一款开源工具,之前历史文章也有对aqua的一些介绍. T ...
- linux基础:第三关课前考试题整理
1.如何取得/etc/hosts 文件的权限对应的数字内容,如-rw-r--r-- 为 644, 要求使用命令取得644 这样的数字. [root@server ~]# stat /etc/hosts ...
- 整理15款实用javascript富文本编辑器
百度UEditor 官方网址:http://ueditor.baidu.com/website/ UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验 ...
- springboot秒杀课程学习整理1-5
1)交易模型设计 交易模型(用户下单的交易模型)OrderModel id(String 交易单号使用String), userId,itemId,amount(数量),orderAmount(总金额 ...
- Vue知识整理15:组件注册
采用局部注册组件: 将代码放在vue的一个实例中,而不是单列申明.
- kali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap
Kali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap 文/玄魂 目录 Kali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap. 1 N ...
- android媒体文件扫描
项目中可能有这样的需求:下载或导入.导出的图片.音乐等媒体文件,需要马上能在图库或本地视屏播放器中显示出来,或者要能在媒体数据库中查询到媒体文件的相关信息,这时我们就得主动通知系统扫描新的媒体文件了. ...
- 浅谈Linux容器和镜像签名
导读 从根本上说,几乎所有的主要软件,即使是开源软件,都是在基于镜像的容器技术出现之前设计的.这意味着把软件放到容器中相当于是一次平台移植.这也意味着一些程序可以很容易就迁移,而另一些就更困难. 我大 ...
- 转:基于IOS上MDM技术相关资料整理及汇总
一.MDM相关知识: MDM (Mobile Device Management ),即移动设备管理.在21世纪的今天,数据是企业宝贵的资产,安全问题更是重中之重,在移动互联网时代,员工个人的设备接入 ...
- Android扫描二维码 实现 登录网页
工程代码:ScanQRcode.zip ------------------------------------------------------------------ 1. 扫描二维码登录的实现 ...
随机推荐
- ChatGPT搭建AI网站实战
1.概述 ChatGPT是一款基于GPT-3.5架构的大型语言模型,它能够进行自然语言处理和生成对话等任务.作为一款智能化的聊天机器人,ChatGPT有着广泛的应用场景,如在线客服.智能助手.个性化推 ...
- 第一次博客:PTA题目集1-3总结
第一次博客:PTA题目集1-3总结 前言:JAVA是一门非常好的语言,因其面向对象的思想,在解决问题时思路与上学期学习的C语言截然不同,但是其优势也是显然易见的,特别是在写大型程序时其面向对象的思想, ...
- WPF 界面布局、常用控件入门教程实例 WPF入门学习控件快速教程例子 WPF上位机、工控串口通信经典入门
WPF(Windows Presentation Foundation)是一种用于创建 Windows 桌面应用程序的框架,它提供了丰富的控件库和灵活的界面布局,可以创建现代化的用户界面.下面是 WP ...
- AIArena Frontend 初步练习
尝试对starter项目的页面进行改变 修改侧边栏,只留下最上面的「仪表盘」和「列表页」两个大模块 in SideNav.vue the code for the sidebar menu is: & ...
- vue之箭头函数
目录 说明 解决方法一 重新定义this 解决方法二 使用箭头函数 无参数的箭头函数 有一个参数的箭头函数 有两个参数的箭头函数 有一个参数一个返回值的箭头函数 说明 当在一个方法(函数)里面再定义一 ...
- 【杂绪】#4 & 【Diary】CSP-S1 2021 游记(慎) & CSP-S 备赛发狂日记
减少..减少掉 我没法同时做那么多事情了........ -------------------------------------------- 但是我\(\color{#EEEEEE}{真真切切地 ...
- day32:进程&进程join&守护进程deamon
目录 1.进程的基本概念 2.进程初体验 3.join:先子后主 4.守护进程:deamon 5.使用自定义类的方式创建进程 6.两张和进程相关的图 进程的基本概念 什么是进程? 进程就是正在运行的程 ...
- PyTorch基础(Numpy & Tensor)
Numpy与Tensor是PyTorch的重要内容 Numpy的使用 Numpy是Python中科学计算的一个基础包,提供了一个多维度的数组对象,数组是由numpy.ndarray类来实现的,是Num ...
- vue常用标签(引入vue.js写法)
首先在html中引入vue.js,具体怎么下载可以参考https://blog.csdn.net/lvoelife/article/details/129254906,下载后在html中引入: 一 内 ...
- chatgpt接口开发笔记1:completions接口
chatgpt接口开发笔记1:completions接口 个人博客地址: https://note.raokun.top 拥抱ChatGPT,国内访问网站:https://www.playchat.t ...