VPN semplice su una RouterBoard
Cosa vuol dire connettersi ad una Rete Privata Virtuale?
Una VPN (Virtual Private Network) è una rete privata virtuale che garantisce privacy, anonimato e sicurezza attraverso un canale di comunicazione riservato (tunnel VPN) e creato sopra un’infrastruttura di rete pubblica. Il termine virtuale sta a significare che tutti i dispositivi appartenenti alla rete non devono essere necessariamente collegati ad una stessa LAN locale ma possono essere dislocati in qualsiasi punto geografico del mondo.
Le VPN sono utilizzate soprattutto in ambito aziendale o dalle amministrazioni pubbliche, ma anche da privati che vogliono raggiungere dall’esterno la loro rete domestica, soprattutto per la possibilità di abbattere i costi nella realizzazione di una propria rete protetta e creata, sfruttando l’infrastruttura della rete pubblica. Un altro noto utilizzo è quello che consente di cambiare il nostro indirizzo IP mittente potendo accedere ad Internet in maniera sicura e senza restrizioni. È bene tenere a mente che, poiché i dati su Internet, se non adeguatamente protetti, quindi se viaggiano in chiaro, senza un livello di crittografia, possono essere intercettati da chiunque, amplificando il rischio di furto di dati, soprattutto sensibili.
Installiamo un server OpenVPN su una RouterBoard
Mai come in questo periodo, dominato dalla pandemia e dalle esigenze di smart working, ci sono arrivate richieste di attivazione di VPN e possibilità di lavorare da remoto e accedere da casa a dispositivi aziendali. A tal proposito gli apparati Mikrotik offrono diversi strumenti per attivare servizi VPN (Virtual Private network). Infatti attraverso il suo sistema operativo RouterOs si può scegliere tra::
- OPENVPN
- PPTP
- SSTP
- L2TP
- IPSEC
Vediamo come installare un servizio VPN con OpenVPN in maniera semplice, sen non abbiamo a particolari esigenze. In questo caso basta crear eil certificato per il server e distribuire ai cliente il certificato della CA creata sul nostro dispositivo Mikrotik, oltre all’utente e la password da utilizzare per la connessione.
Abbiamo già affrontato al questione in un articolo più dettagliato, in questo ci limitiamo a configurare e distribuire il file di configurazione in modo rapido agli utenti.
Per prima cosa creiamo una CA, firmiamo il relativo certificato ed esportiamolo:
/certificate add name=CA common-name=CA key-usage=key-cert-sign,crl-sign days-valid=3600
/certificate sign CA ca-crl-host=127.0.0.1 name="CA"
/certificate export-certificate CA
Con questi due comandi oltre a creare la CA lo troviamo esportato sotto il menu [File] con il nome cert_export_CA.crt.
Come secondo passaggio creiamo il certificato per il nostro server mikrotik
/certificate add name=server common-name=server days-valid=3600
/certificate sign server ca=CA name=server
Lo stato dei certificati deve essere questo:
Creiamo ora il pool dhcp dedicato ai client che utilizzeranno le sessioni vpn:
/ip pool add name=ovpn ranges=172.16.100.2-172.16.100.254
/ip dhcp-server network add address=172.16.100.0/24 comment=vpn dns-server=8.8.8.8 gateway=172.16.100.1 netmask=24
Subito dopo tocca al profilo,, che permette di assegnare agli utenti i giusti parametri al momento della connessione:
/ppp profile add dns-server=172.16.100.1 local-address=ovpn name=open_vpn remote-address=ovpn use-compression=no use-encryption=required
Creiamo adesso l’utente e la password:
/ppp secret
add name=vpn password=0123456789 profile=open_vpn service=ovpn
Per ultimo possiamo attivare il server OpenVPN
/interface ovpn-server server set enabled=yes certificate=server auth=sha1 cipher=aes256 port=1194 netmask=24 require-client-certificate=no mode=ip default-profile=ovpn_vpn
A questo punto la parte relativa al server mikrotik è terminata e possiamo dedicarci al client, sul quale dovremmo installare il client necessario a seconda della nostra piattaforma.
Il file client.ovpn invece conterrà questo:
proto tcp-client
remote X.Y.Z.K 1194
dev tun
script-security 2
nobind
persist-key
tls-client
verb 1
cipher AES-256-CBC
auth SHA1
pull
route 192.168.1.0 255.255.255.0
dhcp-option DOMAIN dominio.it
dhcp-option DNS 192.168.1.1
<ca>
[INCOLLARE IL CONTENUTO DEL FILE cert_export_CA.crt]
</ca>
Nel file dovrete mettere i vostri dati e adattarli alle vostre esigenze:
- Nome o indirizzo pubblico del Mikrotik VPN server a cui collegarsi
- La classe di IP che usate internamente per creare automaticamente una rotta
- Il nome del dominio interno e l’IP del server DNS interno se volete risolvere i nomi
- Nella sezione <ca></ca> dovrete incollare il contenuto del file cert_export_CA.crt che abbiamo esportato all’inizio dell’articolo. Può essere comodamente editato con il notepad e poi con un copia incolla messo nel file di configurazione
- In pratica basta il file della CA e l’utente per collegarsi.
Una volta effettuati queste modifiche potrete stabilire una connessione OpenVPN verso la vostra RouterBoard Mikrotik e raggiungere gli host alle sue spalle in base ai routing impostati.
.