Lo scopo di questa esperienza è di imparare a creare la configurazione per collegare due sedi fra loro via un tunnel ottenuto con vtun.
il setup di questa esperienza è il seguente:
- due firewall che usano una connessione tap che via l’host principale (la vostra macchina) vi permette la connessione ad internet.
- due client che servono per testare la configurazione
Il file principale su cui dovete concentrarvi è /etc/argo/vtun.conf che contiene la configurazione del tunnel vtun
il tunnel fra le sedi può essere ottenuto almeno in 3 modi differenti:
- vtun: oggetto del presente esercizio
- openvpn: ottimo per collegare anche client remoti
- ipsec: più complesso in generale
In particolare in questo esercizio mostro la configurazione fatta con vtun in quanto Argo ha uno strumento che permette di creare configurazioni semplici in pochi minuti.
Il comando che si usa per creare i file di configurazione è make_vpn. Siccome l’esercizio se avessi messo i file di configurazione si sarebbe ridotto ad una banale verifica del funzionamento, nell’esperimento non trovere nulla di prefabbricato (a parte gli ip).
vtun è sia un server che un client, a seconda di come lo configurate, scegiete dove volete lasciare in ascolto il server (sul firewall che ha ip pubblico...) e su questo abilitate la possibilità di arrivare sulla porta di default (5000).
Client e server sono configurati all’interno di shared.startup con password isi
scaricate vtun su entrambe i firewall (potrebbe essere già installato):
apt-get install vtungenerate le configurazioni (su fw) e copiatele nel posto giusto, non confondete client e server, il comando da usare è:
fw:~# make_vpn -c 192.168.11.254/24 -s 192.168.10.254/24 -n fw-plesso-sede generating vtund-fw-plesso-sede-cli.conf generating vtund-fw-plesso-sede-srv.confche genera du file di configurazione che vanno messi in /etc/vtun.conf del plesso o della sede rispettivamente:
cp vtund-fw-plesso-sede-srv.conf /etc/vtund.conf scp vtund-fw-plesso-sede-cli.conf fw2:/etc/vtund.conf
su fw configurate /etc/default/vtun
RUN_SERVER=yes SERVER_ARGS="-P 5000"fate partire il server:
fw:~# /etc/init.d/vtun startaprite la porta 5000 del firewal fw (TCP_DPORTS di /etc/argo/fw.conf e riavvio pyrewall, maggiori info in Firewall base)
verificate che dal client si raggiunga un server sulla porta 5000 della macchina fw:
fw2:~# telnet fw 5000 Trying 10.16.0.2... Connected to fw. Escape character is '^]'. VTUN server ver 3.X 01/14/2009Ci siamo, il server è in ascolto...
su fw2 (il client) impostate nel file /etc/default/vtun le variabili corrette:
CLIENT1_NAME=fw-plesso-sede CLIENT1_HOST=10.16.0.2poi avviate il servizio:
fw2:~# /etc/init.d/vtun start Starting vtund client fw-plesso-sede to 10.16.0.2: vtund[c].il messaggio è rassicurante, controllate cosi:
fw2:~# ipl lo: 127.0.0.1/8 eth0: 10.16.0.10/24 ==> GW 10.16.0.1 - main tun0: 192.168.11.254 peer 192.168.10.254 fw-plesso-sede (2825)e verificate che anche il routing per la sede sia corretto:
fw2:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.10.254 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 10.16.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0 0.0.0.0 10.16.0.1 0.0.0.0 UG 0 0 0 eth0questa ultima tabella significa che la destinazione della sede (192.168.10.0/24 ovvero 192.168.10.0 con netmask 255.255.255.0) viene raggiunta tramite l’interfaccia tun0 (quella del tunnel)
verificate dalla macchina cli di potere raggiungere cli2:
cli2:~# ping cli PING cli (192.168.10.1) 56(84) bytes of data. 64 bytes from cli (192.168.10.1): icmp_seq=1 ttl=62 time=1.51 ms 64 bytes from cli (192.168.10.1): icmp_seq=2 ttl=62 time=1.47 ms
il comando vtun ha una ricca pagina di manuale... in inglese.