Vpnc - vpn client
Da Fabwiki.
Indice |
Cosa è
vpnc meglio conosciuto come "client for cisco vpn concentrator" è un client vpn. E' una valida alternativa al tradizione Cisco vpn client.
Utilizzo
Avete mai avuto l' esigenza di collegare la vostra rete di casa con l' ufficio o viceversa? Non vi è mai capitato di dover dialogare con una rete che non sia la vostra? Una VPN (Virtual Private Network) serve proprio a questo: consentire a due o piu' reti diverse di colloquiare tra di loro. In questo caso specifico, non tratterò l' implementazione della VPN vera e propria, ma soltanto del client.
Requisiti pre-installazione
Ci sono dei requisiti fondamentali che devono essere rispettati per far funzionare vpnc: le librerie libgcrypt e il modulo "TUN" abilitato nel kernel. Per le prime, su debian, è necessario installarle con
apt-get install libgcrypt-dev
Per il kernel invece, dovete fare alcune verifiche.
Per prima cosa abilitate la voce "Universal TUN/TAP device driver support"
Device Drivers --->
Networking support --->
[*] Universal TUN/TAP device driver support
e verificate con dmesg |grep -i tunche il sistema la carichi
tun: Universal TUN/TAP device driver, 1.6
Inoltre, se non fossero già abilitati, abilitate i seguenti moduli:
# grep "TUN" /usr/src/linux/.config CONFIG_INET_TUNNEL=m # CONFIG_INET6_TUNNEL is not set # CONFIG_IPV6_TUNNEL is not set (TUN/TAP enabled as a module) CONFIG_TUN=m # CONFIG_8139TOO_TUNE_TWISTER is not set
assicuratevi quindi che i parametri CONFIG_INET_TUNNEL e CONFIG_TUN siano configurati come moduli (M) e che vengano correttamente eseguiti dal sistema
lsmod |grep -i tun tun 11968 0
Installazione
Per debian, banalmente,
apt-get install vpnc
Se si vuole compilare da sorgente, esiste il respository svn: http://svn.unix-ag.uni-kl.de/vpnc/
Configurazione
I file di configurazione, si trovano sotto /etc/vpnc/*.conf
# AUTOGENERATED BY gvpnc IPSec gateway IPSec ID IPSec secret Xauth Xauth
Potete editarli in base alle vostre esigenze, facendo attenzione a riportare correttamente i valori richiesti.
Se invece siete già in possesso del file .pcf potete usarlo in vpnc, ma dovete convertirlo. A tal proposito, potete usare pcf2vpnc che è un programma scritto in perl che converte il vostro pcf in formato conf Per poter funzionare però pcf2vpnc ha bisogno dell' utility cisco-decrypt.c Una volta scaricato il file cisco-decrypt.c, trattandosi di file .c, dobbiamo compilaro. Per la compilazione è sufficiente eseguire il seguente comando:
gcc -Wall -o cisco-decrypt cisco-decrypt.c $(libgcrypt-config --libs --cflags)
A questo punto, prendete pcf2vpnc e cisco-decrypt e copiateli sotto /usr/sbin
Lanciate pcf2vpnc
decoding input: Success /usr/sbin/pcf2vpnc converts VPN-config files from pcf to vpnc-format. Usage: /usr/sbin/pcf2vpnc <pcf file> [vpnc file]
Utilizzate come primo parametro il pcf file e come secondo il file che dovrà creare. Nel mio caso:
pcf2vpnc /home/rizla/Desktop/VPNAccess.pcf /etc/vpnc/vpn.conf
A questo punto, abbiamo tutto. Non ci resta che provare. Per stabilire una connessione, è sufficiente digitare:
vpnc /etc/vpnc/vpn.conf
Potrebbe darsi che, in alcuni casi, vi vengano chieste login e password (dipende da come è configurata la vostra vpn) in questo caso, scrivetele. A questo punto dovreste vedere l' intefaccia tun0, tramite ifconfig, in questo modo:
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.11.12.13 P-t-P:10.11.12.13 Mask:255.255.255.0
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1390 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Se è cosi', siete connessi :-)
Ciao.
--Fabrizio
