Esame 2016 Ordinaria - Scuola VLAN - Soluzione completa | Prof. Giagnotti
PROF GIAGNOTTI · TORNA A → · GUIDE
SOLUZIONE ESAME 2016 ORDINARIA — SISTEMI E RETI
A cura di Prof. Giagnotti — ultima della serie, completata e raccontata in prima persona

Esame 2016 Ordinaria: Scuola con due reti separate — Come l'ho evoluta io

Ultima traccia che mi hai mandato, ma per me è la più didattica: due reti fisicamente separate (amministrativa 15 PC + ADSL 7M e didattica 10 lab + ADSL 24M), nessuna VLAN, nessun firewall. Io vi racconto come l'ho unificata con fibra + VLAN + servizi DHCP/DNS/streaming, e poi BYOD, News PHP, crittografia ibrida e VPN.

📅 2016 Ordinaria 🏫 Scuola 2 reti → VLAN 🔧 DHCP DNS Streaming 🔒 VPN IPSec + OpenVPN
🎙️ Il mio approccio per la 2016

Io vedo subito il problema: due ADSL separate sono uno spreco e un rischio. Unifico tutto su fibra 100M simmetrica e tengo una ADSL come backup in failover. Poi separo logicamente con VLAN invece che fisicamente: così condivido la fibra ma mantengo isolamento amministrativa/didattica che per me è obbligatorio per GDPR.

0. Come ho letto io la traccia — due reti separate e tutti i limiti

  • Rete amministrativa: 15 PC segreteria/presidenza, Ethernet 100M, ADSL 7M. Per me banda ridicola, oggi non apri neanche Drive.
  • Rete didattica: 10 lab + docenti, 100M, ADSL 24M. Un po' meglio ma sempre ADSL, upload scarso per streaming.
  • Separazione fisica totale — per me è spreco: non puoi condividere stampanti, NAS, server.
  • Nessun firewall centralizzato, nessun proxy, nessun servizio multimediale, nessun backup strutturato — io devo aggiungere tutto.

1. Schema logico: la mia fotografia dell'esistente

Io l'ho disegnato così per farlo capire in classe: a sinistra 15 PC su switch 100M → ADSL 7M → Internet. A destra 10 lab + docenti su switch 100M → ADSL 24M → Internet. In mezzo una linea tratteggiata “Separazione fisica”. È chiaro che così non puoi fare didattica moderna.

Limiti che ho evidenziato io

Connettività fragile e non sincronizzata, isolamento che impedisce condivisione risorse, zero servizi streaming, zero sicurezza perimetrale, zero scalabilità. Per me è da rifare.

2. Evoluzione: fibra unificata + VLAN + firewall — la mia scelta

Connessione che ho scelto io: fibra ottica 100M simmetrici come primaria (o VDSL 50M fallback se fibra non arriva), e tengo una delle due ADSL (quella da 24M) come backup in hot-standby con failover automatico ogni 30s healthcheck, switch IP <60s.

LineaRuoloCome la configuro io
Fibra 100MPrimariaRouter principale, NAT, firewall stateful, default gateway per tutte le VLAN
ADSL 24MBackupRouter secondario in hot-standby, VRRP o failover con ping 8.8.8.8, se fibra down switch automatico

VLAN che ho progettato io:

VLANNomeSubnet che ho scelto ioChi ci sta
VLAN 10Amministrativa192.168.10.0/2415 PC segreteria/presidenza — per me isolata, no accesso da didattica
VLAN 20Didattica192.168.20.0/2410 lab + docenti + studenti — con proxy content filter
VLAN 30Server192.168.30.0/24DHCP, DNS, Web, NAS, streaming — per me accessibile da entrambe ma con ACL
VLAN 99BYOD/Ospiti192.168.99.0/24Dispositivi personali — captive portal + isolamento client

Sicurezza che ho messo io: Firewall stateful default deny, IDS/IPS Snort/Suricata sul firewall, proxy Squid+SquidGuard per filtrare didattica, ACL su switch L3, VPN site-to-site IPSec pronta per espansione in altri plessi.

Migrazione a downtime zero che ho fatto io

Fase 1 weekend: installo router fibra + switch core L3 in parallelo. Fase 2 martedì pomeriggio lab chiusi: ricablo didattica. Fase 3 mercoledì: 15 PC amministrativa in 1-2h. Fase 4 venerdì: test completo e switch definitivo su fibra, ADSL in standby. Così non blocco la scuola.

3. Servizi: DHCP, DNS, Web, Streaming — configurazioni che ho fatto io

