Sobes.tech
Middle+

Kādus centralizētus līdzekļus izmantojat, lai atjauninātu un uzraudzītu galalietotāju sertifikātu stāvokli?

sobes.tech AI

Atbilde no AI

Lai centralizētu sertifikātu pārvaldību un uzraudzību, izmantoju šādus rīkus:

  1. HashiCorp Vault:
    • Seifu dzinējs pki. Atļauj izsniegt un atsaukt sertifikātus caur API. Integrējas ar Ansible, Terraform, Kubernetes.
    • Izmanto automātiskai sertifikātu izveidei un atjaunošanai pakalpojumiem (TLS, mTLS).
  2. Cert-Manager (kubernetes):
    • Dabiski integrējas ar Kubernetes, lai automātiski izsniegtu sertifikātus no dažādiem izsniedzējiem (Let's Encrypt, Vault, iekšējie CA).
    • Sertifikātu stāvokļa uzraudzība tiek veikta ar metriku certmanager_certificate_expiration_timestamp_seconds, kas tiek izpausta Prometheus.
  3. OpenSSL + pielāgoti skripti:
    • Eksistējošo sertifikātu inventarizācijai uz serveriem.
    • Skripti apkopo datus par derīguma termiņu (openssl x509 -noout -enddate -in certificate.pem), informāciju par izsniedzēju un Subject.
    • Rezultāti tiek apkopoti centralizētā sistēmā (piemēram, Prometheus, Grafana).
    #!/bin/bash
    
    CERT_FILE=$1
    
    if [ -f "$CERT_FILE" ]; then
        # Iegūst derīguma termiņa beigu datumu formātā YYYY-MM-DD HH:MM:SS
        END_DATE=$(openssl x509 -noout -enddate -in $CERT_FILE 2>/dev/null | cut -d= -f2)
        # Pārvērš uz Unix timestamp
        END_TIMESTAMP=$(date -d "$END_DATE" +%s 2>/dev/null)
    
        if [ -n "$END_TIMESTAMP" ]; then
            echo "$END_TIMESTAMP"
        else
            echo "Kļūda, parsējot derīguma termiņa beigu datumu." 2>&1
            exit 1
        fi
    else
        echo "Sertifikāta fails nav atrasts: $CERT_FILE" 2>&1
        exit 1
    fi
    
  4. Prometheus + Grafana:
    • Prometheus apkopo metriku par sertifikātu derīguma termiņu (piemēram, caur Node Exporter, ārējo pārbaudes rīku, cert-manager metriku).
    • Iestata brīdinājumus Alertmanager par tuvojošos derīguma termiņa beigām.
    • Grafana tiek izmantota sertifikātu stāvokļa vizualizācijai, panelu izveidei ar derīguma termiņiem.
  5. Ārējo pakalpojumu uzraudzība:
    • Izmanto Blackbox Exporter, lai uzraudzītu pakalpojumu pieejamību HTTPS un pārbaudītu sertifikātu derīgumu no ārpuses.
    modules:
      http_2xx:
        prober: http
        timeout: 5s
        http:
          preferred_ip_protocol: "ipv4"
          tls_config:
            insecure_skip_verify: false # Pārbauda sertifikāta derīgumu
    

Process ir šāds:

  • Izsniegšana: Automātiska caur Vault vai Cert-Manager.
  • Inventarizācija/Datubūve: Skripti vai iebūvēti eksportētāju mehānismi apkopo datus.
  • Apkopojums/Uzraudzība: Prometheus apkopo metriku, Alertmanager brīdina par tuvojošos derīguma termiņa beigām.
  • Vizuālizācija: Grafana rāda visu sertifikātu stāvokli.
  • Atjaunošana: Automātiska (Cert-Manager) vai daļēji automātiska (caur Ansible/Terraform ar Vault).

Šis ir centralizēts pieejas veids, kas ļauj pilnībā redzēt sertifikātu stāvokli visās kontrolētajās iekārtās un pakalpojumos, kā arī samazina dīkstāves, kas radušās no derīgu sertifikātu trūkuma.