任务

注意:你必须在 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 找到容器镜像扫描仪的日志文件。

 

解题

  1. 修改/etc/kubernetes/epconfig/admission_configuration.json,将defaultAllow设置为false
"defaultAllow": false
  1. 修改/etc/kubernetes/epconfig/kubeconfig.yml,添加webhook server地址
cluster:
    certificate-authority: /path/to/ca.pem   
    server: https://acme.local:8082/image_policy  # 增加该行
  1. 备份配置文件
mkdir -p /opt/backup/16
cp -f /etc/kubernetes/manifests/kube-apiserver.yaml /opt/backup/16
  1. 修改配置文件
    - --enable-admission-plugins=NodeRestriction,ImagePolicyWebhook #添加ImagePolicyWebhook
    - --admission-control-config-file=/etc/kubernetes/epconfig/admission_configuration.json #添加配置文件路径

      - mountPath: /etc/kubernetes/epconfig #添加挂载,具体参考配置文件其他范例
        name: epconfig
        readOnly: true
    - name: epconfig
      hostPath:
        path: /etc/kubernetes/epconfig
  1. 重启kubelet并检查
systemctl daemon-reload
systemctl restart kubelet
  1. 部署/cks/img/web1.yaml进行测试检查
kubectl apply -f /cks/img/web1.yaml

 

参考

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

posted on   eryoung2  阅读(147)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示