Knowledgebase Semplici istruzioni per lavorare con il servizio Profitserver
Principale Knowledgebase Come configurare Wireguard VPN sul tuo server

Come configurare Wireguard VPN sul tuo server


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 update

Rinnovo dei pacchetti stessi

apt upgrade -y

Installa il pacchetto wireguard

apt install -y wireguard

La 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 > publickey

Ora impostiamo i diritti per la chiave privata:

chmod 600 privatekey

Prima di creare il file di configurazione, abbiamo bisogno del nome della nostra interfaccia di rete. Per scoprirlo, usa il comando:

ip a

Abbiamo 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.

Imposta Wireguard: avremo bisogno di una chiave pubblica e privata per il nostro server

Ci serviranno anche una chiave pubblica e una privata. Per visualizzarle uso tail

tail privatekey publickey

Ecco come si presenta:

Ci serviranno anche una chiave pubblica e una privata. Per visualizzarle uso tail

Per la modifica, puoi utilizzare qualsiasi Editor di testo Linux. Userò nano. Per installarlo devi eseguire il comando:

apt install -y nano

Modifichiamo il file di configurazione:

nano /etc/wireguard/wg0.conf

Note:

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 MASQUERADE

Nel mio caso sembra così

Modifichiamo il file di configurazione

Attiviamo l'inoltro IP

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

Avvia 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:

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_publickey

Genererò anche le chiavi per utilizzare la VPN sul telefono:

wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey

Va 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ì:

Genererò le chiavi per la parte client Wireguard anche sul server

Mostriamo le chiavi pubbliche sullo schermo. Ci serviranno per aggiungere nodi alla nostra rete:

tail mypc_publickey myphone_publickey

Per me è così:

Visualizziamo le chiavi pubbliche sullo schermo

Modifichiamo il nostro file di configurazione:

nano wg0.conf

Aggiungi le seguenti linee:

[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32 

[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32

Ora il file di configurazione appare così:

Modifichiamo il nostro file di configurazione

Salva il file e riavvia il nostro servizio:

systemctl restart wg-quick@wg0

Verifichiamo che tutto sia andato a buon fine:

systemctl status wg-quick@wg0

Lo 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 = 20

Nel 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

dovremmo aggiungere altri indirizzi al campo Indirizzo nei file di configurazione

ilmiotelefono.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

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

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 qrencode

Una volta nella directory di configurazione, effettuare i seguenti passaggi:

qrencode -t ansiutf8 -r myphone.conf
Per aggiungere comodamente una VPN al tuo telefono, installa un programma per generare codici QR sul server

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.

Quindi entriamo nell'app Wireguard sul telefono, premiamo + per creare un nuovo tunnel verificare che stiamo visualizzando l'indirizzo del nostro server utilizzando qualsiasi risorsa che visualizzi l'indirizzo IP di output

Lo hai fatto!

❮ Articolo precedente Come connettersi al server Windows tramite RDP (Desktop remoto) da smartphone su iOS o Android
Articolo successivo ❯ Configurazione del server VPN su Linux: PPTP o OpenVPN?

Chiedici informazioni su VPS

Siamo sempre pronti a rispondere alle vostre domande a qualsiasi ora del giorno e della notte.