====== Automazione ====== **Priorità 1** – Riduce il lavoro manuale e gli errori \\ **Destinatari:** DevOps, Team di piattaforma Guide per l'automazione delle operazioni sui certificati in una PKI abilitata PQ. ---- ===== Panoramica ===== flowchart TB subgraph TRIGGER["🎯 TRIGGER"] T1[Schedulato] T2[Basato su eventi] T3[Richiesta API] end subgraph PROCESS["⚙️ AUTOMAZIONE"] P1[Client ACME] P2[Pipeline CI/CD] P3[Cert-Manager] P4[Job schedulato] end subgraph OUTPUT["📤 RISULTATO"] O1[Certificato distribuito] O2[Secret ruotati] O3[CRL aggiornata] end T1 --> P4 --> O2 T2 --> P3 --> O1 T3 --> P1 --> O1 T3 --> P2 --> O1 style P1 fill:#fff3e0 style P2 fill:#e8f5e9 style P3 fill:#e3f2fd ---- ===== Scenari ===== ^ Scenario ^ Descrizione ^ Complessità ^ Caso d'uso ^ | [[.:acme-integration|Integrazione ACME]] | Let's Encrypt / Protocollo ACME con PQ | Media | Server web, API | | [[.:cicd-code-signing|Code-Signing CI/CD]] | Firma automatica nelle pipeline | Alta | Release software | | [[.:cert-manager-k8s|Kubernetes Cert-Manager]] | Automazione certificati in Kubernetes | Alta | App cloud-native | | [[.:scheduled-renewal|Rinnovo schedulato]] | Rinnovo automatico dei certificati | Bassa | Tutti i server | ---- ===== Albero decisionale ===== flowchart TD A[Necessario nuovo certificato] --> B{Ambiente?} B -->|Kubernetes| C[Cert-Manager] B -->|Server classici| D{Esposto a Internet?} B -->|Pipeline CI/CD| E[Pipeline-Signing] D -->|Sì| F[ACME/Let's Encrypt] D -->|No| G[Rinnovo schedulato] C --> H[cert-manager.io + Issuer] F --> I[Certbot + Hook] G --> J[Cron + Script] E --> K[Sigstore/HSM] style C fill:#e3f2fd style F fill:#e8f5e9 style G fill:#fff3e0 style E fill:#fce4ec ---- ===== Prerequisiti ===== | Componente | Versione | Scopo | |------------|----------|-------| | OpenSSL | 3.6+ | Algoritmi PQ | | Certbot | 2.0+ | Client ACME | | cert-manager | 1.12+ | Kubernetes | | HashiCorp Vault | 1.15+ | Gestione secret | ---- ===== Avvio rapido ===== **1. Automazione più semplice (Cron + Script):** # /etc/cron.weekly/cert-renew #!/bin/bash /usr/local/bin/renew-certificates.sh >> /var/log/cert-renew.log 2>&1 → Dettagli: [[.:scheduled-renewal|Rinnovo schedulato]] **2. ACME per server web pubblici:** # Certbot con DNS-Challenge certbot certonly --dns-cloudflare -d example.com --deploy-hook /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.sh → Dettagli: [[.:acme-integration|Integrazione ACME]] **3. Kubernetes Cert-Manager:** apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: my-app-tls spec: secretName: my-app-tls issuerRef: name: pq-issuer kind: ClusterIssuer dnsNames: - app.example.com → Dettagli: [[.:cert-manager-k8s|Cert-Manager]] ---- ===== Documentazione correlata ===== * [[..:tagesgeschaeft:start|Attività quotidiane]] – Operazioni manuali * [[..:monitoring:start|Monitoraggio]] – Sorveglianza dell'automazione * [[it:int:pqcrypt:developer:integration|Integrazione]] – Integrazione API ---- << [[..:start|← Scenari per operatori]] | [[.:acme-integration|→ Integrazione ACME]] >> ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional// {{tag>operator automazione acme cicd cert-manager}}