我在 AWS EKS 集群上运行了 Nginx 入口控制器。我正在尝试启用相互 SSL。我需要使用的服务器证书抛出 SSL 错误:
Error: exit status 1
2019/01/16 14:37:40 [notice] 3642#3642: ModSecurity-nginx v1.0.0
2019/01/16 14:37:40 [emerg] 3642#3642: SSL_CTX_use_certificate("/etc/ingress-controller/ssl/default-tls.pem") failed (SSL: error:140AB18E:SSL routines:SSL_CTX_use_certificate:ca md too weak)
nginx: [emerg] SSL_CTX_use_certificate("/etc/ingress-controller/ssl/default-tls.pem") failed (SSL: error:140AB18E:SSL routines:SSL_CTX_use_certificate:ca md too weak)
nginx: configuration file /tmp/nginx-cfg917440593 test failed
Run Code Online (Sandbox Code Playgroud)
当我尝试使用具有 sha256 的自生成证书时,它运行良好。是否有任何解决方法可以让 Ingress 控制器接受较弱的证书?我曾尝试编辑“ssl-ciphers”注释,但仍然遇到相同的错误。
这是我正在使用的入口:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/server-snippet: |
ssl_ciphers "ALL";
ssl_password_file /etc/ingress-controller/ssl/password/p.txt;
nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
nginx.ingress.kubernetes.io/auth-tls-secret: "default/ca"
nginx.ingress.kubernetes.io/auth-tls-verify-depth: "1"
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
name: test-ingress
namespace: default
spec:
rules:
- …Run Code Online (Sandbox Code Playgroud)