首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ssl_client_certificate失败403被禁止

问ssl_client_certificate失败403被禁止
EN

Stack Overflow用户
提问于 2022-10-03 06:43:36
回答 1查看 102关注 0票数 1

我试图在入口中安装组织客户端证书链(此证书的一对安装在所有组织用户膝上型计算机上,以便只有组织用户可以访问该服务)。我用下面的命令创建了一个秘密

代码语言:javascript
复制
kubectl create secret generic auth-tls-chain --from-file=org_client_chain.pem --namespace=default
secret/auth-tls-chain created

并创造了我的入口如下

代码语言:javascript
复制
metadata:
  name: my-new-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
    cert-manager.io/cluster-issuer: "letsencrypt-prod"
    nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
    nginx.ingress.kubernetes.io/auth-tls-secret: "default/auth-tls-chain"
    nginx.ingress.kubernetes.io/auth-tls-verify-depth: "3"
    nginx.ingress.kubernetes.io/auth-tls-pass-certificate-to-upstream: "true"
spec:
  rules:
  - host: example.com
    http:
      paths:
      - pathType: Prefix
        path: "/"
        backend:
          service:
            name: hello-one
            port:
              number: 80
  tls:
  - hosts:
    - example.com
    secretName: echo-tls

但是当我试图访问我的域名时,我会收到一个"403禁止“错误。我打开了nginx配置文件,可以看到证书有一些问题。

代码语言:javascript
复制
kubectl exec ingress-nginx-controller-5fbf49f7d7-sjvpw cat /etc/nginx/nginx.conf
    # error obtaining certificate: local SSL certificate default/auth-tls-chain was not found
        return 403;

我的客户端证书链看起来类似于下面的.PEM格式。

代码语言:javascript
复制
-----BEGIN CERTIFICATE-----
sdfkhdskhflds
...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
saflsafhl
sfadfasdf
-----END CERTIFICATE-----
  1. 我尝试用下面的命令创建这个秘密。 kubectl创建秘密泛型ca秘密--from-file=org_client_chain.pem=org_client_chain.pem

但没有运气。有人能帮我吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-08 03:02:52

正如Github 链接中提到的,您必须使用证书文件名作为包含完整证书颁发机构链的ca.crt。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73931939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档