Questo articolo descriverà in dettaglio come impostare Wireguard VPN sul tuo server. Può essere un server virtuale o privato, non ha molta importanza.
Questa guida alla configurazione di VPN Wireguard è pensata per gli utenti che non hanno molta esperienza, quindi tutti i passaggi saranno molto dettagliati e seguiti da screenshot.
Il traffico che passa attraverso il nostro tunnel sarà crittografato e su Internet verrà visualizzato l'indirizzo IP del nostro server VPN, non l'indirizzo del provider tramite il quale accediamo alla rete.
Si suppone che tu abbia già un VPS. In caso contrario, puoi minimo da noi.
Installeremo il sistema operativo Ubuntu 22.04 sul nostro server. Se hai un server con un sistema operativo diverso, puoi facilmente reinstallarlo seguendo la procedura istruzioni.
Quindi, il server con Ubuntu 22.04 OS pronto, ora ci colleghiamo ad esso tramite SSH. Se improvvisamente non vi siete imbattuti in questo protocollo prima, allora un articolo in cui questo processo è descritto in dettaglio vi aiuterà. Il secondo paragrafo del articolo è per il sistema operativo Linux, il terzo è per il sistema operativo Windows.
Configurare il server Wireguard
Dopo una connessione riuscita, scriverò alcuni comandi e una descrizione di ciò che producono per comprendere il processo:
Aggiorniamo l'elenco dei pacchetti nei repository
apt updateRinnovo dei pacchetti stessi
apt upgrade -yInstalla il pacchetto wireguard
apt install -y wireguardLa nostra configurazione verrà memorizzata nella directory /etc/wireguard/, dobbiamo accedere alla directory:
cd /etc/wireguard/Ci serviranno una chiave pubblica e una privata per il nostro server. Le genereremo dopo aver impostato i diritti corretti quando creiamo file e directory con i comandi:
umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickeyOra impostiamo i diritti per la chiave privata:
chmod 600 privatekeyPrima di creare il file di configurazione, abbiamo bisogno del nome della nostra interfaccia di rete. Per scoprirlo, usa il comando:
ip aAbbiamo bisogno dell'interfaccia con l'indirizzo IP che viene utilizzato per la connessione corrente. Probabilmente si chiamerà ens3 nel tuo caso, ma potrebbe esserci un altro nome.
 
Ci serviranno anche una chiave pubblica e una privata. Per visualizzarle uso tail
tail privatekey publickeyEcco come si presenta:
 
Per la modifica, puoi utilizzare qualsiasi Editor di testo Linux. Userò nano. Per installarlo devi eseguire il comando:
apt install -y nanoModifichiamo il file di configurazione:
nano /etc/wireguard/wg0.confNote:
per salvare il file utilizziamo la combinazione di tasti ctrl+o
per uscire - ctrl+x
Dovrebbe sembrare come questo:
[Interface]
PrivateKey = [ your private key ]
Address = 10.30.0.1/24
ListenPort = 51928
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o [ interface name ] -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o [ interface name ] -j MASQUERADENel mio caso sembra così
 
Attiviamo l'inoltro IP
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -pAvvia il servizio di wireguard:
systemctl start [email protected]Se vogliamo che il servizio venga avviato dopo il riavvio del server, procediamo come segue:
systemctl enable [email protected]Per visualizzare lo stato del servizio:
systemctl status [email protected]Lo stato dovrebbe essere attivo come nello screenshot:
 
Se hai seguito attentamente le nostre istruzioni, a questo punto hai tutto ciò che ti serve per far funzionare la parte server di VPN Wireguard.
Impostazione del client Wireguard
L'unica cosa rimasta è configurare la parte client. Ad esempio e per semplicità, genererò le chiavi per la parte client anche sul server. Ma per motivi di sicurezza, sarebbe più corretto generare le chiavi sul lato client. Utilizzo i comandi per la generazione:
wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickeyGenererò anche le chiavi per utilizzare la VPN sul telefono:
wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickeyVa notato che tutto questo deve essere fatto mentre si è nel catalogo
/etc/wireguard/
Puoi anche eseguirlo in un altro catalogo. Ma per semplicità, eseguiamo le istruzioni in /etc/wireguard/
Usiamo il comando ls per elencare i file in una directory. Io l'ho ottenuto così:
 
Mostriamo le chiavi pubbliche sullo schermo. Ci serviranno per aggiungere nodi alla nostra rete:
tail mypc_publickey myphone_publickeyPer me è così:
 
Modifichiamo il nostro file di configurazione:
nano wg0.confAggiungi le seguenti linee:
[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32 
[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32Ora il file di configurazione appare così:
 
Salva il file e riavvia il nostro servizio:
systemctl restart wg-quick@wg0Verifichiamo che tutto sia andato a buon fine:
systemctl status wg-quick@wg0Lo stato deve essere attivo
È necessario ricaricare il servizio ogni volta che si modifica il file di configurazione del server (wg0.conf)
Successivamente, creeremo le configurazioni per i client (nel mio caso, il mio PC e il mio telefono). Farò lo stesso sul server.
nano mypc.conf[Interface] 
PrivateKey = [mypc_privatekey private key] 
Address = 10.30.0.2/32 
DNS = 8.8.8.8 
[Peer] 
PublicKey = [publickey server publc key] 
Endpoint =[ server ip address]:51928 
AllowedIPs = 0.0.0.0/0 
PersistentKeepalive = 20Nel campo Endpoint, puoi vedere l'indirizzo IP del server: questo è l'indirizzo IP che abbiamo usato per connetterci tramite SSH. Per vedere le interfacce e gli indirizzi, puoi usare il comando ip a.
Imposta Wireguard per dispositivi mobili
Creiamo una configurazione simile per il nostro telefono. Dobbiamo solo cambiare l'indirizzo. Per il PC era 10.30.0.2/32 e nella configurazione per il telefono faremo 10.30.0.3/32. Inoltre, se vogliamo usare la VPN su altri dispositivi, allora dovremmo aggiungere altri indirizzi al campo Indirizzo nei file di configurazione e nel file di configurazione del server wg0.conf, il campo AllowedIPs quando creiamo le configurazioni
Nel mio caso i file si presentano in questo modo:
il mio pc.conf
 
ilmiotelefono.conf
 
Per la connessione installiamo il client wireguard https://www.wireguard.com/install/
Nell'applicazione Windows aggiungiamo un nuovo tunnel e inseriamo la configurazione creata nel file mypc.conf
 
Lanciamo il tunnel e andiamo sul browser al sito web che visualizza il nostro indirizzo
 
Per aggiungere comodamente una VPN al tuo telefono, installa un programma per generare codici QR sul server:
apt install -y qrencodeUna volta nella directory di configurazione, effettuare i seguenti passaggi:
qrencode -t ansiutf8 -r myphone.conf 
Quindi entriamo nell'app Wireguard sul telefono, premiamo + per creare un nuovo tunnel, selezioniamo scansiona il codice QR, scansionalo, accendiamo la VPN. Successivamente, verificheremo di visualizzare l'indirizzo del nostro server utilizzando una qualsiasi risorsa che visualizza l'indirizzo IP di output.
 
 
Lo hai fatto!