Dit artikel beschrijft gedetailleerd hoe u Wireguard VPN op uw server instelt. Het kan een virtuele of privéserver zijn - dat maakt niet zoveel uit.
Deze VPN Wireguard-installatiehandleiding is bedoeld voor gebruikers die niet veel ervaring hebben. Daarom worden alle stappen gedetailleerd beschreven en voorzien van schermafbeeldingen.
Het verkeer dat via onze tunnel gaat, wordt gecodeerd en op internet wordt het IP-adres van onze VPN-server weergegeven, niet het adres van de provider waarmee we toegang tot het netwerk krijgen.
Het is de bedoeling dat je al een VPS hebt. Zo niet, dan kun je bestellen het van ons.
We installeren het Ubuntu 22.04 besturingssysteem op onze server. Als u een server met een ander besturingssysteem hebt, kunt u deze eenvoudig opnieuw installeren volgens de instructies.
Dus, de server met Ubuntu 22.04 OS is klaar, nu maken we er verbinding mee via SSH. Als je dit protocol plotseling nog niet eerder bent tegengekomen, dan zal een artikel waarin dit proces gedetailleerd wordt beschreven je helpen. De tweede alinea van de dit artikel is voor Linux OS, de derde is voor Windows OS.
Wireguard-server instellen
Na een succesvolle verbinding zal ik een paar opdrachten schrijven en een beschrijving geven van wat ze opleveren om het proces te begrijpen:
We updaten de lijst met pakketten in de repositories
apt update
Vernieuwing van pakketten zelf
apt upgrade -y
Installeer het wireguard-pakket
apt install -y wireguard
Onze configuratie wordt opgeslagen in de map /etc/wireguard/. We moeten de map invoeren:
cd /etc/wireguard/
We hebben een publieke en private sleutel nodig voor onze server. We genereren deze nadat we de juiste rechten hebben ingesteld bij het aanmaken van bestanden en mappen met de opdrachten:
umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickey
Nu stellen we de rechten voor de privésleutel in:
chmod 600 privatekey
Voordat we het configuratiebestand aanmaken, hebben we de naam van onze netwerkinterface nodig. Om deze te ontdekken, gebruikt u de opdracht:
ip a
We hebben de interface nodig met het IP-adres dat wordt gebruikt voor de huidige verbinding. In jouw geval zal het waarschijnlijk ens3 heten, maar er kan ook een andere naam zijn.
We hebben ook een publieke en private sleutel nodig. Om ze weer te geven gebruik ik tail
tail privatekey publickey
Het ziet er als volgt uit:
Voor het bewerken kunt u elke Linux-teksteditor. Ik zal nano gebruiken. Om het te installeren moet je de opdracht uitvoeren:
apt install -y nano
We bewerken het configuratiebestand:
nano /etc/wireguard/wg0.conf
Note
om het bestand op te slaan gebruiken we de ctrl+o-toetscombinatie
voor afsluiten - ctrl+x
Het zou er zo uit moeten zien:
[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
In mijn geval ziet het er zo uit
Wij schakelen IP-doorsturing in
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
Start Wireguard-service:
systemctl start [email protected]
Als we willen dat de service start nadat de server opnieuw is opgestart, doen we het volgende:
systemctl enable [email protected]
Om de servicestatus te bekijken:
systemctl status [email protected]
De status zou actief moeten zijn zoals in de schermafbeelding:
Als u onze instructies zorgvuldig hebt gevolgd, beschikt u nu over alles wat u nodig hebt om het servergedeelte van VPN Wireguard te laten werken.
Wireguard-client instellen
Het enige dat nog rest is het configureren van het clientgedeelte. Bijvoorbeeld en voor de eenvoud genereer ik ook sleutels voor het clientgedeelte op de server. Maar voor beveiligingsdoeleinden zou het correcter zijn om sleutels aan de clientzijde te genereren. Ik gebruik commando's voor generatie:
wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickey
Ik zal ook sleutels genereren om de VPN op de telefoon te gebruiken:
wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey
Er moet worden opgemerkt dat dit allemaal moet worden gedaan terwijl u zich in de catalogus bevindt
/etc/wireguard/
U kunt ook in een andere catalogus uitvoeren. Maar voor de eenvoud voeren we de instructies uit in /etc/wireguard/
We gebruiken de ls-opdracht om de bestanden in een directory te vermelden. Ik kreeg het zo:
Laten we de publieke sleutels op het scherm weergeven. We hebben ze nodig om nodes aan ons netwerk toe te voegen:
tail mypc_publickey myphone_publickey
Voor mij ziet het er zo uit:
Laten we ons configuratiebestand bewerken:
nano wg0.conf
Voeg de volgende regels toe:
[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32
[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32
Het configuratiebestand ziet er nu als volgt uit:
Sla het bestand op en start onze service opnieuw:
systemctl restart wg-quick@wg0
Laten we controleren of alles succesvol is:
systemctl status wg-quick@wg0
De status moet actief zijn
Het opnieuw laden van de service is elke keer vereist na het bewerken van het serverconfiguratiebestand (wg0.conf)
Vervolgens maken we configuraties voor de clients (in mijn geval mijn pc en telefoon). Ik doe hetzelfde op de 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
In het veld Endpoint ziet u het IP-adres van de server. Dit is het IP-adres dat we gebruikten om verbinding te maken via SSH. Om de interfaces en adressen te zien, kunt u de opdracht ip a gebruiken.
Wireguard voor mobiel instellen
We maken een vergelijkbare configuratie voor onze telefoon. We hoeven alleen het adres te wijzigen. Voor de pc was het 10.30.0.2/32, en in de configuratie voor de telefoon maken we 10.30.0.3/32. Als we VPN op andere apparaten willen gebruiken, moeten we ook andere adressen toevoegen aan het veld Adres in de configuratiebestanden en het serverconfiguratiebestand wg0.conf, het veld AllowedIPs bij het maken van configuraties
In mijn geval zien de bestanden er zo uit:
mijnpc.conf
mijntelefoon.conf
Voor de verbinding installeren we de Wireguard-client https://www.wireguard.com/install/
In de Windows-applicatie voegen we een nieuwe tunnel toe en voeren we de configuratie in die is gemaakt in het bestand mypc.conf
We starten de tunnel en gaan naar de browser naar de website die ons adres weergeeft
Om eenvoudig een VPN aan uw telefoon toe te voegen, installeert u een programma voor het genereren van QR-codes op de server:
apt install -y qrencode
Voer de volgende stap uit in de configuratiemap:
qrencode -t ansiutf8 -r myphone.conf
Vervolgens openen we de Wireguard-app op de telefoon, drukken op + om een nieuwe tunnel te maken, selecteren scan de QR-code, scannen deze, zetten de VPN aan. Vervolgens controleren we of we het adres van onze server weergeven door een resource te gebruiken die het IP-adres van de uitvoer weergeeft.
Je hebt het gedaan!