Cosa fa#
Installa FreeRADIUS su Ubuntu, lo configura per delegare la verifica delle credenziali al DC Samba AD via LDAP, poi testa la chain di autenticazione dal VPN client. Replica esattamente il flusso Gibson: VPN Server → RADIUS → LDAP → risposta accesso sì/no.
TL;DR#
Kali (simula VPN client) → Ubuntu RADIUS → Ubuntu LDAP (Samba AD) → autenticazione OK/KOUbuntu:
├── FreeRADIUS server (porta UDP 1812 auth, UDP 1813 accounting)
└── Samba AD DC + LDAP (porta TCP 389)
Kali:
└── radtest (testa autenticazione), freeradius-utilsObiettivo finale#
Come sai che hai finito tutto: radtest barno Password123 192.168.64.3 0 testing123 da Kali risponde Access-Accept; radtest fakeuser wrongpass 192.168.64.3 0 testing123 risponde Access-Reject; il log accounting registra la sessione.
Fase 1 — Installazione e configurazione base#
Task 1 — Installa FreeRADIUS su Ubuntu
- Come sai che hai finito:
systemctl status freeradiusmostra active;ss -ulnp | grep 1812mostra la porta in ascolto
- Come sai che hai finito:
Task 2 — Test con utente locale (prima di LDAP)
- Aggiungi un utente test in
/etc/freeradius/3.0/userscon cleartext password - Da Kali: testa con
radtestusando lo shared secrettesting123 - Come sai che hai finito:
Access-Acceptda Kali per l'utente test locale
- Aggiungi un utente test in
Task 3 — Abilita il modulo LDAP
- Configura
/etc/freeradius/3.0/mods-available/ldapper puntare aldap://127.0.0.1e al base DNDC=mustache,DC=corp - Come sai che hai finito:
freeradius -X(debug) parte senza errori sul modulo ldap
- Configura
Fase 2 — Integrazione con Samba AD#
Task 4 — Configura autenticazione contro Active Directory
- In
sites-enabled/default: abilita il modulo ldap nella sezioneauthenticate - Usa
barno@mustache.corpcome bind user per le query LDAP - Come sai che hai finito: il log in modalità debug mostra la query LDAP al DC e la risposta
- In
Task 5 — Testa autenticazione utente AD da Kali
radtest barno Password123 192.168.64.3 0 testing123- Come sai che hai finito:
Access-Accept— RADIUS ha interrogato LDAP e verificato le credenziali AD
Task 6 — Testa rifiuto credenziali errate
radtest barno wrongpassword 192.168.64.3 0 testing123- Come sai che hai finito:
Access-Reject— RADIUS ha verificato che la password non corrisponde nel DC
Task 7 — Testa utente non esistente
radtest ghost ghost123 192.168.64.3 0 testing123- Come sai che hai finito:
Access-Reject— utente non trovato nel DC
Fase 3 — Accounting#
Task 8 — Abilita accounting e verifica il log
- Invia un pacchetto di Accounting-Start simulando l'inizio di una sessione VPN
- Come sai che hai finito:
/var/log/freeradius/radacct/contiene un file con l'evento
Task 9 — Cattura il traffico RADIUS
- Su Ubuntu:
tcpdump -i lo udp port 1812mentre testi da Kali - Come sai che hai finito: vedi pacchetti UDP con
Access-RequesteAccess-Accept/Reject
- Su Ubuntu:
Fase 4 — Collega a OpenVPN (configurazione senza eseguire)#
- Task 10 — Capire come OpenVPN userebbe questo RADIUS
- In OpenVPN server config:
plugin /usr/lib/openvpn/radiusplugin.so /etc/openvpn/radius.conf - In
radius.conf: punta al RADIUS server (NAS-IP-Address = 192.168.64.3, shared secret) - Come sai che hai finito: sai rispondere — "cosa succede quando un client VPN si connette? Chi parla con chi e in quale ordine?"
- In OpenVPN server config:
Domande di verifica Security+#
- Spiega la differenza tra autenticazione e accounting in RADIUS. Chi genera i pacchetti di accounting?
- RADIUS usa UDP — perché? Cosa succede se il RADIUS server non risponde?
- Di default RADIUS cifra solo la password nel pacchetto Access-Request. Cosa viaggia in chiaro? Come si risolve?
- Nel Mustache scenario: un attaccante cattura il pacchetto Access-Request tra il VPN server e il RADIUS server. Cosa può fare con quel pacchetto?
- TACACS+ cifra l'intera sessione. In quale scenario preferiresti TACACS+ a RADIUS per la sicurezza degli admin di rete?
Collegato a#
- [[[TODO] lab-kerberos-ldap-queries|lab-kerberos-ldap-queries]] — prerequisito (Samba AD deve essere attivo)
- [[[DONE] lab-vpn-wireguard-tunnels|lab-vpn-wireguard-tunnels]] — il tunnel VPN che userebbero questo RADIUS
- cap-04-securing-your-network — teoria RADIUS, TACACS+, AAA
- mustache-project Sprint 2 (AD) + sprint futuri (OpenVPN integrazione)


