Oggi vedremo come configurare OpenVPN su un Raspberry Pi.
La configurazione di OpenVPN su un Raspberry Pi è abbastanza semplice grazie a PiVPN. Il progetto PiVPN ti consente di installare in modo semplice e sicuro WireGuard o OpenVPN su un Raspberry Pi. Prima di iniziare, devi assicurarti di avere un nome host DDNS o un indirizzo IP statico. Questo sarà trattato nei passaggi seguenti.
1. Istruzioni per l'installazione:come configurare OpenVPN su un Raspberry Pi
1. Esegui il comando seguente per installare PiVPN.
curl -L https://install.pivpn.io | bash
2. La prima schermata ti informerà che devi impostare un indirizzo IP statico. È meglio impostare un indirizzo IP statico nelle impostazioni del router, poiché stai assicurando che DHCP non tenti di fornire questo indirizzo ad altri dispositivi. Tuttavia, alcuni router (per lo più forniti dall'ISP) non consentono di completare le prenotazioni DHCP. Se non riesci a impostare un indirizzo IP statico per il tuo Raspberry Pi nel tuo router, imposta un indirizzo IP statico sul Raspberry Pi selezionando No e seguendo le istruzioni. Ho specificato un indirizzo IP statico nel mio router, quindi ho selezionato Sì .
3. Ora dovrai selezionare un utente locale. Se hai creato un utente diverso (al di fuori del pi predefinito utente), avrai l'opzione qui. Per la maggior parte delle persone, selezionerai il Pi utente.
4. Verrai indirizzato a una schermata che ti informerà che PiVPN ti consentirà di installare OpenVPN o WireGuard su un Raspberry Pi. Seleziona OpenVPN e poi OK .
5. La sezione successiva avrà alcune impostazioni predefinite. Il mio consiglio è di mantenere queste impostazioni, ma se intendi modificarne qualcuna, seleziona sì . L'approccio suggerito è selezionare No per procedere.
6. Ora OpenVPN verrà installato!
7. La porta predefinita utilizzata da OpenVPN è UDP 1194 . Se desideri modificare questo, puoi farlo qui. Seleziona OK e quindi seleziona Sì per confermare che le impostazioni della porta siano corrette.
8. Ora devi selezionare il provider DNS che desideri utilizzare. Seleziona Personalizzato se desideri utilizzare il tuo server DNS (Pi-hole/AdGuard Home, ecc.) o uno qualsiasi dei provider DNS pubblici se non desideri utilizzare un server DNS locale.
9. Ti verrà ora richiesto di utilizzare il tuo indirizzo IP pubblico o la voce DNS pubblica. Se hai un indirizzo IP statico, sei libero di utilizzare questo indirizzo. Tuttavia, se si dispone di un indirizzo IP esterno dinamico, sarà necessario configurare DDNS. Puoi imparare come farlo qui.
10. Se hai scelto di utilizzare un indirizzo DNS dinamico, puoi inserire tali informazioni qui. Nella schermata successiva, seleziona Sì per confermare che sia corretto.
11. Verrà richiesto di generare la chiave del server e la chiave HMAC. Seleziona OK .
12. Il passaggio successivo ti dirà che il server VPN verificherà la presenza di aggiornamenti automatici e sarà necessario un riavvio periodico. Questa è un'ottima opzione. Abilita gli aggiornamenti automatici (a meno che tu non abbia una buona ragione per non farlo) e procedi. I pacchetti verranno ora installati.
13. L'installazione è ora completa! Riavvia il tuo Raspberry Pi. La prossima sezione spiegherà come configurare i profili VPN.
2. Creazione del profilo OpenVPN
1. Creare un profilo è molto semplice grazie a PiVPN. Esegui il comando seguente per avviare la creazione del profilo.
pivpn add
2. Inserisci un nome per il tuo cliente. Ti verrà quindi chiesto quanto durerà il certificato. La maggior parte delle persone utilizzerà il certificato predefinito di 1080 giorni, ma questo può essere modificato se lo desideri. Quindi, inserisci e verifica una password per il client. Il profilo verrà quindi creato!
3. Puoi accedere al profilo navigando su ovpns cartella.
cd /home/pi/ovpns
4. Si consiglia di trasferire questo file in locale, ovvero utilizzando una condivisione di rete o una chiavetta USB esterna. Il motivo è che il tuo file .ovpn contiene un certificato in fondo. Anche se il semplice fatto di avere questo file non ti consentirà di connetterti (hai ancora bisogno della password definita sopra), ti consigliamo comunque di fare del tuo meglio per mantenerlo locale sul dispositivo che lo utilizza. Con quel disclaimer, se vuoi inviarlo via email a te stesso, questa è anche un'altra opzione.
Segui le istruzioni seguenti se desideri montare un'unità USB esterna sul tuo Raspberry Pi e spostare il file .ovpn.
5. Crea una directory in cui montare l'unità USB esterna.
sudo mkdir /mnt/eUSB
6. Trova l'unità per nome. Dovrai utilizzare il dispositivo nome.
sudo fdisk -l
7. Montare l'unità nella posizione della cartella e copiare il file! NOTA: Assicurati di sostituire /dev/sda1 e il file .ovpn con il nome del tuo dispositivo e il nome del file.
sudo mount /dev/sda1 /mnt/eUSB sudo cp Frank.ovpn /mnt/eUSB
8. Il file ora esisterà sull'unità USB esterna!
3. Port Forwarding
Ora dobbiamo eseguire il port forwarding della porta UDP 1194 sul nostro router al nostro Raspberry Pi. Ora, il port forwarding sarà completamente diverso nella pagina delle impostazioni del router di ogni marchio. Questa è un'ottima guida che mostra come eseguire il port forwarding su router di diverse marche, ma la cosa migliore da fare è provare a cercare su Google il nome del router e port forwarding . Esempio:Netgear port forwarding
- Crea una regola di port forwarding per porta UDP 1194 all'indirizzo IP del Synology NAS. Nell'esempio seguente, 192.168.1.220 è l'indirizzo IP del mio Synology NAS.
Supponendo che tu sia stato in grado di aprire correttamente la porta UDP 1194, la configurazione della porta è ora completa!
4. Configurazione OpenVPN – Come configurare OpenVPN su un Raspberry Pi
Questa sezione è importante per i passaggi futuri (quindi sai che tipo di profili vorresti creare). Creeremo una VPN split-tunnel, una VPN full-tunnel o entrambe nei passaggi successivi.
VPN Split-Tunnel: Il traffico viene inviato attraverso la tua rete solo se sta tentando di accedere a una risorsa interna. Il tuo indirizzo IP quando navighi su un sito al di fuori della tua rete sarà l'indirizzo IP della rete su cui ti trovi attualmente.
VPN full-tunnel: Tutto il traffico viene inviato attraverso la rete domestica. Il tuo indirizzo IP per le richieste interne ed esterne sarà la tua rete domestica.
Ho creato un'immagine molto semplice di seguito che spiega questo, ma vedremo come configurare entrambi nei passaggi successivi. È importante notare che entrambi i tipi di connessione ti permetteranno di accedere alla tua rete locale. Questo mostra solo come il traffico viene instradato in modo diverso alle reti esterne.
NOTA :Questo non è il flusso di rete esatto. Sto semplificando il processo il più possibile.
4.1 Modifica del file di configurazione OpenVPN per Split-Tunnel
Per impostazione predefinita, il file di configurazione di OpenVPN è impostato come tunnel completo. Se sei interessato a creare un tunnel completo e Profilo VPN Split-Tunnel, crea due diversi file di configurazione .ovpn. Nel file di configurazione di Split-Tunnel, aggiungi i dati di seguito. NOTA: Se crei un profilo Split-Tunnel, devi modificare l'indirizzo IP 192.168.1.0 per utilizzare la tua sottorete locale. 192.168.1.0 e 192.168.0.0 sono i più comuni, ma potresti averlo modificato in qualcosa di diverso.
route-nopull route 192.168.1.0 255.255.255.0 vpn_gateway
4.2 Configurazione client OpenVPN:come configurare OpenVPN su un Raspberry Pi
Configurare OpenVPN sul client è molto semplice non appena hai il .ovpn file aggiunto al dispositivo.
1. Scarica qui il software client OpenVPN per il tuo dispositivo.
2. Seleziona il pulsante Aggiungi in basso e quindi scegli File . Ora ti dovrebbe essere richiesto di cercare il .ovpn file che abbiamo creato in precedenza. Carica il file e poi entra nel privato chiave password che abbiamo creato in precedenza.
3. Ora dovresti essere in grado di connetterti alla tua VPN da una rete esterna e accedere alle tue risorse locali! Se vengono creati due profili (uno per Split-Tunnel e uno per Full-Tunnel), dovrai farlo due volte.
5. Conclusione:come configurare OpenVPN su un Raspberry Pi
Questo tutorial ha mostrato come configurare OpenVPN su un Raspbery Pi usando PiVPN. PiVPN semplifica anche la configurazione di WireGuard, quindi dai un'occhiata al mio tutorial su questo se non l'hai ancora fatto! Questo è il mio preferito approccio per accedere alla mia rete locale da una rete esterna. Sebbene i servizi possano essere esposti utilizzando un server proxy inverso o un port forwarding, questa è generalmente l'opzione più sicura.
Grazie per la lettura e se hai domande, lasciale nei commenti!