Al hoe meer mense gebruik hul eie VPN in plaas daarvan om op betaalde, klaargemaakte dienste staat te maak: dit is goedkoper, beter vir privaatheid en gee jou volle beheer oor die bediener. Een van die mees effektiewe opsies vir streke met aggressiewe netwerkblokkering is AmneziaWG, 'n protokol wat deur die Amnezia-projek bo-op WireGuard ontwikkel is.
Klassieke WireGuard is vinnig en betroubaar, maar dit het 'n vaste pakkiestruktuur en 'n voorspelbare handdruk, wat DPI (Deep Packet Inspection) stelsels betroubaar kan vingerafdruk en blokkeer. AmneziaWG los dit op: dit voeg rommelpakkies by die gewone WireGuard-verbinding, maak opskrifte lukraak en verander die grootte van handdrukvelde - sodat WireGuard se kenmerkende handtekening verdwyn en die verkeer nie meer uitstaan van gewone UDP-verkeer nie.
Gebruik jy reeds 'n klassieke tonnel en wonder of dit die moeite werd is om oor te skakel? Vergelyk dit met 'n gewone OpenVPN/PPTP-opstelling in VPN-bedieneropstelling op Linux: PPTP of OpenVPN?, of met gewone WireGuard (geen verdoeseling nie) in Hoe om Wireguard VPN op jou bediener op te stel.
Hierdie gids stel 'n AmneziaWG-bediener met die hand op, sonder Docker of 'n webpaneel — die kleinste moontlike voetspoor op die VPS self, volledig vanaf die opdragreël gekonfigureer. Dit is die ligste opsie en werk goed op 'n begrotingsvriendelike VPS, aangesien dit geen GUI, databasis en omgekeerde instaanbediener benodig nie. Die voorbeeldbediener hieronder gebruik 'n plekhouer-IP-adres — vervang dit met jou eie VPS se adres waar dit ook al verskyn.
Wat jy nodig het: 'n VPS wat Ubuntu 22.04/24.04 of Debian 11/12 gebruik, worteltoegang, en jou VPS se IP-adres. 'n Domeinnaam is nie nodig nie — AmneziaWG gebruik nie sertifikate nie, so daar is niks om te hernu nie en niks vir DPI om as 'n TLS-handdruk te merk nie.
Het jy nog nie 'n bediener nie? Sien Hoe om 'n bediener te bestel
Koppel aan die bediener
Windows (PuTTY)
Maak PuTTY oop, voer jou VPS IP-adres in die Gasheernaam-veld in, stel die poort op 22 en meld aan as root met die wagwoord wat jou VPS-verskaffer vir jou per e-pos gestuur het.
Bediener IP-adres: jou IP-adres
teken aan as: wortel
Wagwoord: jou wagwoord
1. Maak PuTTY oop, voer jou VPS IP-adres in die Gasheernaam-veld in.
2. Stel die poort op 22.
3. Voer aanmelding as root in.
4. Gebruik die wagwoord wat jou VPS-verskaffer vir jou per e-pos gestuur het.
Die resultaat behoort soos volg te wees:
Vir 'n gedetailleerde stap-vir-stap-deurloop van verbinding via PuTTY/SSH, sien Hoe om aan 'n Linux-bediener te koppel via SSH
Linux / macOS (terminaal)
ssh root@YOUR_SERVER_IP
Alle bevele hieronder word op die bediener uitgevoer, in dieselfde SSH-sessie – wat Afdelings 2 tot 5 dek, plus die bedienerkant-kontroles in Afdeling 9. Afdelings 6–8 (installering en konfigurasie van die VPN-kliënt) vind eerder op jou eie Windows/macOS/Linux-toestel plaas, aangesien dit die toestel is waarop die VPN moet loop; elkeen van daardie afdelings sê eksplisiet watter lyne, indien enige, steeds die bediener raak.
Berei die bediener voor
Dateer die stelsel op
Voordat u enigiets installeer, verfris die pakketlys en gradeer geïnstalleerde pakkette op:
apt update -y && apt upgrade -y
Indien dit die kern opgradeer, herbegin voordat die AmneziaWG-kernmodule in Afdeling 3 gebou word, anders kan DKMS teen die verkeerde kernkopskrifte bou en die module sal nie laai nie. (Vir 'n opknapping oor apt en hoe Linux-pakketbestuurders werk, sien Linux-pakketbestuurders .) Gaan na:
cat /var/run/reboot-required
Aktiveer IP-aanstuur
Hierdie instelling laat die bediener toe om kliënte se pakkies na die internet aan te stuur – daarsonder sal die tonnel oopgaan, maar geen verkeer sal daardeur gaan nie.
echo "net.ipv4.ip_forward = 1" > /etc/sysctl.d/00-amnezia.conf
sysctl --system
Die eerste opdrag skep 'n toegewyde konfigurasielêer; die tweede pas dit toe sonder om die bediener te herbegin.
Konfigureer die firewall (UFW)
Vir meer inligting oor UFW-reëls, sien Konfigurasie van Firewall op Linux
Maak die twee poorte oop wat jy benodig: 22/tcp vir SSH (slaan hierdie reël oor en jy loop die risiko om toegang tot die bediener te verloor) en 42666/udp, die poort waarop AmneziaWG sal luister.
apt install ufw -y
ufw allow 22/tcp
ufw allow 42666/udp
ufw --force enable
ufw status
Beide reëls moet as TOEGELAAT in die ufw-statusuitvoer wys.
Installeer AmneziaWG
Debian ondersteun nie Ubuntu-styl PPA's direk nie, dus moet die repository met die hand bygevoeg word eerder as met add-apt-repository. Dit werk op dieselfde manier op Ubuntu.
Voeg die bewaarplek handmatig by
echo "deb [arch=amd64] https://ppa.launchpadcontent.net/amnezia/ppa/ubuntu jammy main" > /etc/apt/sources.list.d/amnezia.list
Voeg die GPG-ondertekeningsleutel by
Gebruik 'n verouderde sleutelringlêer eerder as die verouderde apt-key-opdrag, en haal die PPA se regte ondertekeningsleutel (vingerafdruk 75C9DD72C799870E310542E24166F2C257290828):
apt install -y gnupg2
gpg --keyserver keyserver.ubuntu.com --recv-keys 57290828
gpg --export 57290828 | tee /usr/share/keyrings/amnezia.gpg > /dev/null
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/amnezia.gpg] https://ppa.launchpadcontent.net/amnezia/ppa/ubuntu jammy main" > /etc/apt/sources.list.d/amnezia.list
Opdateer en installeer
apt update
apt install -y amneziawg
Verifieer die module wat gelaai is
modprobe amneziawg
lsmod | grep amnezia
Genereer bediener- en kliëntkonfigurasie
Installeer hulpprogramme
Installeer die qrcode-afhanklikheid, skep dan 'n toegewyde werkgids en laai die gemeenskapskonfigurasie-generator-skrip daarin af:
apt install -y python3-qrcode
mkdir -p ~/awg && cd ~/awg
wget -O awgcfg.py \
https://gist.githubusercontent.com/remittor/8c3d9ff293b2ba4b13c367cc1a69f9eb/raw/awgcfg.py
Indien python3-qrcode nie op jou distro se repos beskikbaar is nie, val terug na pip3 install qrcode --break-system-packages (die vlag is vereis op Debian 12+/Ubuntu 24.04, wat onbeheerde pip-installasies by verstek blokkeer). Moenie albei installasies uitvoer nie — kies een.
Genereer die bedienerkonfigurasie
Skep /etc/amnezia/amneziawg/awg0.conf. Jy kan die tonnel se interne subnet en UDP-poort op hul verstekwaardes laat of jou eie stel:
python3 awgcfg.py --make /etc/amnezia/amneziawg/awg0.conf \
-i 10.10.8.1/24 -p 42666
Die -i-vlag stel die tonnel se interne netwerkadres en masker; -p stel die bediener se UDP-poort (dieselfde een wat in stap 2.3 oopgemaak is).
Skep die kliënt-konfigurasie-sjabloon
python3 awgcfg.py --create
Dit stoor 'n sjabloon in dieselfde vouer waaruit individuele kliëntkonfigurasies gebou word - dit bevat reeds die bediener se publieke sleutel, sy IP-adres en die verduisteringsparameters (Jc, Jmin, Jmax, S1, S2, H1-H4) wat AmneziaWG van gewone WireGuard onderskei.
Voeg kliënte by
Skep een inskrywing per toestel — die naam kan enigiets wees, bv. die toestelnaam:
python3 awgcfg.py -a "laptop"
python3 awgcfg.py -a "phone"
Genereer kliëntlêers en QR-kodes
python3 awgcfg.py -c -q
Die ~/awg-lêergids sal nou lêers soos laptop.conf en phone.conf bevat, plus ooreenstemmende PNG QR-kodes wat jy direk in 'n mobiele toepassing kan skandeer.
Die ~/awg-lêergids sal nou lêers soos laptop.conf en phone.conf bevat, plus ooreenstemmende PNG QR-kodes wat jy direk in 'n mobiele toepassing kan skandeer.
Begin die diens en aktiveer outomatiese begin
Maak die awg0-koppelvlak oop en aktiveer dit om outomaties te begin met herlaai:
systemctl enable --now awg-quick@awg0
systemctl restart [email protected]
systemctl status [email protected]
Die status behoort aktief (uitgesluit) te wees met die eenheid geaktiveer tydens opstart. Indien die konsole blykbaar "hang" terwyl logs vertoon word, druk Q om te sluit.
Gaan die lys van aktiewe eweknieë en per-eweknie-verkeer na met:
awg show
Koppel vanaf Windows
Alles in hierdie afdeling gebeur op jou Windows-rekenaar, nie oor SSH nie – die VPN-kliënt moet op die toestel geïnstalleer word wat die tonnel eintlik sal gebruik. Die enigste stap wat die bediener raak, is die scp-aflaai in 6.2, en selfs daardie opdrag word op jou rekenaar getik, wat 'n lêer ophaal wat die bediener reeds in Afdeling 4 gegenereer het.
Installeer die kliënt
AmneziaWG het 'n toegewyde Windows-toepassing — die koppelvlak weerspieël die standaard WireGuard-kliënt, maar dit verstaan die verduisteringsparameters. Laai die installeerder af vanaf die projek se amptelike bewaarplek:
https://github.com/amnezia-vpn/amneziawg-windows-client/releases
Die skakel hierbo is die onderhoude Windows-kliënt se vrystellingsbladsy — laai die nuutste .msi/.exe-bate van daar af af. Hierdie is 'n bladsy om in jou blaaier oop te maak, nie 'n opdrag om in 'n terminaal te plak nie.
Begin die installeerder en volg die opstelassistent; die verstekwaardes hoef nie verander te word nie.
Voer die opset in
Kopieer die kliëntkonfigurasielêer van die bediener na jou rekenaar — die maklikste manier is scp, voer dit in PowerShell op jou rekenaar uit, nie die bediener nie:
scp root@YOUR_SERVER_IP:~/awg/laptop.conf .
In die AmneziaWG-app, klik "Voer tonnel(s) vanaf lêer in", kies laptop.conf en skakel die skakelaar langs die nuwe tonnel aan.
Koppel vanaf macOS
Twee ondersteunde opsies bestaan:
- AmneziaWG (Mac App Store): 'n liggewig kliënt, werk op macOS 12 en later. Soek "AmneziaWG" in die App Store, installeer dit, gebruik dan "Voer tonnel(s) van lêer in" en kies jou .conf-lêer — dieselfde werkvloei as die Windows-kliënt.
- AmneziaVPN (volledige toepassing, macOS 14+): laai die .pkg af van github.com/amnezia-vpn/amnezia-client/releases/latest as jy eerder die volledige Amnezia-toepassing wil gebruik in plaas van die liggewig AmneziaWG-enigste kliënt.
Kopieer die kliëntkonfigurasie eers oor indien nodig, dieselfde as in stap 6.2:
scp root@YOUR_SERVER_IP:~/awg/laptop.conf .
Koppel vanaf Linux
Op 'n Linux-rekenaar of skootrekenaar het jy twee opsies:
- GUI: installeer die volledige AmneziaVPN-lessenaarkliënt vanaf github.com/amnezia-vpn/amnezia-client/releases, en voer dan die .conf-lêer op dieselfde manier in as op Windows/macOS.
- CLI, met behulp van dieselfde amneziawg-gereedskap wat op die bediener gebruik word (awg / awg-quick):
apt install -y amneziawg
cp laptop.conf /etc/amnezia/amneziawg/awg0.conf
awg-quick up awg0
Voer hierdie kode uit om te ontkoppel.
awg-quick down awg0
Om die tonnel outomaties by aanmelding te aktiveer, aktiveer dit as 'n diens:
systemctl enable --now awg-quick@awg0
Verifieer die verbinding
Met die tonnel aktief vanaf Afdeling 6, 7 of 8, gaan terug na jou eie toestel (nie die SSH-sessie nie) en maak enige "wat is my IP"-kontroleerder in 'n blaaier oop - die adres wat getoon word, moet ooreenstem met jou VPS se IP-adres. Om eerder van binne die SSH-sessie te verifieer, voer awg show op die bediener uit en bevestig dat die kliënt se eweknie 'n onlangse handdruk en nie-nul verkeer toon.
Verwysing:
|
Veld |
waarde |
|
Adres |
JOU_TONNEL_IP (die kliënt se adres binne die tonnel, bv. 10.10.8.2/32 — outomaties toegeken toe die kliënt in stap 4.4 bygevoeg is) |
|
eindpunt |
JOU_BEDIENER_IP:42666 (Die eksterne IP-adres van die bediener en die UDP-poort waaraan die kliënt koppel.) |
|
DNS |
8.8.8.8 |
|
Jc / Jmin / Jmax |
aantal en grootte van "rommel"-pakkette wat voor die handdruk gestuur word — kan tussen bediener en kliënt verskil sonder om die verbinding te verbreek |
|
S1 / S2 |
grootte van handskud-opvullingsvelde — moet byte-vir-byte tussen bediener en elke kliënt ooreenstem |
|
H1 – H4 |
pakkie-tipe opskrifte wat die protokol as gewone verkeer masker — moet ook presies ooreenstem en uniek van mekaar wees |
Slegs S1/S2 en H1–H4 hoef identies te wees aan beide kante van die tonnel; Jc, Jmin en Jmax gaan suiwer oor hoe elke kant sy eie uitgaande rommelverkeer opvul, sodat die kliënt- en bedienerwaardes wettiglik kan verskil, soos in die voorbeeld hierbo.
Gevolgtrekking
Deur hierdie gids te volg, laat jou VPS sy eie AmneziaWG-bediener loop: 'n WireGuard-versoenbare protokol met verkeersverduistering wat merkbaar moeiliker is vir DPI-stelsels om van gewone UDP-verkeer te onderskei as gewone WireGuard. Die diens loop as die systemd-eenheid awg-quick@awg0 en oorleef 'n bedienerherlaai sonder enige aksie van jou kant.
Die gevolglike .conf-lêers en QR-kodes in ~/awg werk nie net met die Windows-kliënt nie, maar kan ook ingevoer word in die AmneziaWG- of Amnezia-programme vir Android, iOS, macOS en Linux, sowel as Keenetic- en OpenWrt-routers.
Voeg nuwe kliënte te eniger tyd by deur stappe 4.4–4.5 te herhaal (python3 awgcfg.py -a "naam", dan awgcfg.py -c -q) en die koppelvlak te herbegin met systemctl restart [email protected].
'n Paar gewoontes wat die moeite werd is om te handhaaf sodra die bediener aan die gang is:
- Hou die stelsel opgedateer. Herlaai apt update -y && apt upgrade -y gereeld, en herbegin na kernopgraderings sodat DKMS die amneziawg-module teen die nuwe kern herbou.
- Rugsteun ~/awg. Dit bevat elke kliënt se privaat sleutel en die bediener se eie sleutelpaar in awg0.conf; as jy dit verloor, beteken dit dat jy konfigurasies vir elke toestel hergenereer.
- Herroep verlore toestelle dadelik. Verwyder die ooreenstemmende [Peer]-blok van /etc/amnezia/amneziawg/awg0.conf en voer systemctl restart uit. [e-pos beskerm].
Indien die verbinding nie tot stand kom nie, kyk in volgorde:
- die diensstatus (systemctl status [e-pos beskerm])
- die firewallreëls (ufw-status — poort 42666/udp moet oop wees)
- die DKMS/module-status as die koppelvlak nie eers wil begin nie (dkms-status, lsmod | grep amnezia)
- die lys van aktiewe eweknieë op die bediener (awg show)
- dat die kliëntkonfigurasie na die korrekte eksterne bediener-IP-adres wys
Vergelyk AmneziaWG met ander opsies voordat u 'n verbintenis aangaan? Sien VPN-bedieneropstelling op Linux: PPTP of OpenVPN? en Hoe om Wireguard VPN op u bediener op te stel . As u slegs 'n eenvoudige instaanbediener benodig eerder as 'n volledige VPN-tonnel, is 3proxy-konfigurasie op CentOS/ArchLinux 'n ligter alternatief. Vir algemene bedienerverharding sodra die VPN aktief is, sien Linux-gebruikers: Bestuur en Toestemmings.