Come avevo promesso negli articoli precedenti, ecco qui come “tirar su” una VPN domestica (relativamente poco sicura, se confrontata con software del calibro di OpenVPN e simili) con PPTPD.
Il vantaggio è ovviamente la semplicità di installazione e configurazione, nonchè la possibilità di accedere alla VPN indistintamente da client Linux, Windows e (mai documentato) MacOS.
Analizziamo la procedura di creazione per Windows e per Linux.
Per Windows:
Creazione del Server VPN:
- Nella finestra “Connessioni di rete” cliccare su “Crea una nuova connessione“, quindi scegliere “Installazione di una connessione avanzata“.
- Scegliere “Accetta connessioni in ingresso“, fregarsene delle varie periferiche (modem, porte seriali, ecc…) e proseguire.
- Selezionare, se non lo è già, “Consenti connessioni private virtuali“, quindi passare alla schermata di selezione dell’utente.
- Dato che è difficile che abbiate già un utente dedicato a questo scopo, vi consiglio di crearne uno (pulsante “Aggiungi“) con un nome utente ed una password ben definiti e diversi dagli altri. Consiglio anche di scegliere una password robusta.
- Nella schermata successiva selezionare protocollo Internet (TCP/IP) e cliccare sul pulsante “Proprietà“, dove si potrà scegliere il range degli indirizzi che verranno assegnati ai vari client in ingresso (se la connessione è casalinga difficilmente si supereranno i cinque utenti contemporanei).
- Cliccare su “Fine” e godere della propria VPN. Qui di seguito le istruzioni per connettersi ad essa con Windows.
Creazione della connessione remota:
- Nella finestra “Connessioni di rete” cliccare su “Crea una nuova connessione“
- Quando richiesto selezionare “Connessione alla rete aziendale“, quindi “Connessione VPN“, poi inserire un nome. Ovviamente non scrivo che ogni volta dovrete cliccare su “avanti”, non credo siate così idioti se vi interessa creare una cosa del genere…
- Decidete voi se prima di far partire la connessione verso la VPN ci si dovrà connettere ad un altro servizio, quindi inserite l’indirizzo ip o il nome del vostro PC che ospita il server VPN (che ne dite di usare no-ip o un altro DDNS?)
- A questo punto la connessione sarà creata e voi potrete connettervi utilizzando nome utente e password decisi in precedenza.
Semplice, no?
Per Linux (testato su Ubuntu 8.04):
Creazione del server VPN PPTP:
- Installare tramite aptitude, apt-get o quello che vi pare i pacchetti: pptpd, bcrelay e network-manager-pptp.
- Editare (d’ora in poi tutti i files verranno editati come super-utente) /etc/ppp/chap-secrets, aggiungendo
-
"utente" nomevpn "password" *
dove “utente” (rispettare le virgolette) è il nome di un utente autorizzato a connettersi (non importa se non è un utente del sistema) alla VPN, nomevpn potete inventarvelo, purché ne teniate nota, e “password” (sempre con le virgolette) è la password dell’utente che dovrà connettersi. L’asterisco per ora va inserito senza preoccuparsi troppo di quello che significhi. Salvare e chiudere il file.
- Editare /etc/ppp/pptp-options e sostituire la riga
name pptpd
con
name nomevpn
(o quello che avete scelto nel passo precedente). Qui potete anche modificare i parametri dei DNS che verranno assegnati agli utenti che si connettono alla vostra VPN.
- Editare il file /etc/pptpd.conf, decommentando le righe
localip xxx.xxx.xxx.xxx remoteip xxx.xxx.xxx.xxx
e inserendo al posto degli indirizzi di default in primo luogo l’indirizzo ip del server di connessione (sceglietene uno che non è usato all’interno della vostra LAN, io ad esempio ho usato 192.168.2.100), mentre per remoteip inserite un range di indirizzi che verranno assegnati ai client in ingresso (io ho messo 192.168.2.101-150, con questa sintassi).
- A questo punto il server è configurato e va fatto ripartire con
sudo /etc/init.d/pptpd restart
Creazione della connessione VPN:
Al momento non è disponibile una guida valida per Ubuntu 8.04, quindi consiglio o di usare Windows, o di adattare le guide presenti in rete per Ubuntu 7.04 e 7.10
E’ una buona idea tenere il server PPTP su una macchina separata, che dovrebbe essere l’unica a superare firewall e NAT della vostra rete domestica, anche una macchina virtuale va bene. La porta da aprire, sia per Windows che per Linux sul vostro router (se lo supporta) è la 1723. In teoria ogni altra porta potrebbe essere chiusa, riducendo al minimo i rischi di sicurezza della vostra rete. In realtà potrebbe tornare utile avere almeno una connessione SSH sempre a portata di mano in modo da poter risolvere eventuali problemi di server down e simili.
Mi metto subito a cercare qualche exploit per verificare la sicurezza di questa brillante trovata, vi farò sapere al più presto.