ServizioProtocolloServerConfigurazione che ho scelto io
DHCPDHCPv4ISC DHCP2 pool: Admin 192.168.10.100-254 lease 24h, Didattica 100-254 lease 4h per mobile, prenotazioni fixed per server/printer
DNSDNS/DNSSECBIND9Zona scuola.local: server.scuola.local, lms.scuola.local, streaming.scuola.local. Forwarder 8.8.8.8/1.1.1.1
WebHTTP/HTTPSApache+PHP+MySQLRegistro elettronico, sito, cert SSL self-signed interno
StreamingRTMP/HLSNginx+WowzaVOD + live aule, accesso LAN + VPN genitori
NASSMB/CIFSSynology 4-bayBackup incrementale, cartelle docenti, video archive
ISC-DHCP.CONF CHE HO SCRITTO IO
subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.100 192.168.10.254; option routers 192.168.10.1; option domain-name "scuola.local"; option domain-name-servers 192.168.30.10; -- DNS interno che ho messo io default-lease-time 86400; -- 24h per postazioni fisse max-lease-time 172800; host file-server { hardware ethernet 00:11:22:33:44:55; fixed-address 192.168.10.20; } } subnet 192.168.20.0 netmask 255.255.255.0 { range 192.168.20.100 192.168.20.254; option routers 192.168.20.1; option domain-name "scuola.local"; option domain-name-servers 192.168.30.10; default-lease-time 14400; -- 4h per mobile, per me più giusto così }

4. Prevenzione downtime: HA, backup 3-2-1, RTO/RPO che ho fissato io

ComponenteHA che ho scelto ioRTORPO
Web+streamingAttivo-attivo 2 server dietro LB F5/Citrix<30s failover automatico0 replica real-time
MySQLMaster-slave + MHA failover manuale<5 min<1 sec
NASRAID-5 3x8TB + hot-spare, backup giornaliero su NAS2<2h sostituzione disco<24h
InternetFailover fibra→ADSL healthcheck 30s<1 min0

Backup che ho impostato io: full giornaliero 22:00 retenzione 7 gg su NAS2, incrementale ogni 6h retenzione 3 gg, full settimanale domenica su LTO-7 offsite 1 anno, transaction log DB ogni 15 min RPO <15 min. Per me test restore mensile obbligatorio, altrimenti backup non esiste.

5. Quesito I — BYOD: perché per me va gestito con MDM + VLAN ospiti

BYOD per me è: studenti/docenti usano proprio device su rete scolastica. Io lo gestisco così perché la soluzione originale era troppo sintetica:

  • VLAN 99 BYOD isolata: 192.168.99.0/24, captive portal con autenticazione (username scuola o ticket giornaliero), client isolation (un device non vede l'altro), ACL che blocca accesso a VLAN 10 amministrativa.
  • MDM che ho aggiunto io: per dispositivi registrati (docenti) uso MDM tipo Mosyle/Jamf per push profili WiFi, certificati, policy. Studenti senza MDM vanno in guest con banda limitata 5M/2M per device.
  • Sicurezza: WPA2-Enterprise per docenti, WPA2-PSK con captive per studenti, firewall che blocca P2P e filtra contenuti, antivirus obbligatorio su PC Windows? Io metto NAC che verifica patch.
  • Perché per me è più giusto così: se metto BYOD nella stessa VLAN didattica, un malware studente gira a tutti i lab. Isolato in VLAN 99, se si infetta, infetta solo guest.

6. Quesito II — News DB + PHP: CMS che ho completato io

Traccia chiede area news gestita da redazione. Io completo DB e PHP perché mancava:

SQL NEWS CMS CHE HO SCRITTO IO
CREATE TABLE UTENTE ( id_utente INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) UNIQUE NOT NULL, password_hash VARCHAR(255) NOT NULL, -- bcrypt che metto sempre io ruolo ENUM('admin','redattore') NOT NULL ); CREATE TABLE NEWS ( id_news INT PRIMARY KEY AUTO_INCREMENT, titolo VARCHAR(200) NOT NULL, contenuto TEXT NOT NULL, data_pub DATETIME DEFAULT CURRENT_TIMESTAMP, id_autore INT NOT NULL, stato ENUM('bozza','pubblicata') DEFAULT 'bozza', FOREIGN KEY (id_autore) REFERENCES UTENTE(id_utente) ); -- Io aggiungo tabella per allegati immagini CREATE TABLE NEWS_MEDIA ( id_media INT PRIMARY KEY AUTO_INCREMENT, id_news INT NOT NULL, url VARCHAR(500) NOT NULL, FOREIGN KEY (id_news) REFERENCES NEWS(id_news) );

