GNU/Linux >> Linux Esercitazione >  >> Panels >> OpenVPN

Configurazione di un server OpenVPN con DD-WRT e Viscosity

Le reti private virtuali (VPN) possono essere utilizzate per una serie di applicazioni molto utili. Puoi connetterti in modo sicuro a qualsiasi hotspot Wi-Fi pubblico. Puoi superare le restrizioni di blocco geografico sui tuoi siti Web preferiti. E puoi persino connetterti alla rete di casa o dell'ufficio da qualsiasi parte del mondo, come se fossi seduto alla tua scrivania. Questa guida ti guiderà attraverso il processo di configurazione del tuo server OpenVPN e di connessione ad esso con la tua copia di Viscosity.

L'esecuzione del tuo server OpenVPN ti consentirà di crittografare tutto ciò che fai su Internet, in modo da poter eseguire in sicurezza il tuo banking online sul WiFi gratuito nel tuo bar preferito. Tutto ciò che invii tramite la connessione VPN verrà crittografato dal tuo dispositivo fino a quando non raggiunge il tuo server OpenVPN a casa. Configurare il tuo server OpenVPN per accedere alla tua rete domestica o aziendale ti dà pieno accesso a tutti i tuoi file sulla tua rete.

Questa guida ti guiderà attraverso i passaggi necessari per configurare un server OpenVPN su un'istanza DD-WRT che ti consente di accedere in modo sicuro alla tua rete domestica/dell'ufficio da una posizione remota e, facoltativamente, inviare tutto il traffico di rete attraverso di essa in modo da poter accedere anche Internet in modo sicuro.

Poiché DD-WRT viene utilizzato principalmente sull'hardware del router, si presume che l'istanza DD-WRT abbia una connessione diretta a Internet e un proprio indirizzo IP. Pertanto non prenderemo in considerazione alcun problema relativo all'avere la tua istanza DD-WRT dietro un altro router.

Preparazione

Per questa guida, assumiamo:

  • Hai già installato la versione appropriata di DD-WRT per l'hardware del tuo router
  • DD-WRT è stato configurato con almeno un'interfaccia WAN e un'interfaccia LAN
  • Durante questa guida sei connesso con il tuo dispositivo client al server DD-WRT tramite la sua interfaccia LAN
  • Questa installazione di DD-WRT è una nuova installazione
  • Hai già una copia di Viscosity installata sul tuo dispositivo client

Se è necessario scaricare e installare una copia di DD-WRT, è possibile trovare informazioni all'indirizzo http://www.dd-wrt.com/wiki/index.php/Installation. Non tratteremo i dettagli della configurazione di un'istanza DD-WRT, molte guide possono essere trovate online. Indipendentemente dalla versione di DD-WRT in esecuzione, è molto probabile che molti o anche tutti i passaggi descritti in questa guida vengano comunque applicati. Se stai cercando di configurare un server OpenVPN su un sistema operativo diverso, consulta le nostre altre guide.

Il dispositivo client deve essere connesso al server DD-WRT tramite l'interfaccia LAN. Questo è necessario per poter accedere al pannello di controllo per modificare la configurazione DD-WRT. Le specifiche su come ottenere questo risultato dipendono dalla tua particolare configurazione di rete.

Se non hai una copia di Viscosity già installata sul tuo client, consulta questa guida all'installazione per l'installazione di Viscosity (Mac | Windows).

Supporto

Sfortunatamente non possiamo fornire alcun supporto diretto per la configurazione del tuo server OpenVPN. Forniamo questa guida come cortesia per aiutarti a iniziare e ottenere il massimo dalla tua copia di Viscosity. Abbiamo testato a fondo i passaggi di questa guida per assicurarci che, se segui le istruzioni dettagliate di seguito, dovresti essere sulla buona strada per goderti i vantaggi dell'esecuzione del tuo server OpenVPN.

Per ulteriori informazioni o aiuto con DD-WRT, ti consigliamo di consultare https://dd-wrt.com/support/

Generazione di certificati e chiavi

Il passaggio successivo consiste nel generare le configurazioni per il server e i client, nonché i certificati per utilizzarli. Puoi farlo facilmente seguendo la Guida alla creazione di certificati e chiavi. Genera tutto sul tuo PC o Mac e poi prendi nota del percorso del tuo server cartella creata, utilizzeremo i file qui in seguito.

Se utilizzi il server DNS predefinito (10.8.0.1), dovrai configurare tu stesso un server DNS, le istruzioni sono alla fine di questo articolo. Ti consigliamo invece di utilizzare un server DNS esistente, un server DNS disponibile pubblicamente come quello di Google (8.8.8.8 e 8.8.4.4) è il più semplice.

Creazione del server OpenVPN

