- 创建一个新的PodSecurityPolicy,名称为prevent-psp-policy,防止创建特权容器。
- 创建一个新的ClusterRole,名称为restrict-access-role,使用prevent-psp-policy
- 在已存在的命名空间development中创建一个新的serviceAccount,名称为psp-denial-sa
- 创建一个新的clusterRoleBinding,名称为deny-access-bind,把restrict-access-role绑定到psp-denial-sa
环境搭建
1.开启PSP
vim /etc/kubernetes/manifests/kube-apiserver.yaml
systemctl restart kubelet
2.创建命名空间
kubectl create ns development
namespace/development created
解题
任务一
apiVersion: policy/v1beta1
kind: PodSecurityPolicy
metadata:
name: prevent-psp-policy
spec:
privileged: false # 不允许提权的 Pod!
# 以下内容负责填充一些必需字段。
seLinux:
rule: RunAsAny
supplementalGroups:
rule: RunAsAny
runAsUser:
rule: RunAsAny
fsGroup:
rule: RunAsAny
volumes:
- '\*'
任务二
命令
kubectl create clusterrole restrict-access-role --verb=use --resource=psp --resource-name=prevent-psp-policy
或者使用yaml文件
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: restrict-access-role
rules:
- apiGroups: ['policy']
resources: ['podsecuritypolicies']
verbs: ['use']
resourceNames:
- prevent-psp-policy
任务三
kubectl create sa psp-denial-sa -n development
任务四
kubectl create clusterrolebinding deny-access-bind --clusterrole=restrict-access-role --serviceaccount=development:psp-denial-sa -n development
结果截图
可以看到有个Warning提示,1.25版本之后就没有psp了,之后这个考题可能变动。
参考
k8s-v1.24-pod-security-policy/
k8s-v1.24-admission-controllers
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.youkuaiyun.com/topics/618653875)
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!