PHP: login con password_verify(), sessione con ruolo, CRUD news con prepared statement per evitare SQL injection, htmlspecialchars() per XSS, upload immagini con controllo MIME + rename casuale. Paginazione LIMIT 10 OFFSET ?.

7. Quesito III — Crittografia simmetrica/asimmetrica: ibrido AES+RSA che spiego io

Qui spiego come lo spiego in classe, perché molti confondono:

  • Simmetrica (AES-256-GCM): stessa chiave per cifrare/decifrare, velocissima, ideale per file grandi. Problema: come scambio la chiave in modo sicuro?
  • Asimmetrica (RSA 2048): coppia pubblica/privata, lenta, ideale per scambiare chiavi piccole. Pubblica cifra, privata decifra.
  • Ibrido che uso io (come TLS): genero chiave AES casuale 256 bit per il documento, cifro documento con AES-GCM, poi cifro la chiave AES con RSA pubblica del destinatario. Mando entrambi. Destinatario decifra chiave AES con sua privata RSA, poi decifra documento con AES. È più giusto così perché unisco velocità AES + sicurezza scambio RSA.
ESEMPIO IBRIDO CHE HO SCRITTO IO (concettuale)
// Mittente aes_key = random(32) # 256 bit ciphertext = AES_GCM_encrypt(doc, aes_key, nonce) encrypted_key = RSA_encrypt(aes_key, dest_pubkey) invio {encrypted_key, nonce, ciphertext, tag} // Destinatario aes_key = RSA_decrypt(encrypted_key, dest_privkey) doc = AES_GCM_decrypt(ciphertext, aes_key, nonce, tag) // Firma per non-ripudio: firmo hash doc con mia privata signature = RSA_sign(SHA256(doc), mitt_privkey)

8. Quesito IV — VPN IPSec vs OpenVPN vs WireGuard — il mio confronto

ProtocolloTipoPortaOverheadQuando lo uso io
IPSec IKEv2Site-to-SiteUDP 500/4500Basso ~12 byteSede A ↔ Branch, firewall hardware, sempre-on, banda illimitata
OpenVPNRemote AccessTCP/UDP 1194Medio ~14 byte + TLSDocenti/staff da casa, cross-platform Win/Mac/Linux/Android, 2FA LDAP
WireGuardEntrambiUDP customMinimo ~4 byteModerno, kernel Linux 5.6+, per me futuro ma supporto ancora crescente
SSTPRemote AccessTCP 443AltoWindows nativo, firewall-friendly se 1194 bloccato
OPENVPN SERVER CHE HO CONFIGURATO IO
port 1194 proto udp dev tun server 10.8.0.0 255.255.255.0 ca ca.crt cert server.crt key server.key dh dh.pem cipher AES-256-GCM auth SHA256 tls-version-min 1.2 push "route 192.168.10.0 255.255.255.0" # Amministrativa che voglio io push "route 192.168.20.0 255.255.255.0" # Didattica verb 3 log-append /var/log/openvpn.log
🎯 Raccomandazione che do io in classe

Site-to-Site: IPSec IKEv2 su firewall hardware, automatico sempre-on. Remote Access docenti: OpenVPN con certificati client + 2FA LDAP + cipher AES-256-GCM + SHA256 HMAC + forward secrecy. Per me è lo stack giusto per una scuola.

9. Riepilogo orale

✓Fibra 100M + ADSL backup con failover 30s <60s — ho unificato due ADSL separate che per me erano spreco.
✓VLAN 10/20/30/99 — amministrativa isolata, didattica con proxy, server, BYOD guest con captive e client isolation. È più giusto così per GDPR.
✓DHCP lease differenziato 24h fissi / 4h mobile + DNS scuola.local + streaming Nginx/Wowza VOD/live.
✓BYOD in VLAN 99 con MDM + banda limitata, perché se metto BYOD in didattica un malware gira ovunque.
✓Crittografia ibrida AES+RSA + firma per non-ripudio, VPN IPSec site-to-site + OpenVPN remote access 2FA.

📚 Come la porto io all'orale

Parto dalla foto dell'esistente con due reti separate e dico perché è da rifare. Poi fibra unificata + ADSL backup + VLAN 10/20/30/99 con ACL e firewall. Servizi DHCP/DNS/streaming, backup 3-2-1 con RTO/RPO che ho fissato io. BYOD isolato in guest, News CMS con prepared statement, crittografia ibrida AES per file + RSA per chiave + firma, e chiudo con IPSec vs OpenVPN vs WireGuard. È il mio filo logico, funziona.