Denne artikkelen vil beskrive i detalj hvordan du setter opp Wireguard VPN på serveren din. Det kan være en virtuell eller privat server - det betyr ikke så mye.
Denne VPN Wireguard-oppsettveiledningen er designet for brukere som ikke har mye erfaring, så alle trinnene vil være ganske detaljerte og etterfulgt av skjermbilder.
Trafikk som passerer gjennom tunnelen vår vil være kryptert, og Internett vil vise IP-adressen til VPN-serveren vår, ikke adressen til leverandøren vi får tilgang til nettverket gjennom.
Det antas at du allerede har en VPS. Hvis ikke, kan du bestille den fra oss.
Vi installerer operativsystemet Ubuntu 22.04 på serveren vår. Hvis du har en server med et annet operativsystem, kan du enkelt installere det på nytt ved å følge instruksjonene.
Så, serveren med Ubuntu 22.04 OS er klar, nå kobler vi til den via SSH. Hvis du plutselig ikke har kommet over denne protokollen før, vil en artikkel som beskriver denne prosessen i detalj hjelpe deg. Det andre avsnittet i artikkelen er for Linux OS, det tredje er for Windows OS.
Sett opp Wireguard-serveren
Etter en vellykket tilkobling vil jeg skrive noen kommandoer og en beskrivelse av hva de produserer for å forstå prosessen:
Vi oppdaterer listen over pakker i depotene
apt update
Fornyelse av pakker selv
apt upgrade -y
Installer wireguard-pakken
apt install -y wireguard
Konfigurasjonen vår vil bli lagret i katalogen /etc/wireguard/, vi må gå inn i katalogen:
cd /etc/wireguard/
Vi trenger en offentlig og privat nøkkel for serveren vår. Vi vil generere dem etter å ha satt de riktige rettighetene når vi lager filer og kataloger med kommandoer:
umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickey
Nå setter vi rettighetene for den private nøkkelen:
chmod 600 privatekey
Før vi oppretter konfigurasjonsfilen, trenger vi navnet på nettverksgrensesnittet vårt. For å oppdage det, bruk kommandoen:
ip a
Vi trenger grensesnittet med IP-adressen som brukes for gjeldende tilkobling. Den vil nok hete ens3 i ditt tilfelle, men det kan være et annet navn.
Vi vil også trenge en offentlig og privat nøkkel. For å vise dem bruker jeg hale
tail privatekey publickey
Det ser ut som dette:
For redigering kan du bruke hvilken som helst Linux-teksteditor . Jeg bruker nano. For å installere den må du kjøre kommandoen:
apt install -y nano
Vi redigerer konfigurasjonsfilen:
nano /etc/wireguard/wg0.conf
Merknader
for å lagre filen bruker vi ctrl+o-knappkombinasjonen
for exit - ctrl+x
Det skal se slik ut:
[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
I mitt tilfelle ser det slik ut
Vi slår på ip-videresending
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
Start wireguard-tjenesten:
systemctl start [email protected]
Hvis vi vil at tjenesten skal starte etter at serveren er startet på nytt, gjør vi følgende:
systemctl enable [email protected]
For å se tjenestestatus:
systemctl status [email protected]
Statusen skal være aktiv som på skjermbildet:
Hvis du fulgte instruksjonene våre nøye, har du på dette stadiet alt du trenger for å få serverdelen til VPN Wireguard til å fungere.
Sette opp Wireguard-klient
Det eneste som gjenstår er å konfigurere klientdelen. For eksempel og enkelhet vil jeg generere nøkler for klientdelen også på serveren. Men av sikkerhetshensyn ville det være mer riktig å generere nøkler på klientsiden. Jeg bruker kommandoer for generering:
wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickey
Jeg vil også generere nøkler for å bruke VPN på telefonen:
wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey
Det skal bemerkes at alt dette må gjøres mens det er i katalogen
/etc/wireguard/
Du kan også kjøre i en annen katalog. Men for enkelhets skyld utfører vi instruksjonene i /etc/wireguard/
Vi bruker ls-kommandoen til å liste filene i en katalog. Jeg fikk det slik:
La oss vise de offentlige nøklene på skjermen. Vi trenger dem for å legge til noder i nettverket vårt:
tail mypc_publickey myphone_publickey
For meg ser det slik ut:
La oss redigere konfigurasjonsfilen vår:
nano wg0.conf
Legg til følgende linjer:
[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32
[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32
Nå ser konfigurasjonsfilen slik ut:
Lagre filen og start tjenesten vår på nytt:
systemctl restart wg-quick@wg0
La oss sjekke at alt var vellykket:
systemctl status wg-quick@wg0
Statusen må være aktiv
Å laste inn tjenesten på nytt er nødvendig hver gang etter redigering av serverkonfigurasjonsfilen (wg0.conf)
Deretter vil vi lage konfigurasjoner for klienter (i mitt tilfelle, min PC og telefon). Jeg vil gjøre det samme på serveren.
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
I Endpoint-feltet kan du se serverens IP-adresse – dette er IP-adressen som vi brukte til å koble til via SSH. For å se grensesnittene og adressene kan du bruke ip a-kommandoen.
Sett opp Wireguard for mobil
Vi lager en lignende konfigurasjon for telefonen vår. Må bare endre adressen. For PC var det 10.30.0.2/32, og i konfigurasjonen for telefonen vil vi lage 10.30.0.3/32. Også, hvis vi ønsker å bruke VPN på andre enheter, bør vi legge til andre adresser i adressefeltet i konfigurasjonsfilene og wg0.conf serverkonfigurasjonsfilen, feltet AllowedIPs når du oppretter konfigurasjoner
Filer ser slik ut i mitt tilfelle:
mypc.conf
myphone.conf
For tilkobling installerer vi Wireguard-klienten https://www.wireguard.com/install/
I Windows-applikasjonen legger vi til en ny tunnel og legger inn konfigurasjonen som er opprettet i mypc.conf-filen
Vi starter tunnelen og går til nettleseren til nettstedet som viser adressen vår
For å enkelt legge til en VPN til telefonen din, installer et program for å generere qr-koder på serveren:
apt install -y qrencode
Å være i konfigurasjonskatalogen, gjør følgende trinn:
qrencode -t ansiutf8 -r myphone.conf
Så går vi inn i Wireguard-appen på telefonen, trykker på + for å lage en ny tunnel, velg skann QR-koden, skann den, slå på VPN. Deretter vil vi sjekke at vi viser adressen til serveren vår ved å bruke en ressurs som viser utdata-IP-adressen.
Du gjorde det!