OpenBSD: Firewall ridondanti con CARP e pfsync Chris Gamboni CISSP
[email protected] TiLug.ch, Bellinzona, 9 aprile 2005 Cos'è OpenBSD ? ● OpenBSD: – Nasce da un fork di netbsd nel 1995 – Secure by default (1 remote exploit in 8 anni) – Progetto basato in Canada, nessuna restrizione sull’esportazione di crittografia – Una release ogni 6 mesi (3.7 al 1.6.2005) – Si finanzia con la vendita di CD e di gadgets – Progetti collegati: OpenSSH, OpenNTPd, OpenBGPd, OpenOSPFd, etc… Alta disponibilità: CARP e pfsync ● Il firewall è un single point of failure – Quando il firewall è fermo nessuno accede ad internet, gli e-mail sono bloccati, ecc… – Non si può fermare il firewall per aggiornarlo ● OpenBSD, dalla versione 3.5, offre CARP e pfsync che permettono di avere firewalls in parallelo. Quando un firewall si ferma, il firewall di backup ne assume l’identità in modo trasparente. CARP (1) ● Common Address Redundancy Protocol: è il protocollo che si occupa di gestire il failover a livello 2 ed a livello 3. ● Ogni gruppo CARP possiede: – Un indirizzo MAC virtuale – Un indirizzo IP virtuale – Una password CARP (2) ● Ogni interfaccia CARP può avere 3 stati: MASTER, BACKUP e INIT (ifconfig) ● Il master manda messaggi Multicast (224.0.0.18) usando il protocollo IP 112 ● La frequenza di invio dei messaggi è configurabile (default = 1 sec) ● Chi invia messaggi più frequentemente diventa master CARP (3) ● CARP funziona sia con IPv4 sia con IPv6 ● CARP ha anche una funzione arp-balance che può servire per load-balancing, ma solo nella rete locale. ● CARP spedisce messaggi cifrati con SHA-1 HMAC ● CARP, a differenza di HSRP e VRRP, è esente da licenze e brevetti.