Installazione minima del server assoluto
Quelle che seguono sono le istruzioni minime assolute necessarie per ottenere un server VPN PPTP di base in esecuzione su Ubuntu. I clienti saranno quindi in grado di VPN nel server e instradare il loro traffico Internet in modo che passi attraverso il server a Internet. Come sempre, consulta la documentazione completa per capire cosa sta facendo tutto.
Innanzitutto, installa il software richiesto:
sudo apt-get install pptpd
In secondo luogo, abilitare ip_forward
nel kernel per IPv4 decommentando la riga associata in /etc/sysctl.conf :
sudo sed -i -r 's/^\s*#(net\.ipv4\.ip_forward=1.*)/\1/' /etc/sysctl.conf
# Reload the config file to have the change take effect immediately.
sudo -i sysctl -p
In terzo luogo, abilitare NAT (se non è già abilitato) in modo che gli utenti sulla rete VPN privata possano avere i loro pacchetti instradati su Internet:
OUTIF=`/sbin/ip route show to exact 0/0 | sed -r 's/.*dev\s+(\S+).*/\1/'`
sudo -i iptables --table nat --append POSTROUTING --out-interface $OUTIF --jump MASQUERADE
# Enable NAT on boot from the rc.local script.
CMD="iptables --table nat --append POSTROUTING --out-interface $OUTIF --jump MASQUERADE"
sudo sed -i "\$i$CMD\n" /etc/rc.local
Nota: questa guida presuppone che non sia configurato alcun firewall sul server. Se si dispone di un firewall sul server, come UFW , consultare invece la documentazione pertinente .
In quarto luogo, per ogni utente VPN, creare un account nel file / etc / ppp / chap-secrets . Sostituisci $USER
con il nome utente effettivo che desideri utilizzare per quell'utente VPN.
KEY=`head -c 20 /dev/urandom | sha1sum | nawk '{print $1}'`
echo "$USER pptpd $KEY *" | sudo tee -a /etc/ppp/chap-secrets
Finalmente sei pronto per ...
Configura il client
Nell'applet Network Manager , seleziona Connessioni VPN → Configura VPN , quindi fai clic su Aggiungi . Nella schermata successiva seleziona PPTP per il tipo di VPN, quindi fai clic su Crea .
In questa finestra, inserisci il nome host o l'IP del tuo server insieme al nome utente e alla chiave che hai aggiunto al file / etc / ppp / chap-secrets sul server.
Ora fai clic su Avanzate .
In questa finestra, abilita "Usa crittografia Point-to-Point (MPPE)" e seleziona la sicurezza a 128 bit . Disabilita l'uso dell'autenticazione MSCHAP (lascia MSCHAPv2 abilitato).
Infine, fai clic su OK, quindi su Salva per chiudere la finestra precedente.
È ora possibile testare la connessione VPN accedendo all'applet Network Manager → Connessioni VPN e selezionando la connessione appena creata. Assicurati di ricevere un messaggio che informi che la connessione VPN è andata a buon fine, quindi vai a un sito Web di controllo IP per verificare che il tuo IP sia ora visualizzato come IP del server.
Se viene visualizzato un messaggio che informa che la connessione VPN al server non è riuscita: verificare innanzitutto di aver inserito correttamente le impostazioni del client; in secondo luogo, verificare che il client disponga della connettività di rete alla porta TCP 1723 sul server; infine, controlla il file di registro / var / log / messaggi sul server per ulteriori indizi. Se la tua connessione VPN ha esito positivo, ma successivamente non riesci a navigare su alcun sito Web dal client, consulta questa guida diagnostica incredibilmente utile sul sito Web pptpd.
Appunti
Se la rete locale a cui si è connessi utilizza le sottoreti 192.168.0.0/24 e 192.168.1.0/24, si verificheranno problemi perché è quello che il server PPTP utilizza per impostazione predefinita. Dovrai configurare PPTP per usare diverse sottoreti in pptpd.conf .
Vi sono numerose altre modifiche alla configurazione che potresti voler apportare. Ad esempio, tutte le ricerche dei nomi di dominio verranno comunque interrogate utilizzando il server DNS locale anziché passare attraverso il server PPTP. Prenditi il tempo di leggere tutta la documentazione per scoprire come modificare questa impostazione e molte altre.