二十一、Pod的安全策略

       

目录

一、PodSecurityPolicy的工作机制 1.25已被弃用

1、Pod 安全策略 由设置和策略组成,它们能够控制 Pod 访问的安全特征。

2、使用流程

二、开启PodSecurityPolicy


 为了更精细的控制pod启动或者更新时的安全管理,kubernetes从1.5版本开始引入podSecurityPolicy资源对象对pod安全策略进行管理。podSecurityPolicy是集群范围内的资源对象,不属于命名空间范围。

一、PodSecurityPolicy的工作机制 1.25已被弃用

        若需要启用PodSecurityPolicy机制,则首先需要设置 kube-apiserver 服务的启动参数,

--enable-admission-plugins 来开启 PodSecurityPolicy 准入控制器 --enable-admission-plugins=PodSecurityPolicy

1、Pod 安全策略 由设置和策略组成,它们能够控制 Pod 访问的安全特征。

这些设置分为如下三类:

  • 基于布尔值控制 :这种类型的字段默认为最严格限制的值
  • 基于被允许的值集合控制 :这种类型的字段会与这组值进行对比,以确认值被允许
  • 基于策略控制 :设置项通过一种策略提供的机制来生成该值,这种机制能够确保指定的值落在被允许的这组值中。

2、使用流程

  1. 启用PSP准入控制器
  2. 创建PSP
  3. 创建ClusterRole或者Role授权PSP使用
  4. 创建ClusterRoleBinding或者RoleBinding

二、开启PodSecurityPolicy

1、开启pod安全策略
系统默认为:--enable-admission-plugins=NodeRestriction
添加:--enable-admission-plugins=PodSecurityPolicy
在开启PodSecurityPolicy准入控制器后,k8s默认不允许创建任何Pod,需要创建PodSecurityPolicy和RBAC授权策略,Pod才能创建成功。

2、测试:
vim test.yaml
apiVersion: v1
kind: Pod
metadata:
  name: test
spec:
  contsiners:
    name: nginx
    image: nginx:1.17.1
    imagePullPolicy: IfNotPresent
使用kubectl创建时候  会提示  禁止创建,

3、创建PodSecurityPolicy
vim psp.yaml
apiVersion: policy/v1beta1 
kind: PodSecurityPolicy
metadata:
  name: psp-non-privileged
spec:
  privileged: false  #不允许特权模式的Pod
  seLinux:
    rule: RunAsAny
  supplementalGroups:
    rule: RunAsAny
  runAsUser:
    rule: RunAsAny
  fsGroup:
    rule: RunAsAny
  volumes:
  - '*'
kubectl apply -f psp.yaml
查看psp
kubectl get psp  或者 kubectl get PodSecurityPolicy
此时就可以创建pod了。

上边的psp.yaml,设置了不允许创建特权的pod,例如,在下面的YAML配置文件pod-privileged.yaml中为Pod设置了特权模式:
apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - name: nginx
    image: nginx:latest
    imagePullPolicy: IfNotPresent
    ports:
    - containerPort: 80
    securityContext:
      privileged: true
此时创建时候就会报错,

相关推荐

  1. Pod安全策略

    2024-02-17 18:18:01       30 阅读
  2. Kubernetes实战()-Pod时区修改

    2024-02-17 18:18:01       34 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-17 18:18:01       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-17 18:18:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-17 18:18:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-17 18:18:01       18 阅读

热门阅读

  1. gem5学习(20):替换策略——Replacement Policies

    2024-02-17 18:18:01       29 阅读
  2. Linux-SSH被攻击-解决方案

    2024-02-17 18:18:01       31 阅读
  3. MySQL篇之索引创建与失效

    2024-02-17 18:18:01       30 阅读
  4. C#面:简述 CTS , CLS , CLR , IL

    2024-02-17 18:18:01       29 阅读
  5. 算法——图论——最短路径——Floyd / 传递闭包

    2024-02-17 18:18:01       31 阅读
  6. C语言——oj刷题——获取月份天数

    2024-02-17 18:18:01       30 阅读
  7. 【Linux】指令 【whereis】

    2024-02-17 18:18:01       31 阅读
  8. C++特殊类设计

    2024-02-17 18:18:01       27 阅读
  9. 257.二叉树的所有路径

    2024-02-17 18:18:01       30 阅读
  10. 在Spring中事务失效的场景

    2024-02-17 18:18:01       30 阅读