Baza znanja Jednostavna uputstva za rad sa uslugom Profitserver
glavni Baza znanja Vodič za implementaciju AmneziaWG servera

Vodič za implementaciju AmneziaWG servera


Sve više ljudi koristi vlastiti VPN umjesto da se oslanjaju na plaćene, gotove usluge: jeftinije je, bolje za privatnost i daje vam potpunu kontrolu nad serverom. Jedna od najefikasnijih opcija za regije s agresivnim blokiranjem mreže je AmneziaWG, protokol koji je razvio Amnezia projekt na bazi WireGuarda.

Klasični WireGuard je brz i pouzdan, ali ima fiksnu strukturu paketa i predvidljiv handshake, koji DPI (Deep Packet Inspection) sistemi mogu pouzdano identificirati i blokirati. AmneziaWG rješava ovaj problem: dodaje neželjene pakete običnoj WireGuard vezi, randomizira zaglavlja i mijenja veličinu polja handshake-a - tako da karakteristični potpis WireGuarda nestaje i promet se više ne ističe od običnog UDP prometa.

Već koristite klasični tunel i pitate se da li se isplati prebaciti? Uporedite ovo sa običnom OpenVPN/PPTP postavkom u odjeljku Podešavanje VPN servera na Linuxu: PPTP ili OpenVPN? ili sa standardnim WireGuardom (bez obfuskacije) u odjeljku Kako postaviti Wireguard VPN na vaš server.

Ovaj vodič ručno postavlja AmneziaWG server, bez Dockera ili web panela — najmanji mogući otisak na samom VPS-u, konfigurisan u potpunosti iz komandne linije. To je najlakša opcija i dobro funkcioniše na budžetskom VPS-u, jer mu nije potreban GUI, baza podataka niti obrnuti proxy. Primjer servera ispod koristi rezerviranu IP adresu — zamijenite je adresom vašeg VPS-a gdje god se pojavi.

Šta vam je potrebno: VPS sa Ubuntu 22.04/24.04 ili Debian 11/12 operativnim sistemom, root pristup i IP adresa vašeg VPS-a. Naziv domene nije potreban — AmneziaWG ne koristi certifikate, tako da nema ništa za obnavljanje niti DPI treba da označi kao TLS handshake.

Još nemate server? Pogledajte Kako naručiti server

Povezivanje sa serverom

Windows (PuTTY)

Otvorite PuTTY, unesite IP adresu vašeg VPS-a u polje Host Name, postavite port na 22 i prijavite se kao root koristeći lozinku koju vam je vaš VPS provajder poslao e-poštom.

IP adresa servera: vaša IP adresa

prijavite se kao: root

Lozinka: vaša lozinka

1. Otvorite PuTTY, unesite IP adresu vašeg VPS-a u polje Ime hosta.  

Standardni prozor za konfiguraciju PuTTY-a, prije nego što su uneseni bilo kakvi detalji veze.

2. Postavite port na 22. 

Sesija je popunjena VPS IP adresom i portom 22, sa sačuvanom sesijom "Moj VPS" odabranom i spremnom za klik na Otvori.

3. Prijavite se kao root. 

Novi prozor PuTTY terminala koji otvara SSH sesiju i traži korisničko ime za prijavu.

4. Koristeći lozinku koju vam je vaš VPS provajder poslao e-poštom.

Nakon što ukucate root, PuTTY će tražiti lozinku računa.

Rezultat bi trebao biti sljedeći:

