gpt4 book ai didi

kubernetes - 为什么 kubectl 不要求输入密码?

转载 作者:行者123 更新时间:2023-12-02 12:02:45 24 4
gpt4 key购买 nike

为什么 kubectl 不要求输入密码?

  • 我使用 kubeadm
  • 在我的服务器上创建了一个 kubernetes 集群
  • 比我在本地机器上安装 kubectl
  • 并将/etc/kubernetes/admin.conf 的内容从我的服务器复制到我本地机器上的文件 ~/.kube/config 中。

  • 现在我无法使用 kubectl 从本地机器访问我自己的集群,而无需密码?为什么会这样?

    当我想通过 ssh 访问我的服务器时,我当然需要用户/密码或允许的 ssh key 。为什么 kubectl 不要求我输入密码?
    对我来说,这似乎不够安全。

    最佳答案

    Kubernetes 支持不同的身份验证策略,定义 here .

    一般Kubernetes集群使用client certificate authentication .如果您查看您的 ~/.kube/config文件你会看到一个像这样的字段:

    - name: kubernetes-admin
    user:
    client-certificate-data: <BASE64 ENCODED X509 CERTIFICATE>
    client-key-data: <BASE64 ENCODED PRIVATE KEY FOR THE CERTIFICATE>

    可以看到 kubernetes-admin用户有一个客户端证书数据和 key 。 Certificate Authority (CA) 信任此证书你的集群。

    当您使用 kubectl ,它发送 client certificate data用户到您的集群和您的集群 CA验证它。如果客户端通过验证,则您可以访问集群。

    关于kubernetes - 为什么 kubectl 不要求输入密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58898029/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com