====== 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}}