首页 > 其他分享 >CKS 考试题整理 (15)-镜像扫描ImagePolicyWebhook

CKS 考试题整理 (15)-镜像扫描ImagePolicyWebhook

时间:2023-06-16 16:44:20浏览次数:78  
标签:ImagePolicyWebhook 15 kubernetes yaml admission epconfig 考试题 etc 镜像

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 找到容器镜像扫描仪的日志文件。

 

参考资料

https://kubernetes.io/zh-cn/docs/reference/access-authn-authz/admission-controllers/

https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/

 

 

https://kubernetes.io/zh-cn/docs/tasks/debug/debug-cluster/audit/

 

 

解答

切换集群

kubectl config use-contextKSSH00901

 

  1. 切换到master
ssh master01 && sudo -i

 

  1. 编辑 admission_configuration.json 修改 defaultAllow 为 false
vim /etc/kubernetes/epconfig/admission_configuration.json

......

"denyTTL": 50,

"retryBackoff": 500,

"defaultAllow": false # 将 true 改完 false

......
  1. 编辑 /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 地址

......
 

 

  1. 编辑 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

  1. 重启 kubelet
systemctl restart kubelet

 

等待3分钟左右,等集群应用策略后,确保 kube-apiserver 是running 的

检查

 

标签:ImagePolicyWebhook,15,kubernetes,yaml,admission,epconfig,考试题,etc,镜像
From: https://www.cnblogs.com/dagongzhe/p/17485947.html

相关文章

  • CKS 考试题整理 (13)-使用 sysdig 检查容器里里的异常进程
    Task使用运行时检测工具来检测Podtomcat单个容器中频发生成和执行的异常进程有两种工具可供使用:sysdigfalco注:这些工具只预装在cluster的工作节点,不在master节点。 使用工具至少分析30秒,使用过滤器检查生成和执行的进程,将事件写到/opt/KSR00101/incidents/summ......
  • CKS 考试题整理 (09)-日志审计 log audit
    Task在cluster中启用审计日志。为此,请启用日志后端,并确保:日志存储在/var/log/kubernetes/audit-logs.txt日志文件能保留10天最多保留2个旧审计日志文件 /etc/kubernetes/logpolicy/sample-policy.yaml提供了基本策略。它仅指定不记录的内容。注意:基本策略位于clu......
  • CKS 考试题整理 (10)-Dockerfile检测
    Task分析和编辑给定的Dockerfile/cks/docker/Dockerfile(基于ubuntu:16.04镜像),并修复在文件中拥有的突出的安全/最佳实践问题的两个指令。 分析和编辑给定的清单文件/cks/docker/deployment.yaml,并修复在文件中拥有突出的安全/最佳实践问题的两个字段。 注意:请勿添加......
  • CKS 考试题整理 (11)-沙箱运行容器gVisor
    Context该cluster使用containerd作为CRI运行时。containerd的默认运行时处理程序是runc。containerd已准备好支持额外的运行时处理程序runsc(gVisor)。 Task使用名为runsc的现有运行时处理程序,创建一个名为untrusted的RuntimeClass。更新namespaceserver中的所有Pod......
  • CKS 考试题整理 (06)-默认网络策略
    Context一个默认拒绝(default-deny)的NetworkPolicy可避免在未定义任何其他NetworkPolicy的namespace中意外公开Pod。Task为所有类型为Ingress+Egress的流量在namespacetesting中创建一个名为denypolicy的新默认拒绝NetworkPolicy。此新的NetworkPolicy必须拒绝namespacetest......
  • CKS 考试题整理 (07)-RBAC - RoleBinding
    Context绑定到Pod的ServiceAccount的Role授予过度宽松的权限,完成以下项目以减少权限集。Task一个名为web-pod的现有Pod已在namespacedb中运行。编辑绑定到Pod的ServiceAccountservice-account-web的现有Role,仅允许只对service类型的资源执行get操作。......
  • CKS 考试题整理 (05)-容器安全,删除特权pod
    context检查在namespaceproduction中运行的Pod,并删除任何非无状态或非不可变的Pod。task使用以下对无状态和不可变的严格解释:能够在容器内存储数据的Pod的容器必须被视为非无状态的。注意:你不必担心数据是否实际上已经存储在容器中。被配置为任何形式的特权Po......
  • 升级OpenSSL OpenSSH --2023年6月15日
    2023年6月15日升级OpenSSLOpenSSH#查看openssh版本命令ssh-V#查看openssl版本命令opensslversion当前版本[root@node01~]#ssh-VOpenSSH_7.4p1,OpenSSL1.0.2k-fips26Jan2017[root@node01~]#opensslversionOpenSSL1.0.2k-fips26Jan2017......
  • 【2023-06-15】爱护肤了
    20:00要对得起每一顿饭,更何况这是一个这么有意思的世界。                                                 ——黄永玉近两周来,何太开始注意护肤了,这是我最愿意看到的......
  • 2023.6.15 08.数据库安全管理
    08.数据库安全管理⽤户账户管理访问权限系统访问权限回收在讨论安全时,我们需要考虑整个服务器主机安全(⽽不仅仅是MySQL服务)需要抵御攻击,窃听,扫描,破解等。MySQL对所有连接数据库⽤户进⾏了ACL访问控制,减少服务器被内部不规范操作导致故障。MySQL还⽀持客户端和......