【问题标题】:kubernetes - can't access the cluster with new user certificatekubernetes - 无法使用新用户证书访问集群
【发布时间】:2020-06-01 00:11:18
【问题描述】:

我想在 kubernetes 中创建新用户 admin,我执行了创建和授权证书的所有步骤,但是当我想访问 api 时,我收到了一个授权错误。 我执行以下步骤来创建用户管理员:

1/openssl genrsa -out user.key 2048

2/openssl req -new -key user.key -out user.csr -subj "/CN=kube-user"

3/

cat <<EOF | kubectl apply -f -
apiVersion: certificates.k8s.io/v1beta1
kind: CertificateSigningRequest
metadata:
  name: user
spec:
  request: $(cat user.csr | base64 | tr -d '\n')
  usages:
  - digital signature
  - key encipherment
  - server auth
EOF

4/k certificate approve user

5/k get csr user -o jsonpath='{.status.certificate}' | base64 --decode &gt; user.crt

6/kubectl config view -o jsonpath='{.clusters[0].cluster.certificate-authority-data}' --raw | base64 --decode - &gt; ca.crt

7/

curl https://$Kube-Master-Ip:6443/api/v1 \
 --key user.key \
 --cert user.crt \
 --cacert ca.crt

8/ 这是我收到的:

{
"kind":"Status",
"apiVersion":"v1",
"metadata":{},
"status":"Failure",
"message":"Unauthorized",
"reason":"Unatuhorized",
"code":401
}

文档来源:https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/

【问题讨论】:

    标签: ssl kubernetes certificate tls1.2 createuser


    【解决方案1】:

    第 2 步命令错误。管理员用户应该是 system:masters 组的一部分。

    openssl req -new -key user.key -out user.csr -subj "/CN=kube-user/O=system:masters"
    

    【讨论】:

    猜你喜欢
    • 2019-12-16
    • 2023-03-09
    • 2021-02-23
    • 2022-01-26
    • 1970-01-01
    • 2019-08-15
    • 2016-01-16
    • 1970-01-01
    • 2020-09-10
    相关资源
    最近更新 更多