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.
2. Postavite port na 22.
3. Prijavite se kao root.
4. Koristeći lozinku koju vam je vaš VPS provajder poslao e-poštom.
Rezultat bi trebao biti sljedeći:
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
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.
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.
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
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
Provjerite je li modul učitan
modprobe amneziawg
lsmod | grep amnezia
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.
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).
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.
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"
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.
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.
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.
Provjerite listu aktivnih peer-ova i saobraćaj po peer-u sa:
awg show
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:
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
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
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.