Nginx Ingress 证书

申请证书

xxx.com.key:私钥文件

  • 作用:属于服务器的 "私密钥匙",用于解密客户端发送的加密数据,以及对服务器响应数据进行签名(证明数据来自服务器)。
  • 内容格式 :通常为 PEM 格式 (文本文件),以 -----BEGIN PRIVATE KEY----- 开头,-----END PRIVATE KEY----- 结尾,中间是经过 Base64 编码的二进制私钥数据。

xxx.com.pem:证书文件

  • 作用:属于服务器的 "公开身份证明",包含服务器域名、证书有效期、颁发机构(CA)信息等,用于向客户端证明服务器身份,并提供公钥供客户端加密数据。
  • 内容格式 :通常为 PEM 格式 (文本文件),以 -----BEGIN CERTIFICATE----- 开头,-----END CERTIFICATE----- 结尾,中间是经过 Base64 编码的证书数据。

查看证书详情:

openssl x509 -in xxx.com.pem -text -noout

Validity显示了证书的有效期

sh 复制代码
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            3f:f1:e6:5e:f3:10:77:0e:77:0a:25:6c:51:60:cb:48
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: C=CN, O=XXXXXXXX Co., Ltd., CN=Xcc Trust OV SSL CA
        Validity
            Not Before: Jan 14 11:14:44 2025 GMT
            Not After : Jan 14 11:14:43 2026 GMT

创建 TLS Secret

sh 复制代码
kubectl create secret tls xxx-tls-secret --key=xxx.com.key --cert=xxx.com.pem

查看是否创建成功

sh 复制代码
kubectl get secrets xxx-tls-secret 

修改Ingress资源

sh 复制代码
kubectl edit secret target-ingress
yaml 复制代码
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: xxx-ingress
  namespace: default  # 根据实际情况修改
  annotations:
    kubernetes.io/ingress.class: "nginx"  # 指定Ingress控制器类型
    # 可选:启用HTTPS重定向
    nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
spec:
  tls:
    - hosts:
        - xxx.com        # 证书绑定的域名 跟下面一致
      secretName: xxx-tls-secret  # 引用之前创建的Secret
  rules: 
    - host: xxx.com      # 证书绑定的域名 跟上面一致
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: your-service-name  # 后端服务名称
                port:
                  number: 80  # 后端服务端口

验证证书的有效性

在 Chrome 浏览器中可按以下步骤查看当前站点证书的有效期

  • 访问目标网站,确保该网站使用 HTTPS 协议。
  • 点击地址栏左侧的锁形图标。
  • 在弹出的菜单中选择 "证书" 或 "证书(有效)"。
  • 在弹出的证书窗口中,切换到 "详细信息" 选项卡。
  • 找到 "有效期" 字段,即可查看证书的起始日期和到期日期
相关推荐
IT_陈寒12 分钟前
Redis 性能翻倍的 5 个隐藏技巧,99% 的开发者都不知道第3点!
前端·人工智能·后端
JaguarJack13 分钟前
PHP 桌面端框架NativePHP for Desktop v2 发布!
后端·php·laravel
自由的疯35 分钟前
Java 怎么学习Kubernetes
java·后端·架构
自由的疯35 分钟前
Java kubernetes
java·后端·架构
QX_hao7 小时前
【Go】--map和struct数据类型
开发语言·后端·golang
MC丶科7 小时前
【SpringBoot 快速上手实战系列】5 分钟用 Spring Boot 搭建一个用户管理系统(含前后端分离)!新手也能一次跑通!
java·vue.js·spring boot·后端
G探险者8 小时前
为何一个系统上线要经过N轮测试?带你看懂企业级发布体系
后端
lang201509289 小时前
Spring Boot 入门:5分钟搭建Hello World
java·spring boot·后端
间彧11 小时前
Windows Server,如何使用WSFC+nginx实现集群故障转移
后端