Skip to main content
  1. Lab-blue/

Lab — CA in azione su UTM

Alessio Barnini
Author
Alessio Barnini
Table of Contents

Obiettivo
#

Simulare il ciclo di vita completo di un certificato digitale replicando esattamente quello che succede nella realtà: una CA firma un certificato server, il client verifica la chain of trust contro il trust store.

Ambiente
#

Kali (192.168.64.200)  →  CA (simula DigiCert / Let's Encrypt)
Ubuntu (192.168.64.3)  →  Server web (simula google.com)
Kali (client)          →  Browser (verifica la chain)

Flusso
#

1. Kali genera Root CA (chiave + certificato auto-firmato)
2. Aggiungiamo Root CA cert al trust store di Kali (/etc/ssl/certs/)
3. Ubuntu genera private key + CSR
4. Ubuntu manda CSR a Kali (scp)
5. Kali firma il CSR → restituisce il certificato
6. Ubuntu installa cert su nginx
7. openssl s_client da Kali → verifica chain → OK

Concetti collegati (cap-10)
#

  • Root CA e chain of trust
  • CSR (Certificate Signing Request)
  • Trust store /etc/ssl/certs/
  • openssl s_client per ispezione certificato
  • Differenza private key (vive sul server) vs certificato (distribuito)

TODO
#

  • Step 1 — Kali: genera Root CA
  • Step 2 — Kali: aggiungi Root CA al trust store
  • Step 3 — Ubuntu: genera private key + CSR
  • Step 4 — trasferisci CSR a Kali (scp)
  • Step 5 — Kali: firma il CSR
  • Step 6 — Ubuntu: installa cert su nginx
  • Step 7 — Kali: verifica con openssl s_client
  • Step 8 — confronta con Let's Encrypt (cosa fa certbot in automatico)

Note
#

Quando hai Hetzner VPS: ripetere il lab con certbot --nginx per vedere lo stesso flusso in automatico con una CA reale.

Related