Middle+
Koje centralizovane alate koristite za ažuriranje i praćenje stanja sertifikata na krajnjim uređajima?
sobes.tech АИ
Одговор од АИ
За централизовано управљање и праћење сертификата користим следеће алате:
- HashiCorp Vault:
- Secrets Engine
pki. Омогућава издавање и повлачење сертификата преко API-ја. Интегрише се са Ansible, Terraform, Kubernetes. - Користим за аутоматско креирање и ажурирање сертификата за сервисе (TLS, mTLS).
- Secrets Engine
- Cert-Manager (за Kubernetes):
- Нативно се интегрише са Kubernetes-ом за аутоматско издавање сертификата од различитих Issuer (Let's Encrypt, Vault, унутрашњи CA).
- Статус сертификата прати се преко метрика
certmanager_certificate_expiration_timestamp_seconds, које се експонишу за Prometheus.
- OpenSSL + прилагођени скриптови:
- За инвентаризацију постојећих сертификата на серверима.
- Скриптови прикупљају податке о року важења (
openssl x509 -noout -enddate -in certificate.pem), информације о издавачу и Subject. - Резултати се агрегирају у централизован систем (нпр., Prometheus, Grafana).
#!/bin/bash CERT_FILE=$1 if [ -f "$CERT_FILE" ]; then # Добијање датума истека у формату YYYY-MM-DD HH:MM:SS END_DATE=$(openssl x509 -noout -enddate -in $CERT_FILE 2>/dev/null | cut -d= -f2) # Претварање у Unix timestamp END_TIMESTAMP=$(date -d "$END_DATE" +%s 2>/dev/null) if [ -n "$END_TIMESTAMP" ]; then echo "$END_TIMESTAMP" else echo "Грешка при парсирању датума истека." 2>&1 exit 1 fi else echo "Фајл сертификата није пронађен: $CERT_FILE" 2>&1 exit 1 fi - Prometheus + Grafana:
- Prometheus прикупља метрике о року важења сертификата (нпр., преко Node Exporter, Blackbox Exporter за спољашње провере, метрике cert-manager).
- Подешавам аларме у Alertmanager-у за приближавање рока истека сертификата.
- Grafana се користи за визуализацију стања сертификата, креирање панела са роковима важења.
- Мониторинг спољашњих сервиса:
- Користим Blackbox Exporter за мониторинг доступности сервиса преко HTTPS и проверу валидности сертификата са спољашње стране.
modules: http_2xx: prober: http timeout: 5s http: preferred_ip_protocol: "ipv4" tls_config: insecure_skip_verify: false # Проверa валидности сертификата
Процес изгледа овако:
- Издавање: Аутоматизовано преко Vault или Cert-Manager.
- Инвентаризација/Скупљање података: Скриптови или уграђени механизми прикупљају метрике.
- Агрегација/Мониторинг: Prometheus прикупља метрике, Alertmanager обавештава о приближавању рока истека.
- Визуелизација: Grafana приказује стање свих сертификата.
- Ажурирање: Аутоматско (Cert-Manager) или полуавтоматско (преко Ansible/Terraform са Vault).
Ово је централизиран приступ који омогућава потпуну видљивост стања сертификата на свим контролисаним крајњим уређајима и сервисима и минимизира прекиде због истека сертификата.