VPN
Una Virtual Private Network (VPN) consente di redirigere in tutto o in parte il proprio traffico internet verso un server VPN, permettendo così l'accesso a reti locali o a servizi remoti protetti da firewall con whitelist sull'indirizzo IP.
Per maggiori informazioni generali, si veda Wikipedia.
Informazioni generali
La VPN aziendale è stata realizzata con OpenVPN, un software open source cross-platform. Il server è implementato da una macchina virtuale (services) basata su Debian; sono disponibili client per Windows, Linux e Android.
Installare e configurare una rete VPN
Per installare una rete VPN, è stata seguita principalmente questa guida su Debianizzati, integrata dalla documentazione presente sul sito di OpenVPN.
Installare il client
OpenVPN rende disponibili i client per diverse piattaforme, che possono essere scaricati da questa pagina.
Per utenti Windows: si consiglia di scaricare il client (a 32 o 64 bit) indicato come Windows XP, e non quello per Windows Vista and later con il quale ci sono problemi noti.
Abilitare nuovi client
Per abilitare un nuovo client, bisogna preparare un pacchetto che comprende la configurazione del client (un file .ovpn) e i certificati emessi dall'Autorità di Certificazione (CA) del server.
Un template di questo pacchetto è disponibile in /etc/openvpn/client-template; è possibile copiare questa cartella, rinominandola (di solito col nome del nuovo client, in una forma del tipo nome-cognome) e modificando poi i file per inserire i nomi adatti.
Per generare i certificati, bisogna lanciare lo script /etc/openvpn/easy-rsa/2.0/build-key-pass. Verranno richieste alcune informazioni e la password che l'utente dovrà digitare per connettersi. Si sconsiglia l'uso dello script build-key che non richiede la password, per motivi di sicurezza.
I certificati vanno quindi copiati nella cartella del pacchetto, nel percorso specificato nel file di configurazione. Il pacchetto può quindi essere trasmesso all'utente tramite un canale sicuro, di solito con una chiavetta USB.
Webmobili Torino
| Indirizzo IP del server | 89.96.52.243 |
|---|---|
| Porta | 1318 |
| Indirizzo locale del server | 10.13.18.1 |
| Indirizzo LAN del server | 10.13.17.21 |
Non è attivata la redirezione completa dell'intero traffico del client attraverso la VPN: solo il traffico diretto verso alcuni indirizzi IP viene inviato sulla connessione VPN. Per aggiungere o rimuovere indirizzi da questa lista, bisogna modificare il file /etc/openvpn/openvpn.conf.
| Indirizzo IP | Descrizione |
|---|---|
| 10.13.17.0 | Indirizza il traffico della rete LAN dell'ufficio |
| 109.168.30.142 | Macchina test Webmobili |
| 109.168.30.143 | Macchina produzione Webmobili |
| 109.168.30.144 | Macchina EpiServer |
| 109.168.30.145 | Macchina EpiServer |
| 109.168.30.102 | Macchina GPChannel |
| 109.168.30.149 | Macchina ex Witcasa |
| 52.25.242.144 | Macchina Contentwise di Moviri |
| 46.16.88.74 | email GPC |
| 62.173.163.218 | Macchina GIO - MontiRusso |
| 62.173.163.234 | Macchina GAE - MontiRusso |
| 62.173.163.235 | Macchina VICO-PROXY - MontiRusso |
| 62.173.163.236 | Macchina BRUNO-PROXY - MontiRusso |
Soluzione di problemi comuni
Rete interna o servizi remoti non raggiungibili
Quando la connessione VPN è attiva, è possibile accedere alla rete locale dell'ufficio come se si fosse fisicamente collegati ad essa. Inoltre, tutti i servizi remoti accessibili solo dall'IP dell'ufficio sono raggiungibili (vedi tabella sopra).
Nel caso questo non avvenisse, una possibile causa è che l'IP forwarding sia disattivato sul server. Per verificarlo, si accede in SSH alla macchina Services e si esegue
cat /proc/sys/net/ipv4/ip_forward
Se viene stampato 1, il port forwarding è attivo; se 0, è disattivato. Per attivarlo, è sufficiente eseguire
echo 1 > /proc/sys/net/ipv4/ip_forward
Creazione di un nuovo client
Si tratta di creare un client certificato.
Dalla macchina Jarvis
cd /opt/shared/bash
sudo ./vpncreateuser
# 1- Scrivi il tuo nome: digitare nomecognome in minuscolo
# 2- Enter PEM pass phrase scrivere la password e confermare
# 3- Compilare come segue
# !!molto importante!! il campo Common Name deve essere esattamente Webmobili S.R.L. per matchare il server
Country Name: IT
State or Province Name: TO
Locality Name: Torino
Organization Name: Webmobili S.R.L.
Organizational Unit Name: Team MESS
Common Name: Webmobili S.R.L.
Name: NomeCognome
Email Address: email@dominio.est
# 4- invio su challenge password e optional company name
# 5- Digitare y alle 2 domande successive (importante, invio senza digitare equivale a n )Se tutto è andato bene ci ritroviamo la cartella di configurazione VPN pronta proprio nella Working Directory.
Assegniamo i permessi
sudo chown www-data:www-data Webmobili-nomecognome/ -R
sudo chmod 775 Webmobili-nomecognome/ -R
mv Webmobili-nomecognome /opt/shared/VPNOra è pronta.
Cambiamento di Easy-RSA
Hanno aggiornato Easy-RSA, non esiste più la cartella keys, sostituita da pki e le operazioni per generare un client VPN sono cambiate.
https://www.howtoforge.com/tutorial/how-to-install-and-configure-openvpn-server-on-debian-10/
Questo articoletto va migliorato