Uspješna prijava: Debian poruka dana nakon čega slijedi root shell prompt (root@copywr:~#).

Za detaljan vodič za povezivanje putem PuTTY/SSH, pogledajte Kako se povezati na Linux server putem SSH-a.

Linux / macOS (terminal)

ssh root@YOUR_SERVER_IP

Sve dolje navedene naredbe se izvršavaju na serveru, u istoj SSH sesiji - koja pokriva odjeljke od 2 do 5, plus provjere na strani servera u odeljku 9. Odjeljci 6-8 (instaliranje i konfigurisanje VPN klijenta) se izvršavaju na vašem Windows/macOS/Linux uređaju, budući da je to uređaj na kojem VPN treba da se pokreće; svaki od tih odjeljaka eksplicitno navodi koje linije, ako ih ima, još uvijek dodiruju server.

Priprema servera

Ažurirajte sistem

Prije instaliranja bilo čega, osvježite listu paketa i ažurirajte instalirane pakete:

apt update -y && apt upgrade -y

Ako ovo nadograđuje kernel, ponovo pokrenite računar prije izgradnje AmneziaWG kernel modula u Odjeljku 3, u suprotnom DKMS može koristiti pogrešne zaglavlja kernela i modul se neće moći učitati. (Za podsjetnik na apt i kako Linux upravitelji paketa rade, pogledajte Linux upravitelji paketa .) Provjerite sa:

cat /var/run/reboot-required
Apt upgrade preuzima novi kernel paket (linux-image-6.1.0-52-amd64) tokom ažuriranja sistema. Završetak nadogradnje Apt-a: initramfs je regeneriran i pogođeni servisi su ponovo pokrenuti.

Omogućite IP prosljeđivanje

Ova postavka omogućava serveru da prosljeđuje klijentske pakete na internet — bez nje, tunel će se pojaviti, ali kroz njega neće prolaziti promet.

echo "net.ipv4.ip_forward = 1" > /etc/sysctl.d/00-amnezia.conf
sysctl --system

Prva naredba kreira namjensku konfiguracijsku datoteku; druga je primjenjuje bez ponovnog pokretanja servera.

sysctl --sistem primjenjuje svaku sysctl.d konfiguracijsku datoteku, potvrđujući da je net.ipv4.ip_forward = 1 sada aktivan.

Konfigurišite zaštitni zid (UFW)

Za više informacija o UFW pravilima, pogledajte Konfigurisanje zaštitnog zida na Linuxu

Otvorite dva porta koja su vam potrebna: 22/tcp za SSH (preskočite ovo pravilo i riskirate gubitak pristupa serveru) i 42666/udp, port na kojem će AmneziaWG osluškivati.

apt install ufw -y
ufw allow 22/tcp
ufw allow 42666/udp
ufw --force enable
ufw status

Oba pravila bi trebala biti prikazana kao DOZVOLJENA u ispisu statusa ufw-a.

UFW status koji potvrđuje da su 22/tcp i 42666/udp dozvoljeni i za IPv4 i za IPv6, s aktivnim zaštitnim zidom.

Instaliranje AmneziaWG-a

Debian ne podržava direktno PPA-ove u Ubuntu stilu, tako da se repozitorij mora dodati ručno, a ne pomoću add-apt-repository. Ovo funkcioniše na isti način na Ubuntuu.

Ručno dodajte repozitorij

Dodajte repozitorij
echo "deb [arch=amd64] https://ppa.launchpadcontent.net/amnezia/ppa/ubuntu jammy main" > /etc/apt/sources.list.d/amnezia.list

Dodajte GPG ključ za potpisivanje

Koristite Dearmored datoteku privjeska ključeva umjesto zastarjele naredbe apt-key i preuzmite pravi ključ za potpisivanje PPA-a (otisak prsta 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

Ažuriraj i instaliraj

apt update
apt install -y amneziawg
Izlaz naredbe Apt install -y amneziawg: DKMS gradi amneziawg kernel modul na osnovu pokrenutog kernela i završava instalaciju.

Provjerite je li modul učitan

modprobe amneziawg
lsmod | grep amnezia
Upotrebom naredbe Modprobe amneziawg nakon čega slijedi lsmod, potvrđujete da su modul amneziawg i njegove zavisnosti (curve25519, chacha20poly1305, itd.) učitani.

Generiranje konfiguracije servera i klijenta

Instalirajte pomoćne uslužne programe

Instalirajte zavisnost qrcode-a, zatim kreirajte namjenski radni direktorij i preuzmite skriptu community config-generator u njega:

apt install -y python3-qrcode
mkdir -p ~/awg && cd ~/awg
wget -O awgcfg.py \
  https://gist.githubusercontent.com/remittor/8c3d9ff293b2ba4b13c367cc1a69f9eb/raw/awgcfg.py

Ako python3-qrcode nije dostupan u repozitorijima vaše distribucije, vratite se na pip3 install qrcode --break-system-packages (zastavica je obavezna na Debianu 12+/Ubuntuu 24.04, koji blokiraju neupravljane pip instalacije prema zadanim postavkama). Nemojte pokretati obje instalacije - odaberite jednu.

Awgcfg.py je neslužbeni skript treće strane (od GitHub korisnika "remittor"), a ne službeni alat Amnezia projekta. Gornji URL ukazuje na sirovi sadržaj gista bez hash-a revizije, tako da uvijek povlači ono što je autor zadnji put objavio - tiho ažuriranje (ili brisanje gista) moglo bi prekinuti vašu postavku bez upozorenja. Gdje je to moguće, umjesto toga ga zakačite za određenu reviziju: otvorite historiju revizija gista, kopirajte hash commit-a za verziju koju ste testirali i koristite URL obrasca ovog vodiča. 

Generišite konfiguraciju servera

Kreirajte /etc/amnezia/amneziawg/awg0.conf. Možete ostaviti internu podmrežu i UDP port tunela na njihovim zadanim vrijednostima ili postaviti svoje vlastite:

python3 awgcfg.py --make /etc/amnezia/amneziawg/awg0.conf \
  -i 10.10.8.1/24 -p 42666

Zastavica -i postavlja internu mrežnu adresu i masku tunela; -p postavlja UDP port servera (isti onaj koji je otvoren u koraku 2.3).

Awgcfg.py --make kreiranje /etc/amnezia/amneziawg/awg0.conf i detekcija glavnog mrežnog interfejsa servera (ens3).

Kreirajte predložak konfiguracije klijenta

python3 awgcfg.py --create

Ovo sprema predložak u istu mapu iz koje se grade pojedinačne konfiguracije klijenata — on već uključuje javni ključ servera, njegovu IP adresu i parametre obfuskacije (Jc, Jmin, Jmax, S1, S2, H1–H4) koji razlikuju AmneziaWG od običnog WireGuarda.

Awgcfg.py --create pisanjem _defclient.config, predloška iz kojeg će se generirati nove konfiguracije klijenta.

Dodaj klijente

Kreirajte jedan unos po uređaju — naziv može biti bilo koji, npr. naziv uređaja:

python3 awgcfg.py -a "laptop"
python3 awgcfg.py -a "phone"
Awgcfg.py -a registruje klijente "laptop" i "phone", svakom od njih je dodijeljena vlastita IP adresa tunela (10.10.8.2/32 i 10.10.8.3/32).

Generirajte klijentske datoteke i QR kodove

python3 awgcfg.py -c -q

Mapa ~/awg će sada sadržavati datoteke poput laptop.conf i phone.conf, plus odgovarajuće PNG QR kodove koje možete skenirati direktno u mobilnu aplikaciju.

Ovaj skript zajednice ima poznatu manu: njegovo pokretanje može izbrisati druge .init/state datoteke koje ste možda smjestili u istu mapu. Neka ~/awg bude namijenjen samo AmneziaWG datotekama i napravite sigurnosnu kopiju ključeva servera ([Interface] PrivateKey u awg0.conf) negdje drugdje prije regeneriranja konfiguracija.
Sadržaj generirane datoteke laptop.conf: adresa klijenta, DNS, parametri maskiranja i odjeljak [Peer] koji upućuje na server.

Mapa ~/awg će sada sadržavati datoteke poput laptop.conf i phone.conf, plus odgovarajuće PNG QR kodove koje možete skenirati direktno u mobilnu aplikaciju.

Ovaj skript zajednice ima poznatu manu: njegovo pokretanje može izbrisati druge .init/state datoteke koje ste možda smjestili u istu mapu. Neka ~/awg bude namijenjen samo datotekama AmneziaWG i napravite sigurnosnu kopiju ključeva servera ([Interface] PrivateKey u awg0.conf) negdje drugdje prije regeneriranja konfiguracija.

Pokretanje servisa i omogućavanje automatskog pokretanja

Otvorite awg0 interfejs i omogućite mu automatsko pokretanje prilikom ponovnog pokretanja:

systemctl enable --now awg-quick@awg0
systemctl restart [email protected]
systemctl status [email protected]

Status bi trebao pokazivati ​​aktivno (izlaz) s omogućenom jedinicom prilikom pokretanja. Ako se čini da konzola "zaglavljuje" prikazujući logove, pritisnite Q za izlaz.

Status Systemctl-a koji potvrđuje da je awg-quick@awg0.service aktivan (izlaz) i omogućen, s naredbama za postavljanje ip/iptables interfejsa u zapisniku.

Provjerite listu aktivnih peer-ova i saobraćaj po peer-u sa:

awg show
AWG prikazuje parametre obfuskacije awg0 interfejsa i njegova dva konfigurisana peer-a (laptop i telefon), svaki sa svojom dozvoljenom IP adresom.

Povezivanje iz Windowsa

Sve u ovom odjeljku se dešava na vašem Windows računaru, ne preko SSH-a — VPN klijent mora biti instaliran na uređaju koji će zapravo koristiti tunel. Jedini korak koji se tiče servera je preuzimanje scp-a u verziji 6.2, a čak se i ta naredba kuca na vašem računaru, povlačeći datoteku koju je server već generirao u odjeljku 4.

Instalirajte klijenta

AmneziaWG ima namjensku Windows aplikaciju — njen interfejs odražava standardni WireGuard klijent, ali razumije parametre obfuskacije. Preuzmite instalacijski program sa službenog repozitorija projekta:

https://github.com/amnezia-vpn/amneziawg-windows-client/releases

Gornji link je stranica sa izdanjima održavanog Windows klijenta — preuzmite najnoviju .msi/.exe datoteku odatle. Ovo je stranica koju treba otvoriti u vašem pregledniku, a ne naredba koju treba zalijepiti u terminal.

Pokrenite instalacijski program i prođite kroz čarobnjaka za podešavanje; zadane postavke nije potrebno mijenjati.

Uvezite konfiguraciju

Kopirajte konfiguracijsku datoteku klijenta sa servera na vaš računar — najlakši način je scp, pokrenite ga u PowerShellu na vašem računaru, a ne na serveru:

Prazan Windows PowerShell prompt na klijentskom računaru, spreman za pokretanje scp naredbe ispod.
scp root@YOUR_SERVER_IP:~/awg/laptop.conf .

U aplikaciji AmneziaWG kliknite na "Uvezi tunel(e) iz datoteke", odaberite laptop.conf i uključite prekidač pored novog tunela.

Povezivanje iz macOS-a

Sve ovdje se dešava na vašem Macu, ne preko SSH-a. scp linija ispod se kuca u Macovom terminalu, povlačeći konfiguraciju koju je server već generirao u odjeljku 4 — ne pokreće se unutar vaše root SSH sesije na VPS-u.

Postoje dvije podržane opcije:

  • AmneziaWG (Mac App Store): lagani klijent, radi na macOS 12 i novijim verzijama. Potražite "AmneziaWG" u App Storeu, instalirajte ga, zatim koristite "Uvezi tunel(e) iz datoteke" i odaberite svoju .conf datoteku - isti tijek rada kao i Windows klijent.
  • AmneziaVPN (puna aplikacija, macOS 14+): preuzmite .pkg datoteku sa github.com/amnezia-vpn/amnezia-client/releases/latest ako biste radije koristili Amnezia aplikaciju sa svim funkcijama umjesto laganog klijenta koji je dostupan samo za AmneziaWG.

Prvo kopirajte konfiguraciju klijenta ako je potrebno, isto kao u koraku 6.2:

scp root@YOUR_SERVER_IP:~/awg/laptop.conf .

Povezivanje iz Linuxa

Obje opcije u nastavku rade na vašem Linux desktop/laptop računaru, tj. na zasebnoj SSH sesiji (ili lokalnoj ljusci) na toj mašini - ne na root SSH sesiji na VPS-u iz Odjeljka 1. Komande izgledaju identično onima na strani servera jer se isti paket amneziawg-tools koristi na oba kraja, ali njihovo pokretanje ovdje instalira i pokreće klijentski tunel na vašoj mašini, a ne na serveru.

Na Linux desktop računaru ili laptopu imate dvije opcije:

  • GUI: instalirajte kompletnu AmneziaVPN desktop klijentsku verziju sa github.com/amnezia-vpn/amnezia-client/releases, a zatim uvezite .conf datoteku na isti način kao na Windowsu/macOS-u.
  • CLI, koristeći iste amneziawg-alate koji se koriste na serveru (awg / awg-quick):
apt install -y amneziawg
cp laptop.conf /etc/amnezia/amneziawg/awg0.conf
awg-quick up awg0

Pokrenite ovaj kod za prekid veze.

awg-quick down awg0 

Da biste tunel automatski pokrenuli prilikom prijave, omogućite ga kao uslugu:

systemctl enable --now awg-quick@awg0

Provjera veze

Sa aktivnim tunelom iz Odjeljka 6, 7 ili 8, vratite se na svoj uređaj (ne SSH sesiju) i otvorite bilo koji alat za provjeru "koja je moja IP adresa" u pregledniku - prikazana adresa treba da se podudara sa IP adresom vašeg VPS-a. Da biste provjerili iz SSH sesije, pokrenite awg show na serveru i potvrdite da klijentov peer pokazuje nedavno rukovanje i promet različit od nule.

Referenca:

polje

vrijednost

Adresa

VAŠA_IP_ADRESA_TUNELA (adresa klijenta unutar tunela, npr. 10.10.8.2/32 — dodjeljuje se automatski kada je klijent dodat u koraku 4.4)

Krajnja tačka

YOUR_SERVER_IP:42666 (Vanjska IP adresa servera i UDP port na koji se klijent povezuje.)

DNS

8.8.8.8

Jc / Jmin / Jmax

broj i veličina "neželjenih" paketa poslanih prije rukovanja - mogu se razlikovati između servera i klijenta bez prekida veze

S1/S2

veličina polja za popunjavanje rukovanja — mora se podudarati bajt po bajt između servera i svakog klijenta

H1 – H4

Zaglavlja paketnog tipa koja maskiraju protokol kao običan promet — također se moraju potpuno podudarati i moraju biti jedinstvena jedna od druge

Samo S1/S2 i H1–H4 moraju biti identični na oba kraja tunela; Jc, Jmin i Jmax se isključivo odnose na to kako svaka strana dopunjuje svoj odlazni neželjeni promet, tako da se vrijednosti klijenta i servera mogu legitimno razlikovati, kao što je to slučaj u gornjem primjeru.

zaključak

Slijeđenjem ovog vodiča vaš VPS će pokretati vlastiti AmneziaWG server: protokol kompatibilan s WireGuardom s obfuskacijom prometa koji je DPI sistemima znatno teže razlikovati od običnog UDP prometa nego obični WireGuard. Usluga se pokreće kao sistemska jedinica awg-quick@awg0 i preživi ponovno pokretanje servera bez ikakve vaše akcije.

Dobivene .conf datoteke i QR kodovi u ~/awg direktoriju ne rade samo s Windows klijentom, već se mogu uvesti i u aplikacije AmneziaWG ili Amnezia za Android, iOS, macOS i Linux, kao i u Keenetic i OpenWrt rutere.

Dodajte nove klijente u bilo kojem trenutku ponavljanjem koraka 4.4–4.5 (python3 awgcfg.py -a "name", zatim awgcfg.py -c -q) i ponovnim pokretanjem interfejsa sa systemctl restart [email protected].

Nekoliko navika koje vrijedi održavati kada server radi:

  • Održavajte sistem ažuriranim. Povremeno ponovo pokrenite apt update -y && apt upgrade -y i ponovo pokrenite računar nakon nadogradnje kernela kako bi DKMS ponovo izgradio amneziawg modul za novi kernel.
  • Napravite sigurnosnu kopiju ~/awg. Sadrži privatni ključ svakog klijenta i vlastiti par ključeva servera u awg0.conf; gubitak datoteke znači ponovno generiranje konfiguracija za svaki uređaj.
  • Odmah poništite izgubljene uređaje. Uklonite odgovarajući blok [Peer] iz /etc/amnezia/amneziawg/awg0.conf i pokrenite systemctl restart. [email zaštićen].

Ako se veza ne uspostavi, provjerite redom:

  • status usluge (status systemctl [email zaštićen])
  • pravila zaštitnog zida (status ufw — port 42666/udp mora biti otvoren)
  • status DKMS-a/modula ako se interfejs neće ni pokrenuti (dkms status, lsmod | grep amnezia)
  • lista aktivnih peerova na serveru (awg show)
  • da konfiguracija klijenta ukazuje na ispravnu IP adresu vanjskog servera

Upoređujete li AmneziaWG s drugim opcijama prije nego što se odlučite? Pogledajte Podešavanje VPN servera na Linuxu: PPTP ili OpenVPN? i Kako postaviti Wireguard VPN na vaš server . Ako vam je potreban samo jednostavan proxy, a ne puni VPN tunel, konfiguracija 3proxy na CentOS/ArchLinuxu je lakša alternativa. Za opće ojačavanje servera nakon što je VPN aktivan, pogledajte Linux korisnici: Upravljanje i dozvole.

❮ Prethodni članak Postavljanje Hysteria2 i TUIC-a
Sljedeći članak ❯ Xray VLESS vodič za stvarnost: VPS, Windows, Mac, Android, iPhone

Pitajte nas za VPS

Uvek smo spremni da odgovorimo na vaša pitanja u bilo koje doba dana i noći.