Ho diversi clienti, principalmente piccole e medie imprese, che utilizzano nelle loro strutture firewall realizzati con soluzioni open source. Molti usano pfSense dato che molto semplicemente è un grandissimo software.
Tra le tante funzioni che possiede, offre la possibilità di creare una stretched LAN tra due sistemi pfSense. Questo permette di avere due siti con lo stesso indirizzamento IP, e ciò può essere una valida soluzione per spostare workloads e server virtuali senza doverne riconfigurare il network.
Uno degli usi di questa configurazione è interconnettere la struttura vSphere di un cliente tramite il suo firewall pfSense, con un altro pfSense installato in un tenant vCloud. In questo modo anche piccoli clienti possono avere un sistema di Disaster Recovery, ospitato in vCloud. Ci sono alcuni svantaggi nell’usare questa soluzione al posto di vShield Edge, ma al momento pfSense è (nella mia modestissima opinione) una soluzione molto migliore di Edge.
In questa serie di articoli, mostrerò come installare, configurare e usare pfSense in vCloud Director fino a creare una stratched lan.
Preparare il vostro ambiente vCloud
Per prima cosa, dovete creare una internal network. Se tutte le vostre VM remote faranno parte della stessa vApp, potete creare una vApp Network al posto di una Organization network. Questa rete userà un gateway e uno static IP pool compatibile con la local lan che già possedete in loco. Scegliete se volete avere uno static IP pool o se assegnerete manualmente gli indirizzi IP (o se utilizzerete un servizio dhcp nel pfSense remoto). Prestate attenzione dato che questa rete avrà la stessa subnet già esistente nel sito locale, quindi potreste ritrovarvi con indirizzi IP duplicati.
Installate e configurate il pfSense remoto
Passiamo alla creazione della VM pfSense in vCloud. Dopo aver caricato l’immagine ISO nel catalogo, creiamo la VM. Dovrà possedere due schede di rete, una per la connessione esterna in direct mode, e l’altra verso l’interno (sulla rete che avrete creato precedentemente) per diventare il gateway del tenant (o della vApp). Non è obiettivo di questo articolo mostrarvi passo passo come installare e configurare pfSense, ma vi indico le configurazioni principali.
Dopo la configurazione delle due reti, dovrete utilizzare la WebGUI per completare la configurazione. Ci sono due problemi: primo, se la external network di vCloud non ha un dhcp, la rete WAN non avrà un indirizzo IP. Potete configurarlo manualmente come nella schermata seguente, ma vi mancherà ancora il gateway per raggiungere internet. Se aprite la console VMRC, ecco cosa vedrete:
Da qui, scegliete 8 per aprire la shell locale, ed eseguite:
route add default x.x.x.x
Questo comando imposterà il gateway per la rete WAN. Per raggiungere la WebGUI dalla WAN avrete due opzioni: potete installare una VM dentro vCloud e connetterla alla rete LAN di pfSense, e da qui accedere alla WebGUI; oppure potete abilitare la gestione via WAN e risparmiarevi l’uso di una VM in vCloud. Per fare questo, eseguite in shell:
pfctl -d
questo disabilita temporaneamente il firewall e sarete quindi in grado via browser di accedere alla WebGUI sull’indirizzo WAN di pfSense, e avviare il setup wizard:
Tra le varie configurazioni che troverete nel wizard, dovrete configurare il gateway, dato che la rotta che avete aggiunto non verrà salvata al reboot:
Infine, impostate una password molto complessa all’utente admin (ricordatevi che state esponendo l’interfaccia di gestione su internet!!!) e ricaricate la configurazione. Dopo ogni riconfigurazione, PF viene riabilitato, quindi dovrete disattivarlo in più riprese per completare la configurazione via WAN, oppure potrete mantenere attivo l’accesso via WAN. In questo caso, è preferibile passare ad HTTPS e aggiungere una regola sul firewall permanente, magari che consenta l’accesso solo da determinati indirizzi IP.