问题标签 [kubernetes-security]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
33346 浏览

kubernetes - 我在哪里可以获得 Kubernetes API 资源和子资源的列表?

我正在尝试以尽可能少的许可方式配置 Kubernetes RBAC,并且我想将我的角色范围限定为特定的资源和子资源。我浏览了文档,找不到资源及其子资源的简明列表。

我对管理部署规范的一部分的子资源特别感兴趣——容器映像。

0 投票
1 回答
482 浏览

kubernetes - kubernetes kubesrpay 配置 - 禁用不安全端口并将 kube_api_anonymous_auth 设置为 false

默认情况下 kubespray 集群配置有。

我们正在寻找禁用不安全端口 (kube_apiserver_insecure_port) 和 kube_api_anonymous_auth 两者。

这是 kuberspra​​y 安装的限制吗?安装后可以吗?我们如何配置相同的后期安装?

0 投票
1 回答
594 浏览

kubernetes - Kubernetes集群过期后重新部署证书

我的 kubernetes 中的证书已过期。重新部署证书的步骤是什么。重新部署后 pod 的运行状况受到影响。我该如何克服这个?

0 投票
2 回答
1877 浏览

kubernetes - 如何在 kube-apiserver 中设置审计策略?

我一直在阅读有关如何在 kubernetes 中设置审计的信息它基本上说为了启用审计,我必须在启动 kube-apiserver 时使用 flag 指定一个 yaml 策略文件--audit-policy-file

现在,关于如何实现这一点,我有两件事不明白:

  1. 添加/更新运行 kube-apiserver 的命令的启动参数的正确方法是什么?我无法更新 pod,所以我需要以某种方式克隆 pod 吗?或者我应该kops edit cluster按照这里的建议使用:https ://github.com/kubernetes/kops/blob/master/docs/cluster_spec.md#kubeapiserver 。令人惊讶的是,kubernetes 没有为此创建部署,我应该自己创建吗?
  2. 特别是要设置审核,我必须将 yaml 文件作为启动参数传递。如何上传/使此 yaml 文件可用以制作--audit-policy-file=/some/path/my-audit-file.yaml. 我是否使用它和/或卷创建 configMap?之后如何引用此文件,以便在运行 kube-apiserver 启动命令时在文件系统中可用?

谢谢!

0 投票
1 回答
32603 浏览

kubernetes - kubernetes PodSecurityPolicy 设置为 runAsNonRoot,容器有 runAsNonRoot 并且镜像有非数字用户(appuser),无法验证用户是非 root

kubernetes PodSecurityPolicy 设置为 runAsNonRoot,Pod 未启动后出现错误错误:容器已 runAsNonRoot 并且图像具有非数字用户(appuser),无法验证用户是非 root

我们正在 docker 容器中创建用户 (appuser) uid -> 999 和组 (appgroup) gid -> 999,并且我们正在使用该用户启动容器。

但是创建的 pod 会抛出错误。

0 投票
2 回答
1910 浏览

kubernetes - 在 kubeadm 集群上配置 PodSecurityPolicy

我尝试使用 kubeadm 在安装在 ubuntu 16.04 上的 1.10.1 集群上设置 PodSecurityPolicy,并按照https://kubernetes.io/docs/concepts/policy/pod-security-policy/上的说明进行操作

/etc/kubernetes/manifests/kube-apiserver.yaml 所以我在添加",PodSecurityPolicy"--admission-controlarg时更改了主服务器上的 apiserver 清单

当我这样做并运行kubectl get pods -n kube-system api-server 时,没有列出,显然我已经设法命中了一个正在运行的 apiserver 实例,因为我得到了 kube-system 命名空间中所有其他 pod 的列表

我可以看到已经使用 PodSecurityPolicy 准入控制器启动了一个新的 docker 容器,它显然正在为 kubectl 请求提供服务

当我检查 kubelet 日志时,journalctl -u kubelet我可以看到

Apr 15 18:14:23 pmcgrath-k8s-3-master kubelet[993]: E0415 18:14:23.087361 993 kubelet.go:1617] Failed creating a mirror pod for "kube-apiserver-pmcgrath-k8s-3-master_kube-system(46dbb13cd345f9fbb9e18e2229e2e dd1)": pods "kube-apiserver-pmcgrath-k8s-3-master" is forbidden: unable to validate against any pod security policy: []

我已经添加了一个特权 PSP 并创建了一个集群角色和绑定并确认 PSP 正在工作

只是不确定为什么 apiserver kubelet 会出现此错误,因此不会出现在 pod 列表中,会认为 kubelet 创建了这个 pod,但不确定我是否必须为 apiserver、控制器管理器、调度程序和 kube-创建角色绑定- dns

没有说明如何处理这个问题的文档,我认为这是先有鸡还是先有蛋的情况,我必须引导集群,添加一些 PSP、ClusterRoles 和 ClusterRolebindings,然后才能改变 api 服务器的准入控制参数

有人有同样的问题或对此有任何指示吗?

谢谢帕特

0 投票
1 回答
4900 浏览

kubernetes - 有没有办法将 Kubernetes 秘密值放在 yaml 文件的 args 字段中

我有一个 kubernetes yaml 部署文件,它接受 db 用户名和密码作为参数,如下所示。

为了隐藏 db_username 和 db_password 的值,我想到了使用 kubernetes secret kind。但要实现这一点,我必须将 db_username 和 db_password 作为环境变量,以便我可以使用它,如下所示:

有什么方法可以在 args 本身中使用秘密,这样我就不必使用第二种方法。

0 投票
3 回答
2365 浏览

kubernetes - Kubenates RunAsUser 被禁止

当我尝试使用非 root fsgroup(此处为 2000)创建一个 pod

击中错误

版本

任何人都可以帮助我如何在集群中设置 ClusterRoleBinding。

0 投票
2 回答
3403 浏览

kubernetes - kubectl 端口转发是否加密?

在运行“kubectl port-forward”命令时,我找不到任何关于集群的 pod 和 locahost 之间的连接创建在何处被加密的任何信息。

它似乎使用了支持加密的“ socat ”库,但我不确定 kubernetes 是否真的使用它。

0 投票
1 回答
384 浏览

kubernetes - 解密 kubernetes master api 调用

团队,我在笔记本电脑上运行 kubectl 并捕获了相同的 Wireshark 跟踪。如何解密访问 api 服务器的流量?

例如:我们使用 Web 服务器的私钥解密 http 调用。在 k8s 世界中,我将如何解密对集群的调用?对此很陌生,所以需要了解。