k8s證書過期時間掃描方式
更新時間:2025年10月30日 11:07:04 作者:云原生運維
該文章介紹了多種檢查Kubernetes證書過期時間的方法,包括使用openssl命令、kubeadm工具、Shell腳本、Kubernetes API等,文章還提到了一些第三方工具,如cert-manager、kube-cert-manager和PrometheusSSLExporter,以及關鍵證書的位置
查詢證書過期時間的方法
使用 openssl 命令可以檢查證書過期時間,適用于集群內外的證書文件:
openssl x509 -noout -enddate -in /etc/kubernetes/pki/apiserver.crt
示例輸出:
notAfter=May 24 12:00:00 2025 GMT
掃描集群內所有證書過期時間
通過 kubeadm 工具一鍵檢查集群證書有效期:
kubeadm certs check-expiration
輸出結果將顯示:
- 證書路徑
- 過期時間
- 剩余天數(shù)
- 是否自動續(xù)訂
檢查 kubeconfig 文件中的證書
提取 kubeconfig 中的證書并驗證有效期:
grep client-certificate ~/.kube/config | awk '{print $2}' | xargs openssl x509 -noout -enddate
自動監(jiān)控腳本示例
以下 Shell 腳本可批量掃描指定目錄下的證書:
#!/bin/bash
CERT_DIR="/etc/kubernetes/pki"
THRESHOLD_DAYS=30
find $CERT_DIR -type f -name "*.crt" | while read cert; do
expiry=$(openssl x509 -enddate -noout -in "$cert" | cut -d= -f2)
remaining_days=$(( ($(date -d "$expiry" +%s) - $(date +%s)) / 86400 ))
if [ $remaining_days -lt $THRESHOLD_DAYS ]; then
echo "ALERT: $cert 將在 $remaining_days 天后過期 ($expiry)"
fi
done
使用 kubelet 證書API
通過 Kubernetes API 獲取 kubelet 證書信息:
kubectl get --raw /api/v1/nodes/<node-name>/proxy/configz | jq '.kubeletConfig.serverTLSBootstrap'
第三方工具推薦
- cert-manager:自動管理證書生命周期,支持告警功能
- kube-cert-manager:專為 Kubernetes 設計的證書監(jiān)控工具
- Prometheus SSL Exporter:提供證書過期指標并集成告警系統(tǒng)
關鍵證書位置說明
/etc/kubernetes/pki/:控制平面核心證書/var/lib/kubelet/pki/:kubelet 客戶端證書~/.kube/config:用戶訪問憑據(jù)/etc/kubernetes/manifests/:靜態(tài) Pod 使用的證書
證書續(xù)訂操作
對于 kubeadm 管理的集群,執(zhí)行自動續(xù)訂:
kubeadm certs renew all
完成后需重啟控制平面組件:
docker restart $(docker ps -q -f name=k8s_apiserver)
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Kubernetes Dashboard 配置用戶名密碼方式登錄操作流程
為了K8s集群安全,默認情況下Dashboard以Token的形式登錄的,那如果我們想以用戶名/密碼的方式登錄該怎么操作呢?其實只需要我們創(chuàng)建用戶并進行 ClusterRoleBinding綁定即可,下面給大家分享Kubernetes Dashboard 配置用戶名密碼方式登錄操作流程,感興趣的朋友一起看看吧2024-06-06
詳解Rainbond云原生平臺簡化Kubernetes業(yè)務問題排查
這篇文章主要介紹了詳解Rainbond云原生平臺簡化Kubernetes業(yè)務問題排查,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03
K8S環(huán)境中Containerd運行時占用文件定位安全清理方法
容器運行時是Kubernetes最重要的組件之一,負責管理鏡像和容器的生命周期,這篇文章主要介紹了K8S環(huán)境中Containerd運行時占用文件定位安全清理方法的相關資料,需要的朋友可以參考下2026-04-04