Ora possiamo utilizzare il pannello di controllo basato sul Web per configurare il server OpenVPN sulla nostra istanza DD-WRT. È necessario accedere al pannello di controllo dal dispositivo client collegato all'interfaccia LAN del server DD-WRT. Tieni presente che "C:\percorso\a" e "percorso/a/" di seguito devono essere sostituiti con la posizione in cui hai creato il certificato/le chiavi.

  1. Apri un browser sul tuo client e vai all'indirizzo IP dell'interfaccia LAN del tuo server DD-WRT (qualcosa come http://192.168.1.1 ). Se è la prima volta che accedi al tuo pannello di controllo DD-WRT, ti verrà chiesto di creare nuove credenziali di accesso.



  2. Fare clic su Services scheda e quindi il VPN scheda.
  3. Nel demone OpenVPN sezione, fai clic su Abilita . Questo espanderà la sezione e ti fornirà le aree da incollare nei certificati che abbiamo creato sopra.
  4. Assicurati che il Tipo di inizio il parametro è impostato su WAN Up .
  5. Sul tuo dispositivo client, nel Terminale (Mac) o nel prompt dei comandi (Windows), leggi il contenuto di ca.crt file digitando:
    Mac
    cat path/to/server/ca.crt
    Finestre
    type "C:\path\to\server\ca.crt"
  6. Copia l'output di questo comando (comprensivo delle parti -----BEGIN CERTIFICATE----- e -----END CERTIFICATE-----) e incollalo nel pannello di controllo DD-WRT sezione denominata Certificato CA .
  7. Copia l'output dal comando seguente e incollalo nel Certificato del server pubblico sezione del pannello di controllo DD-WRT:
    Mac
    cat path/to/server/server.crt
    Finestre
    type "C:\path\to\server\server.crt"
  8. Copia l'output del comando seguente e incollalo nella Chiave del server privato sezione del pannello di controllo DD-WRT.
    Mac
    cat path/to/server/server.key
    Finestre
    type "C:\path\to\server\server.key"
  9. Copia l'output dei parametri di Diffie Hellman e incollalo nel DH PEM sezione del pannello di controllo DD-WRT:
    Mac
    cat path/to/server/dh.pem
    Finestre
    type "C:\path\to\server\dh.pem"

Infine, dobbiamo inserire la configurazione del server. Incolla quanto segue nella Configurazione di OpenVPN sezione del pannello di controllo DD-WRT:

# The credential files
dh /tmp/openvpn/dh.pem
ca /tmp/openvpn/ca.crt
cert /tmp/openvpn/cert.pem
key /tmp/openvpn/key.pem

# Our VPN connection will be transported over UDP
proto udp

# The server needs to keep a record of client virtual IP addresses so that they
# can be reassigned if the server goes down
ifconfig-pool-persist /tmp/openvpn/ip-pool.txt

# To ensure that each side of the VPN knows if the connection has been severed,
# we want to ping each side every 10 seconds. If either side fails to recieve a
# ping within 2 minutes, then it will assume the other side is down
keepalive 10 120

# To avoid attempting to access resources that may no longer be accessible on
# restart
persist-key
persist-tun

# To write (and rewrite) a short summary of current VPN connections every minute
# to a file
status /tmp/openvpn/openvpn-status.log

# The verbosity of this connection logging (displayed in the Viscosity 'Details'
# window) can range from 0 (silent) to 9 extremely verbose. We will use the
# default of 3
verb 3

# To prevent more than 10 duplicates of the same log message in a row from
# flooding the Viscosity log
mute 10

# Provide GUI access over port 5002
management 127.0.0.1 5002

# This server will use the default OpenVPN port (1194)
port 1194

# We need the VPN to create a tun network interface through which we can route
# all our traffic
dev tun0

# The VPN requires a private IP subnet. We will use the default OpenVPN IP
# subnet
server 10.8.0.0 255.255.255.0

# We want VPN clients connected to this server to be able to access any hosts
# accessible on your home network. We are assuming that your local network
# subnet is 192.168.0.x/24. If it is something else, you will need to change the
# IP address in the command below
push "route 192.168.0.0 255.255.255.0"

# We want to allow hosts connected to the OpenVPN server to be able to see each
# other
client-to-client

Prestare particolare attenzione all'indirizzo IP nel push "route 192.168.0.0 255.255.255.0" . Assicurati che questa sottorete corrisponda alla tua sottorete IP LAN di casa/ufficio. Se non stai configurando questo server VPN per accedere alla tua LAN di casa/ufficio, puoi commentare questa riga. Quando hai finito, fai clic su Apply Settings pulsante in basso. Ciò farà sì che il server OpenVPN venga avviato con queste impostazioni.

Impostazioni server DNS

Se hai intenzione di crittografare tutto il traffico di rete attraverso il tuo server VPN, ti consigliamo di abilitare il tuo server DNS.

  1. Fare clic su Setup scheda nel pannello di controllo Web e scorri verso il basso fino a Impostazioni del server di indirizzi di rete (DHCP) sezione.
  2. Assicurati che tutte e tre le seguenti impostazioni siano controllate:
    • Usa DNSMasq per DHCP
    • Usa DNSMasq per DNS
    • DHCP-autorevole
  3. Fai clic su Apply Settings pulsante per salvare queste modifiche.
  4. Fai clic su Servizi scheda e quindi scorri verso il basso fino a DNSMasq sezione.
  5. Assicurati che entrambe le seguenti impostazioni siano abilitate:
    • Masq DNS
    • DNS locale
  6. Sotto queste impostazioni dovresti vedere una casella per Opzioni DNSMasq aggiuntive . Copia le seguenti righe in quella casella:
    domain-needed
    bogus-priv

    interface=tun0
    listen-address=127.0.0.1

    server=8.8.8.8
    server=8.8.4.4
    dove stiamo utilizzando i server DNS di Google (8.8.8.8 e 8.8.4.4). Se hai un altro fornitore di servizi DNS di tua scelta, sentiti libero di usare i loro server qui.
  7. Fai clic su Apply Settings pulsante in fondo alla pagina. Questo riavvierà il server DNSMasq con queste impostazioni.

Server dell'ora

È una buona idea impostare correttamente l'orologio sul router DD-WRT.

  1. Fare clic su Setup scheda e scorri verso il basso fino a Impostazioni ora sezione.
  2. Imposta le impostazioni dell'ora in base alla tua regione. Una ricerca su Google per il server dell'ora della tua regione dovrebbe fornirti un IP/nome del server appropriato (come pool.ntp.org).



  3. Fai clic su Apply Settings pulsante in fondo alla pagina.
  4. Per confermare che le impostazioni dell'ora sono state applicate, fai clic su Administration scheda e quindi fare clic su Commands sottoscheda.
  5. Nei Comandi casella, digitare:
    date
    e premi Run Commands pulsante. Questo dovrebbe produrre la data e l'ora correnti (molto probabilmente nel fuso orario UTC).

Impostazioni firewall

  1. Fare clic su Administration scheda e quindi fare clic su Commands sottoscheda.
  2. Copia quanto segue nei Comandi box:
    iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
    iptables -I FORWARD -p udp -s 10.8.0.0/24 -j ACCEPT
    iptables -I INPUT -p udp --dport=1194 -j ACCEPT
    iptables -I OUTPUT -p udp --sport=1194 -j ACCEPT

    iptables -I INPUT -p udp -i eth0 -j ACCEPT
    iptables -I FORWARD -i eth0 -o tun0 -j ACCEPT
    iptables -I FORWARD -i tun0 -o eth0 -j ACCEPT

    iptables -I INPUT -p udp -i br0 -j ACCEPT
    iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
    iptables -I FORWARD -i tun0 -o br0 -j ACCEPT
  3. Fai clic su Save Firewall pulsante.

Impostazione della viscosità

Il passaggio finale è impostare la viscosità. Grazie a openvpn-generate, è facile come importare e connettere.

Importazione

Copia il file *.visz che hai creato con openvpn-generate sul tuo computer Mac o Windows con Viscosity installato e fai doppio clic sul file. Dovresti vedere un messaggio che informa che la configurazione è stata importata correttamente.

Connessione e utilizzo della connessione VPN

Ora sei pronto per connetterti. Fai clic sull'icona Viscosità nella barra dei menu di macOS o nella barra delle applicazioni di Windows per aprire il menu Viscosità, seleziona la connessione che hai importato e Viscosità si collegherà.

Per verificare che la VPN sia attiva e funzionante, puoi aprire la finestra Dettagli dal menu Viscosità. Ciò ti consentirà di visualizzare i dettagli della connessione, il traffico e il registro di OpenVPN.



Ecco fatto, hai impostato il tuo server OpenVPN personale. Congratulazioni, ora sei libero di godere dei vantaggi di gestire il tuo server OpenVPN!


OpenVPN
  1. Come configurare e configurare un server OpenVPN su Ubuntu 22.04

  2. Come installare e ospitare il server OpenVPN con Docker

  3. Configurazione di un server di offuscamento con Obfsproxy e Viscosity

  4. Installa e configura il server OpenVPN su Ubuntu 20.04

  5. Installa e configura il server OpenVPN FreeBSD 12

Configurazione di un server OpenVPN con Sophos XG e Viscosity

Configurazione di un server OpenVPN con Synology e Viscosity

Configurazione di un server OpenVPN con router Tomato e Viscosity

Configurazione di un server OpenVPN con Ubiquiti EdgeRouter (EdgeOS) e Viscosity

Configurazione di un server OpenVPN con Ubuntu e Viscosity

Configurazione di un server OpenVPN con VyOS e Viscosity