Appliance
Da WikiCloud.
Nella Cloud Infrastructure è possibile attivare servizi come Firewall, VPN IPsec oppure NAS con tecnologie iSCSI, NFS oppure SMB/CIFS.
Indice |
Appliance Firewall/VPN con m0n0wall
L'appliance Firewall/VPN può essere configurata in due modi:
- Site-to-Site VPN - da Router ad Appliance
- Mobile VPN (Road Warrior) - da Software Client ad Appliance Server
Vedremo di seguito come vanno configurate le due modalità.
Site-to-Site VPN
IPSEC è un framework di standard aperti che consente di scambiare dati in maniera sicura tra postazioni remote che comunicano utilizzando un canale non sicuro, come ad esempio Internet. L'impiego di standard aperti garantisce l'interoperabilità con software ed hardware di terze parti ed un'ottima qualità del codice sorgente dell'applicativo, essendo visionato e corretto da una vastissima comunità di sviluppatori. Utilizzando una serie di protocolli, verrà creata una rete privata virtuale tra la nostra Appliance VPN ed i vostri sistemi esterni alla rete di Seeweb.
Il flusso di dati che si scambieranno i peer sarà cifrato e viaggerà in rete in maniera tale che non potrà essere modificato in transito senza che l'alterazione non sia rilevata. L'utilizzo di algoritmi di crittografia garantirà che se i dati fossero catturati non potrebbero essere decifrati.
Con questa soluzione sono quindi garantiti tre aspetti fondamentali in ambito di sicurezza informatica:
- autenticità
- integrità
- confidenzialità
Configurazione Server-Side
La configurazione di questo strumento lato server viene effettuata tramite un pannello di controllo, che renderà estremamente facile e lineare la gestione dell'intera infrastruttura. Il pannello si presenta in questo modo, e nella prima schermata vengono visualizzate alcuni report generali.
Per accedere nel menù di configurazione di IPsec, sarà sufficiente cliccare sul link IPsec presente nella sezione VPN del frame a sinistra della pagina:
In questa sezione potrete configurare l'appliance in due differenti modalità, Tunnels oppure Mobile (chiamata comunemente "road warrior"). Nel primo caso sarà possibile proteggere il traffico scambiato tra due reti predefinite, mentre con la seconda tipologia la connessione verso il vostro server in Seeweb potrà essere instaurata anche da client con indirizzo ip dinamico. Proseguendo per ordine, illustreremo di seguito la configurazione relativa al primo caso. Per aggiungere un nuovo tunnel basterà cliccare sull'icona [+]
Il software visualizzerà così una nuova finestra di configurazione. In questa prima sezione:
generalmente è possibile utilizzare i valori di default per tutte le voci ad eccezione di "Remote subnet" e "Remote gateway", che indicano rispettivamente per quali host remoti verrà utilizzato il tunnel IPsec per scambiare i dati e quale è l'indirizzo dell' headend device della rete remota. Per completezza riportiamo di seguito il significato degli altri campi presenti nel form:
Disabled - Utile nel caso in cui desidera disattivare un tunnel configurato senza cancellarlo;
Interface - Indica l'interfaccia che verrà utilizzata come end point per il tunnel VPN;
NAT-T - Il Nat Traversal viene abilitato per far funzionare IP Sec con il NAT, ad esempio nel caso in cui un client remoto è dietro un NAT;
DPD interval - Il Dead Peer Detection (DPD) è un metodo utilizzato da IPsec per determinare se ci sono problemi di connettività con l'host remoto.In questo caso, allo scadere dell'intervallo di tempo configurato, l'appliance tenterà di ristabilire il tunnel;
Local subnet - Quali sono gli host locali possono utilizzare il tunnel IPsec;
Description - Permette di inserire una descrizione arbitraria del tunnel. Utile per distinguere una VPN nel caso ci fossero più connessioni configurate nell'appliance;
Terminata questa prima fase, scorrendo la pagina verso il basso visualizzeremo un menù intitolato "Phase 1 proposal (Authentication)":
In questa sezione il nostro compito sarà quello di configurare il protocollo IKE per autenticare i peer IPsec, negoziare le security association e quindi lo scambio delle chiavi.
Il parametro "Negotiation mode" descrive il tipo di autenticazione che avviene tra i 2 peer remoti. Nel menù a tendina potremo selezionare uno dei due diversi metodi: main oppure aggressive. Utilizzando main, i sistemi porteranno a termine la sessione scambiandosi un numero maggiore di messaggi (6 a differenza dei 3 impiegati dall'aggressive) rallentando così il processo di autenticazione ma garantendo una maggiore sicurezza. Raccomandiamo di utilizzare il metodo main.
Il valore di "My identifier" serve per identificare il vostro sistema e puo' essere utilizzato quello di default, quindi "My IP address".
Per quanto riguarda "Encryption Algorithm", la scelta deve essere fatta in base agli algoritmi di cifratura supportati anche dal peer remoto. La nostra appliance mette a disposizione i più popolari algoritmi a chiave simmetrica, da 3DES ad Blowfish. Sono da privilegiare gli algoritmi che hanno resistito per più anni ai vari tipi di attacchi elaborati dai criptoanalisti, come 3DES ed AES. Quest'ultimo processa i dati in maniera più performante di 3DES ed utilizza una password con un maggiore keyspace (128bit). Blowfish, che utilizza chiavi fino a 448bit, è il più veloce ma è pur sempre un algoritmo relativamente giovane.
La voce "Hash Algorithm" indica l'algoritmo impiegato per garantire l'integrità dei dati, quindi per verificare che durante il trasferimento il flusso non sia modificato ne deliberatamente da un attacker che accidentalmente. E' preferibile selezionare SHA1 il quale è stato dimostrato essere più sicuro di MD5.
Nel menù a discesa della sezione "DH Key Group" andremo a scegliere la grandezza dei numeri primi utilizzati dall'algoritmo "Diffie Hellman". Il valore selezionato dovrà essere supportato da entrambi le parti e l'opzione di default (1024) è quella generalmente impiegata da gran parte dei sistemi.
Definendo "Lifetime" imposteremo un periodo di timeout entro il quale deve essere completata la fase 1 del processo di autenticazione della VPN; Non è obbligatorio configurarlo.
Il menù a tendina intitolato "Authentication Method" permette di selezionare il metodo di autenticazione. Si può scegliere se utilizzare una password di protezione oppure un certificato.
"Preshared Key" deve contenere la password condivisa da entrambi i peer. E' consigliabile sceglierne una di almeno 10 caratteri utilizzando quelli alfanumerici e speciali, ad esempio "a#@7Ar4u.Y". "Certificate" e "Key" devono contenere rispettivamente il certificato (nel formato standard X.509) e la chiave privata.
La configurazione è quasi terminata e non rimane altro da fare che settare queste ultime opzioni:
La scelta di "Protocol" deve essere fatta tra "ESP" ed "AH". Il primo garantisce la confidenzialità oltre che l'integrità e l'autenticità dei dati offerta anche da AH ed è quindi opportuno selezionarlo se entrambi i peer lo supportano. Il discorso relativo a "Encryption algorithms" e "Hash algorithms" è stato già affrontato nella prima parte della guida. "PFS" invece, è una protezione aggiuntiva e consente di mantenere sicura la chiave di sessione anche se una delle chiavi utilizzata per derivarla fosse stata rubata. Questa feature di default è disabilitata poichè implica un maggior utilizzo di CPU e deve essere supportata su entrambi i peer. "Lifetime" indica per quanto tempo saranno valide le chiavi scambiate nel processo di autenticazione. Il valore di default è di 86400 secondi (1 giorno). Non rimane che cliccare sul pulsante "Save" e quindi su "Apply Changes".
Configurazione Client-Side
Essendo una connessione che va dal Router del cliente all'Appliance lato server, la configurazione del Router dipende dall'infrastruttura del cliente. La configurazione dell'apparato client è di competenza del cliente stesso.
Mobile VPN (Road Warriors)
Grazie alla tecnologia Mobile VPN potrete accedere in una rete virtuale privata con un dispositivo mobile. Senza questo tipo di supporto, in molti casi, non sarebbe possibile mantenere aperta la connessione verso le applicazioni utilizzate. Ad esempio, con un iPhone ed una Remote-Access VPN, il tunnel cadrebbe non appena il dispositivo andrebbe ad eseguire il roaming verso un access point differente oppure passando da una connessione Wi-Fi ad una 3G.
Configurazione Server-Side
Anche la configurazione di questo strumento lato server viene effettuata tramite un pannello di controllo, che renderà estremamente facile e lineare la gestione dell'intera infrastruttura. Il pannello si presenta in questo modo, e nella prima schermata vengono visualizzate alcuni report generali.
Per accedere nel menù di configurazione si deve cliccare sul link "IPsec" presente nella sezione VPN e successivamente sulla tab "Mobile clients"
Abilitare il checkbox "Allow mobile clients". "Enable NAT Traversal (NAT-T)" dovrà essere attivo nel caso in cui un client remoto sia dietro un NAT. Come per la "Site-to-Site VPN" l'utente potrà definire in maniera arbitraria un "DPD interval", quindi un periodo di timeout dopo il quale l'appliance tenterà di ristabilire il tunnel se ci fossero stati problemi di connettività con l'host remoto. Questo campo non è obbligatorio e può essere tranquillamente ignorato. Il resto della configurazione, quindi i settaggi dell' autenticazione, delle security associations e dello scambio delle chiavi (Phase 1 proposal e Phase 2 proposal) è stato già trattato nella guida precedente (Site-to-Site VPN). Per gestire l'accesso alla Mobile VPN e definire quindi gli utenti che potranno utilizzarla, si dovrà utilizzare il tab "Pre-shared keys".
Lì si dovrà cliccare sull'icona [+]:
ed inserire l'username (che può essere un indirizzo ip, un nome a dominio nel formato FQDN oppure un indirizzo email) nel campo "Identifier" e la password in "Pre-shared key":
Infine cliccare sul pulsante "Save".
Configurazione Client-Side
Per la configurazione lato client della Appliance Firewall/VPN, possono essere usati tutti i software compatibili con la nostra appliance. Abbiamo provato e documentato un software open source e multi-piattaforma Shrew Soft VPN Access Manager disponibile gratuitamente per il download a questo link.
Una volta seguito il wizard per l'installazione, è possibile iniziare la configurazione seguendo una serie di semplici passi:
- Creo una nuova connessione cliccando il pulsante ADD:
- Inserisco l'indirizzo ip dell'Appliance nel campo Host name or Ip Address , lasciando la porta di default e scegliendo disable nella voce Auto Configuration.
- Nella voce Address method scelgo la voce Use a virtual adapter and assigned address e definisco l'ip locale che voglio assegnare alla mia vpn con la relativa subnet.
- Nel campo client configurare le varie voci come descritto nella seguente figura:
- Nel tab Name Resolution, disabilitare WINS e abilitare DNS, utilizzando un ip di un server dns a vostra scelta.
- Nel tab Authentication bisogna scegliere User fully qualified domain name come Identification Type, definendo il nome utente definito nella configurazione della VPN Server-Side
IMPORTANTE: Da questo passo in poi, tutti i valori che andremo ad impostare devono coincidere con quelli inseriti nella configurazione Server-Side
- Nel tab Phase 1' replicare i valori inseriti nella configurazione Server-Side.
- Anche nel tab Phase 2' replicare i valori inseriti nella configurazione Server-Side.
- Nel tab Policy possiamo inserire l'ip (con relativa subnet) di tutte le reti che vogliamo far passare per la VPN. (nella figura abbiamo abilitato il tunnel per tutte le connessioni, ma è consigliabile definirle).
- L'istallazione viene quindi terminata cliccando sul pulsante save.
- A questo punto sulla finestra del programma apparirà l'icona della VPN appena configurata, che possiamo inizializzare cliccando sul pulsante Connect.
- Nella schermata che apparirà è possibile vedere il log della connessione
- e il suo stato generale.