您与该站点的连接不安全(nginx入口)

时间:2019-11-03 09:11:21

标签: kubernetes https google-cloud-platform google-kubernetes-engine nginx-ingress

https://github.com/kubernetes-retired/contrib/tree/master/ingress/controllers/nginx/examples/tls

本教程已尝试为我的入口资源配置https。我已经完成了所有必要的步骤,但是当我尝试访问我的网站时,它会向我发送邮件:

enter image description here

我还应该执行一些其他步骤吗?

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/from-to-www-redirect: "true"
spec:
  rules:
  - host: www.domain.com
    http:
      paths:
      - backend:
          serviceName: front-end-service
          servicePort: 80
        path: /
  - host: www.domain.com
    http:
      paths:
      - backend:
          serviceName: back-end-service
          servicePort: 3000
        path: /api
  tls:
  - hosts:
    - www.domain.com
    secretName: my-sectet

我创建的Sectet存在。我已经通过使用此命令kubectl get secrets进行了检查,并命名为与在入口资源中使用的名称相同。

如果您需要其他信息,请告诉我

2 个答案:

答案 0 :(得分:1)

如评论中所述,本教程将指导您设置自签名证书,该证书不会被您的浏览器信任。您需要提供浏览器信任的证书,或者暂时在本地忽略该错误。 LetsEncrypt是一种获取真实证书的简便且免费的方法,而cert-manager是通过Kubernetes进行认证的一种方法。

答案 1 :(得分:1)

如果您愿意使用jetstack,则可以通过头盔图表参考this进行安装,然后按照this stackoverflow post中的步骤进行操作,可以通过安全连接完成此操作。

Jetstack会创建修补到入口tls本身的秘密,并在您将秘密名称与入口规则映射后,只需检查证书的状态,证书就应该处于就绪状态。