为**运维(Ops/System)**启用 SSL,通常目标是:服务之间、或对外暴露的运维平台(如 Prometheus、Grafana、Kibana、Jenkins、Consul、K8s API 等)使用 HTTPS/TLS 加密通信。
下面按常见场景给你一套可落地的做法。
| 场景 | 示例 |
|---|---|
| 运维平台 Web UI | Grafana / Kibana / Jenkins |
| 内部服务通信 | Prometheus → Alertmanager |
| 集群控制面 | Kubernetes API Server |
| 统一入口 | Nginx / Ingress / LB |
| 自动证书 | cert-manager / acme |
架构:
用户 → HTTPS → Nginx / Ingress → 运维服务(HTTP)
# 示例(自签,仅测试)
openssl req -x509 -nodes -days 365 \
-newkey rsa:2048 \
-keyout ops.key \
-out ops.crt
server {
listen 443 ssl;
server_name ops.example.com;
ssl_certificate /etc/ssl/ops.crt;
ssl_certificate_key /etc/ssl/ops.key;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
}
}
✅ 优点:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: grafana
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
tls:
- hosts:
- grafana.example.com
secretName: grafana-tls
rules:
- host: grafana.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: grafana
port:
number: 3000
tls_config:
cert_file: /etc/prometheus/tls.crt
key_file: /etc/prometheus/tls.key
⚠️ 缺点:
适合:
工具:
✅ 统一入口做 TLS
✅ 内部用私有 CA
✅ 证书自动续期
✅ 禁用 TLS 1.0 / 1.1
✅ 启用 HSTS(对外)
你可以告诉我:
我可以直接给你可复制的配置模板。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。