GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare WireGuard VPN su CentOS 8

WireGuard è un'applicazione di rete privata virtuale open source, veloce e incentrata sulla sicurezza che può essere utilizzata per creare connessioni point-to-point sicure in configurazioni instradate. È semplice, più veloce di OpenVPN e utilizza protocolli e algoritmi di crittografia collaudati per proteggere i dati. Può essere installato in molti sistemi operativi tra cui Windows, macOS, BSD, iOS, Linux e Android. WireGuard è una VPN peer-to-peer e non utilizza il modello client-server. Assegna indirizzi IP statici ai client VPN e l'autenticazione dell'utente avviene tramite lo scambio di chiavi pubbliche.

In questo tutorial, ti mostreremo come configurare WireGuard VPN su CentOS 8.

Prerequisiti

  • Due nuove CentOS 8 VPS sulla piattaforma Atlantic.net Cloud
  • Una password di root configurata sul tuo server

Fase 1:crea un server cloud Atlantic.Net

Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo CentOS 8 come sistema operativo con almeno 1 GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.

Dopo aver effettuato l'accesso al server CentOS 8, esegui il comando seguente per aggiornare il sistema di base con gli ultimi pacchetti disponibili.

aggiornamento dnf -y

Passaggio 2:abilitare l'inoltro IP

Prima di iniziare, dovrai abilitare l'inoltro IP nel tuo sistema. Puoi abilitarlo creando un nuovo file /etc/sysctl.d/99-custom.conf:

nano /etc/sysctl.d/99-custom.conf

Aggiungi la seguente riga:

net.ipv4.ip_forward=1

Salva e chiudi il file, quindi esegui il seguente comando per applicare le modifiche:

sysctl -p /etc/sysctl.d/99-custom.conf

Fase 3 – Installa Wireguard

Innanzitutto, dovrai installare i repository Epel ed Elrepo nel tuo sistema. Puoi installarli con il seguente comando:

dnf install epel-release elrepo-release -y

Una volta installato, installa WireGuard eseguendo il seguente comando:

dnf install kmod-wireguard wireguard-tools -y

Una volta completata l'installazione, riavvia il sistema per caricare il modulo del kernel.

Fase 4 – Configura WireGuard

Innanzitutto, dovrai generare le chiavi pubbliche e private all'interno della directory /etc/wireguard. Esegui il seguente comando per generarli:

wg genkey | tee /etc/wireguard/chiave privata | wg pubkey | tee /etc/wireguard/publickey

Dovresti vedere la tua chiave generata nel seguente output:

Nnid+rqJBnsZ+SN68dILbmxMreKyFTlSjBI8bh4sbzU=

Puoi anche elencarli con il seguente comando:

ls /etc/wireguard/

Dovresti vedere il seguente output:

chiave pubblica a chiave privata

Successivamente, dovrai configurare il dispositivo tunnel che indirizzerà il traffico VPN. Puoi farlo creando un nuovo file di configurazione chiamato wp0.conf:

nano /etc/wireguard/wg0.conf

Aggiungi le seguenti righe:

[Interfaccia] 
Indirizzo =10.0.0.1/24
SaveConfig =vero
ListenPort =51820
Chiave privata =Nnid+rqJBnsZ+SN68dILbmxMreKyFTlSjBI8bh4sbzU=
PostUp =firewall-cmd --zone=public --add-port 51820/udp &&firewall-cmd --zone=public --add-masquerade
PostDown =firewall-cmd --zone=public --remove-port 51820/udp &&firewall-cmd --zone=public --remove-masquerade

Salva e chiudi il file quando hai finito.

Ecco le definizioni rilevanti per le righe precedenti:

  • Indirizzo :Specifica l'indirizzo IP privato del server VPN.
  • ListenPort :Specifica la porta di ascolto WireGuard.
  • Chiave privata :Specifica la chiave privata del server VPN, che può essere trovata in /etc/wireguard/privatekey.
  • PostUp :Specifica le azioni da eseguire al momento di aprire l'interfaccia WireGuard.
  • PostDown :Specifica qualsiasi azione da eseguire al momento della chiusura dell'interfaccia WireGuard.

Quindi, apri l'interfaccia di WireGuard usando il comando wg-quick:

wg-quick up wg0

Dovresti ottenere il seguente output:

