Con lo sviluppo della connessione a banda larga si è fatto sempre più frequente l’utilizzo delle reti pubbliche virtuali o VPN. Uno dei protocolli maggiormente utilizzati è il protocollo pptp, nativamente suppportato dai sistemi operativi micosoft.
Anche per i vari flavour di ubuntu è disponibile un supporto per questo protocollo.
Premessa: si intende che tutti i comandi elencati sono preceduti da “sudo”, o lanciati come root.
Iniziamo con l’installare l’installare il protocollo:
apt-get install pptp-linux
Ora che il supporto è installato possiamo elaborare il file di configurazione della connessione dopo aver preso nota dei parametri di connessione:
<host> indirizzo ip pubblico o nome dell’host a cui connettersi
<username> nome utilizzato dalla connnesione
<password> password per la connessione
A questo punto passiamo a creare il file di configurazione, che chiameremo myvpn, in /etc/ppp/peers utilizzando lo schema seguente
#
# File di connessione a myvpn
#
remotename myvpn
linkname myvpn
ipparam myvpn
pty "pptp <host> --nolaunchpppd "
name <username>
usepeerdns
require-mppe
refuse-eap
noauth
# adopt defaults from the pptp-linux package
file /etc/ppp/options.pptp
La <password> va inserita invece in coda al file /etc/ppp/chap-secrets secondo lo schema seguente
<username> myvpn <password> *
Fatti i dovuti scongiuri passiamo ad attivare la connessione myvpn con il comando
pon myvpn nodetach
lanciato ovviamente da terminale.

Possiamo terminare la connessione alla vpn con il il classico CRTL + C.
L’applicazione va ascrivere in syslog, quindi, se abbiamo problemi possiamo guardare cosa succede “sotto il cofano” tramite
tail -f /var/log/syslog
Ci resta comunque ancora qualcosa da fare per raggiungere gli host della rete remota collegata in vpn: impostare le route specificando che l’interfaccia da utilizzare sarà ppp0 .
Quindi se dobbiamo accedere ad uno specifico host con indirizzo ip <ip_host_adr>, impostiamo una route statica verso l’indirizzo del singolo host
route add -host <ip_host_adr> dev ppp0
Per esempio:
route add -host 192.168.1.80 dev ppp0
Mentre se dobbiamo accedere ad un subnet di una intranet <ip_adr_subnet>, con una certa netmask <netmask> allora impostiamo la route verso la subnet
route add -net <ip_adr_subnet> netmask <netmask> dev ppp0
Per esempio:
route add -net 192.168.2.0 netmask 255.255.255.0 dev ppp0
Riferimenti
La pagina del progetto pptp-linux è la seguente: http://pptpclient.sourceforge.net.
La documentazione relativa ad ubuntu potete trovarla qui
Esiste anche una pagina di documentazione della ubuntu community relativa alle connessioni vpn che potete consultare qui.