Server VPN PPTP su Debian
La necessità di avere un accesso alla rete aziendale da qualsiasi luogo è diventata ormai una realtà. Con internet il mondo è più piccolo e può capitare di dover lavorare da casa, dall’aeroporto, da una località di villeggiatura (argh!) direttamente sulla rete aziendale. E’ in queste situazione che nascono le VPN (Virtual Private Network), molto utili per accedere all’ufficio in modo sicuro. La definizione più semplice di VPN è quella di rete privata instaurata tra soggetti che utilizzano un sistema di trasmissione pubblico e condiviso, nel maggior numero dei casi, ciò si chiama internet. Ma visto che dobbiamo configurarne una, probabilmente sappiamo bene che cos’è e che cosa non è.
La VPN che andremo a creare sarà PPTP, ovvero quella più semplice e disponibile su tutti i client windows. Per implementare una soluzione di questo tipo, per prima cosa assicuriamoci di avere a disposizione il supporto MPPE:
modprobe ppp-compress-18 && echo “Ok sembra funzionare
”
Attenzione: nella versione del kernel 2.6.15-rc1 o precedenti non è presente il supporto MPPE.
Editiamo ora il file di configurazione “/etc/pptpd.conf” andando ad impostare gli indirizzi di rete:
localip 192.168.31.1
remoteip 192.168.31.100-120
Attenzione: il routing non è gestito dal demone PPTP, quindi o si fanno assegnare indirizzi IP della sottorete a cui si vuole accedere, oppure vanno inserite manualmente le regole di routing necessarie.
Ovviamente sarà poi necessario riavviare il demone per fargli rileggere il file di configurazione con le ultime modifiche:
/etc/init.d/pptpd restart
Ora non ci resta che aggiungere gli utenti abilitati ad usare la VPN appena creata:
echo “username pptpd v3ry5tr0ngp4ssw0rd *” >> /etc/ppp/chap-secrets
Nota: aggiungendo un nuovo utente non sarà necessario riavviare il demone PPTP, ma sarà subito disponibile alla prossima connessione remota.
Inoltre, è possibile far autenticare gli utenti remoti tramite altri meccanismi, come ad esempio RADIUS, SAMBA o PAM.
Ora sarà possibile accedere in VPN al nostro server tramite i più comuni client che supportano il protocollo PPTP, ricordandoci di aprire la porta 1723/tcp sul nostro router e sperando che lo stesso supporti il VPN passtrough.
Commenti
4 commenti per “Server VPN PPTP su Debian”
Commenta il post

Domandina: se il PPTP usa una connessione TCP su porta 1723, a cosa dovrebbe servire il VPN Passthrough?
Risposta semplice: il payload nel protocollo PPTP utilizza il GRE. Il protocollo GRE non usa la porta 47 tcp o udp, 47 è l’ID del protocollo GRE stesso. Il VPN Passthrough serve appunto per permettere di far passare questi dati. Sarebbe come dire al router “fai passare 1723/tcp e GRE”.
e se gli indirizzi sia locali che remoti vengono assegnati tramite dhcp, su etc/pptpd.conf che ci metto?
In “pptpd.conf” viene inserito l’indirizzo “locale” che sarà definito sull’interfaccia PPP quando ci sono una o più connessioni. Gli indirizzi remoti rappresentano un DHCP per quanto riguarda tale interfaccia, quindi per le sole connessioni in VPN. La cosa più semplice è riservare alcuni indirizzi della stessa subnet e definirli li, in modo che tutto sia integrato nell’infrastruttura che c’è già. O più elegantemente fare un minimo di routing tra le due subnet.