[#] ip link add tipo wg0 wireguard 
[#] wg setconf wg0 /dev/fd/63
[#] indirizzo IP -4 aggiungi 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] firewall-cmd --zone=public --add-port 51820/udp &&firewall-cmd --zone=public --add-masquerade
successo

Ora puoi controllare lo stato dell'interfaccia wg0 con il seguente comando:

wg show wg0

Dovresti vedere il seguente output:

interfaccia:wg0 chiave pubblica:6hxSg1eZR9n4oPYckJbzXcNbVwcjF5vNsSzUREsoBEY=chiave privata:(nascosta) porta di ascolto:51820ip a show wg05:wg0: mtu 1420 qdisc noqueue state UNKNOWN gruppo default qlen 1000 10.0.0.1/24 ambito globale wg0 valid_lft per sempre preferred_lft per sempre

Quindi, abilita l'interfaccia wg0 per l'avvio al riavvio del sistema con il seguente comando:

systemctl enable [email protected]

Passaggio 5:installazione e configurazione del client VPN Wireguard

Innanzitutto, installa i repository Epel ed Elrepo sulla macchina client con il seguente comando:

dnf install epel-release elrepo-release -y

Una volta installato, installa WireGuard eseguendo il seguente comando:

dnf install kmod-wireguard wireguard-tools

Una volta completata l'installazione, riavvia il sistema per caricare il modulo del kernel.

Quindi, genera le chiavi pubbliche e private con il seguente comando:

wg genkey | tee /etc/wireguard/chiave privata | wg pubkey | tee /etc/wireguard/publickey

Dovresti ottenere il seguente output:

NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=

Quindi, crea un nuovo file di configurazione wg0.conf con il seguente comando:

nano /etc/wireguard/wg0.conf

Aggiungi le seguenti righe:

[Interface]PrivateKey =NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=Indirizzo =10.0.0.2/24[Peer]PublicKey =Nnid+rqJBnsZ+SN68dILbmxMreKyFTlSjBI8bh4sbzU=Endpoint =your-server-ip:51820. 

Salva e chiudi il file quando hai finito.

Ecco le definizioni rilevanti per le righe precedenti:

  • Chiave privata :Specifica la chiave privata del cliente.
  • Indirizzo :Specificare l'indirizzo IP privato per l'interfaccia wg0.
  • Chiave pubblica :Specifica la chiave pubblica del server.
  • Endpoint :Specificare l'indirizzo IP del server.
  • IP consentiti :Specifica gli IP consentiti.

Passaggio 6:aggiungi il peer client al server

Successivamente, dovrai aggiungere la chiave pubblica e l'indirizzo IP del tuo client WireGuard nel tuo server VPN WireGuard.

Sulla macchina server, eseguire il comando seguente per aggiungere la chiave pubblica del client e l'indirizzo IP al server:

wg set peer wg0 NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=consentiti-ips 10.0.0.2

Puoi trovare la chiave client-pubblica in /etc/wireguard/publickey sul computer client.

Sulla macchina client, apri l'interfaccia wg0 con il seguente comando:

wg-quick up wg0

Dovresti vedere il seguente output:

[#] ip link add tipo wg0 wireguard 
[#] wg setconf wg0 /dev/fd/63
[#] indirizzo IP -4 aggiungi 10.0.0.2/24 dev wg0
[#] ip link set mtu 1420 up dev wg0

Sulla macchina server, puoi controllare lo stato del server WireGuard con il seguente comando:

wg

Dovresti ottenere il seguente output:

interface:wg0 public key:6hxSg1eZR9n4oPYckJbzXcNbVwcjF5vNsSzUREsoBEY=private key:(hidden) listening port:51820peer:NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo+f8tkRElQ=allowed ips:0.0.0.0/0 latest handshake:22 seconds ago transfer:126.15 KiB received, 123.12 KiB sent

Conclusione

Congratulazioni, hai configurato correttamente un server VPN WireGuard su CentOS 8 e creato un tunnel VPN tra due macchine CentOS 8. Ora puoi navigare sul web in modo anonimo e mantenere privati ​​i tuoi dati sul traffico. Inizia oggi stesso con un server privato virtuale di Atlantic.Net!


Linux
  1. Come configurare Wireguard VPN su CentOS 8

  2. Come configurare WireGuard VPN su Ubuntu 20.04

  3. Come configurare WireGuard VPN su Ubuntu (una guida passo passo)

  4. Come configurare VSFTPD su CentOS 8

  5. Come configurare Firewall con Firewalld su CentOS 8

Come installare Java su CentOS 8

Come configurare GitLab su CentOS 8

Come installare il filato su CentOS 8

Come installare Metabase su CentOS 8

Come installare Jenkins su CentOS 8

Come configurare WireGuard VPN su Linux