Znalostnej bázy Jednoduchý návod na prácu so službou Profitserver
Hlavná Znalostnej bázy Sprievodca nasadením servera AmneziaWG

Sprievodca nasadením servera AmneziaWG


Čoraz viac ľudí si namiesto platených, hotových služieb prevádzkuje vlastnú VPN: je to lacnejšie, lepšie z hľadiska súkromia a dáva vám plnú kontrolu nad serverom. Jednou z najúčinnejších možností pre regióny s agresívnym blokovaním siete je AmneziaWG, protokol vyvinutý projektom Amnezia na báze WireGuard.

Klasický WireGuard je rýchly a spoľahlivý, ale má pevnú štruktúru paketov a predvídateľné handshake, ktoré systémy DPI (Deep Packet Inspection) dokážu spoľahlivo odtlačiť a zablokovať. AmneziaWG to rieši: pridáva nepotrebné pakety do bežného pripojenia WireGuard, náhodne upravuje hlavičky a mení veľkosť polí handshake – charakteristický podpis WireGuardu tak zmizne a prevádzka sa už neodlišuje od bežnej UDP prevádzky.

Už používate klasický tunel a rozmýšľate, či sa oplatí prejsť na iný? Porovnajte to s obyčajným nastavením OpenVPN/PPTP v článku Nastavenie VPN servera v systéme Linux: PPTP alebo OpenVPN? alebo s jednoduchým nastavením WireGuard (bez obfuskacie) v článku Ako nastaviť Wireguard VPN na vašom serveri.

Táto príručka nastavuje server AmneziaWG manuálne, bez Dockeru alebo webového panela – čo najmenšia možná záťaž na samotnom VPS, konfigurovaná výlučne z príkazového riadku. Je to najľahšia možnosť a funguje dobre na lacnom VPS, pretože nepotrebuje žiadne grafické rozhranie, žiadnu databázu ani reverznú proxy. Uvedený príklad servera používa zástupnú IP adresu – nahraďte ju adresou vášho vlastného VPS všade, kde sa zobrazí.

Čo budete potrebovať: VPS s Ubuntu 22.04/24.04 alebo Debian 11/12, root prístup a IP adresu vášho VPS. Názov domény nie je potrebný – AmneziaWG nepoužíva certifikáty, takže nie je potrebné nič obnovovať a DPI nemá čo označovať ako TLS handshake.

Ešte nemáte server? Pozrite si časť Ako si objednať server.

Pripojenie k serveru

Windows (PuTTY)

Otvorte PuTTY, zadajte IP adresu vášho VPS do poľa Názov hostiteľa, nastavte port na 22 a prihláste sa ako root pomocou hesla, ktoré vám poskytovateľ VPS poslal e-mailom.

IP adresa servera: vaša IP adresa

prihlásiť sa ako: root

Heslo: vaše heslo

1. Otvorte PuTTY a do poľa Názov hostiteľa zadajte IP adresu vášho VPS.  

Predvolené okno konfigurácie PuTTY pred zadaním akýchkoľvek podrobností o pripojení.

2. Nastavte port na 22. 

Relácia sa vyplnila IP adresou VPS a portom 22, pričom bola vybratá uložená relácia „Môj VPS“ a pripravená na kliknutie na tlačidlo Otvoriť.

3. Prihláste sa ako root. 

Nové okno terminálu PuTTY, ktoré otvára reláciu SSH a vyzýva na zadanie prihlasovacieho mena.

4. Použite heslo, ktoré vám poskytovateľ VPS poslal e-mailom.

Po zadaní príkazu root si PuTTY vyžiada heslo účtu.

Výsledok by mal byť nasledovný:

Úspešné prihlásenie: banner s dennou správou Debianu, za ktorým nasleduje príkaz root shell (root@copywr:~#).

Podrobný návod na pripojenie cez PuTTY/SSH nájdete v článku Ako sa pripojiť k Linuxovému serveru cez SSH.

Linux / macOS (terminál)

ssh root@YOUR_SERVER_IP

Všetky nižšie uvedené príkazy sa spúšťajú na serveri v tej istej SSH relácii – ktorá pokrýva časti 2 až 5 plus kontroly na strane servera v časti 9. Časti 6 – 8 (inštalácia a konfigurácia VPN klienta) sa vykonávajú na vašom vlastnom zariadení so systémom Windows/macOS/Linux, pretože to je zariadenie, na ktorom musí VPN bežať; každá z týchto častí explicitne uvádza, ktoré riadky, ak nejaké existujú, sa stále dotýkajú servera.

Príprava servera

Aktualizujte systém

Pred inštaláciou čohokoľvek obnovte zoznam balíkov a aktualizujte nainštalované balíky:

apt update -y && apt upgrade -y

Ak sa týmto aktualizuje jadro, reštartujte počítač pred zostavením modulu jadra AmneziaWG v časti 3, inak môže DKMS zostaviť s nesprávnymi hlavičkami jadra a modul sa nepodarí načítať. (Pripomenutie si apt a fungovania správcov balíkov v systéme Linux nájdete v časti Správcovia balíkov v systéme Linux .) Skontrolujte pomocou:

cat /var/run/reboot-required
Aktualizácia Apt sťahuje nový balík jadra (linux-image-6.1.0-52-amd64) počas aktualizácie systému. Dokončenie aktualizácie Apt: initramfs sa regeneruje a postihnuté služby sa reštartujú.

Povoliť presmerovanie IP

Toto nastavenie umožňuje serveru preposielať pakety klientov na internet – bez neho sa tunel síce síce otvorí, ale neprejde cez neho žiadna prevádzka.

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

Prvý príkaz vytvorí vyhradený konfiguračný súbor; druhý ho použije bez reštartu servera.

sysctl --system aplikuje každý konfiguračný súbor sysctl.d, čím potvrdzuje, že net.ipv4.ip_forward = 1 je teraz aktívne.

Konfigurácia firewallu (UFW)

Viac informácií o pravidlách UFW nájdete v časti Konfigurácia brány firewall v systéme Linux

Otvorte dva porty, ktoré budete potrebovať: 22/tcp pre SSH (preskočenie tohto pravidla môže viesť k strate prístupu k serveru) a 42666/udp, port, na ktorom bude AmneziaWG počúvať.

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

Obe pravidlá by sa mali vo výstupe stavu ufw zobraziť ako POVOLENÉ.

Stav UFW potvrdzujúci, že protokoly 22/tcp a 42666/udp sú povolené pre IPv4 aj IPv6 s aktívnym firewallom.

Inštalácia AmneziaWG

Debian priamo nepodporuje PPA v štýle Ubuntu, takže repozitár je potrebné pridať manuálne, a nie pomocou príkazu add-apt-repository. V Ubuntu to funguje rovnako.

Pridajte repozitár manuálne

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

Pridajte podpisový kľúč GPG

Namiesto zastaraného príkazu apt-key použite súbor s kľúčenkami Dearmored a načítajte skutočný podpisový kľúč PPA (odtlačok 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

Aktualizovať a nainštalovať

apt update
apt install -y amneziawg
Výstup príkazu apt install -y amneziawg: DKMS zostavuje modul jadra amneziawg na základe bežiaceho jadra a dokončuje inštaláciu.

Overte, či je modul načítaný

modprobe amneziawg
lsmod | grep amnezia
Spustite príkaz Modprobe amneziawg a následne lsmod, čím sa potvrdí načítanie modulu amneziawg a jeho závislostí (curve25519, chacha20poly1305 atď.).

Generovanie konfigurácie servera a klienta

Inštalácia pomocných nástrojov

Nainštalujte závislosť qrcode, potom vytvorte vyhradený pracovný adresár a stiahnite si doň skript generátora konfigurácie komunity:

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

Ak python3-qrcode nie je dostupný v repozitároch vašej distribúcie, použite príkaz pip3 install qrcode --break-system-packages (tento príznak je povinný v systémoch Debian 12+/Ubuntu 24.04, ktoré štandardne blokujú nespravované inštalácie pip). Nespúšťajte obe inštalácie – vyberte si jednu.

Awgcfg.py je neoficiálny komunitný skript tretej strany (od používateľa GitHub „remittor“), nie oficiálny nástroj projektu Amnezia. Vyššie uvedená URL adresa odkazuje na surový obsah súboru Gist bez hashu revízie, takže vždy stiahne obsah, ktorý autor naposledy zverejnil – tichá aktualizácia (alebo odstránenie súboru Gist) by mohla bez varovania narušiť vaše nastavenie. Ak je to možné, pripnite ho na konkrétnu revíziu: otvorte históriu revízií súboru Gist, skopírujte hash commitu pre verziu, ktorú ste testovali, a použite URL formulára tejto príručky. 

Vygenerujte konfiguráciu servera

Vytvorte súbor /etc/amnezia/amneziawg/awg0.conf. Vnútornú podsieť a UDP port tunela môžete ponechať na predvolených hodnotách alebo si nastaviť vlastné:

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

Príznak -i nastavuje internú sieťovú adresu a masku tunela; -p nastavuje UDP port servera (ten istý, ktorý bol otvorený v kroku 2.3).

Awgcfg.py --make vytvorenie súboru /etc/amnezia/amneziawg/awg0.conf a detekcia hlavného sieťového rozhrania servera (ens3).

Vytvorenie šablóny konfigurácie klienta

python3 awgcfg.py --create

Toto uloží šablónu do rovnakého priečinka, z ktorého sa vytvárajú jednotlivé konfigurácie klientov – už obsahuje verejný kľúč servera, jeho IP adresu a parametre obfuskácie (Jc, Jmin, Jmax, S1, S2, H1–H4), ktoré odlišujú AmneziaWG od obyčajného WireGuardu.

Awgcfg.py --create zápis _defclient.config, šablóny, z ktorej sa budú generovať nové konfigurácie klienta.

Pridať klientov

Vytvorte jeden záznam pre každé zariadenie – názov môže byť ľubovoľný, napr. názov zariadenia:

python3 awgcfg.py -a "laptop"
python3 awgcfg.py -a "phone"
Awgcfg.py -a registrácia klientov „laptop“ a „phone“, pričom každému z nich bola pridelená vlastná IP adresa tunela (10.10.8.2/32 a 10.10.8.3/32).

Generovanie klientskych súborov a QR kódov

python3 awgcfg.py -c -q

Priečinok ~/awg bude teraz obsahovať súbory ako laptop.conf a phone.conf a tiež zodpovedajúce QR kódy PNG, ktoré môžete naskenovať priamo do mobilnej aplikácie.

Tento komunitný skript má známu zvláštnosť: jeho spustenie môže vymazať iné súbory .init/state, ktoré ste mohli umiestniť do rovnakého priečinka. Priečinok ~/awg uchovávajte vyhradený iba pre súbory AmneziaWG a pred regeneráciou konfigurácií si zálohujte kľúče servera (súkromný kľúč [Interface] v awg0.conf) inde.
Obsah vygenerovaného súboru laptop.conf: adresa klienta, DNS, parametre obfuskácie a sekcia [Peer] smerujúca späť na server.

Priečinok ~/awg bude teraz obsahovať súbory ako laptop.conf a phone.conf a tiež zodpovedajúce QR kódy PNG, ktoré môžete naskenovať priamo do mobilnej aplikácie.

Tento komunitný skript má známu zvláštnosť: jeho spustenie môže vymazať iné súbory .init/state, ktoré ste mohli umiestniť do rovnakého priečinka. Priečinok ~/awg uchovávajte vyhradený iba pre súbory AmneziaWG a pred regeneráciou konfigurácií si zálohujte kľúče servera (súkromný kľúč [Interface] v awg0.conf) inde.

Spustenie služby a povolenie automatického spustenia

Otvorte rozhranie awg0 a povoľte jeho automatické spustenie po reštarte:

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

Stav by mal ukazovať aktívny (ukončený) s povolenou jednotkou pri spustení. Ak sa konzola „zasekne“ a zobrazuje protokoly, stlačte Q pre ukončenie.

Stav Systemctl potvrdzujúci, že služba awg-quick@awg0.service je aktívna (ukončená) a povolená, s príkazmi nastavenia ip/iptables rozhrania v protokole.

Skontrolujte zoznam aktívnych peerov a prevádzku na peer pomocou:

awg show
AWG zobrazuje zoznam parametrov obfuskacie rozhrania awg0 a jeho dvoch nakonfigurovaných partnerov (laptop a telefón), každý s povolenou IP adresou.

Pripojenie z Windowsu

Všetko v tejto časti sa deje na vašom počítači so systémom Windows, nie cez SSH – VPN klient musí byť nainštalovaný na zariadení, ktoré bude tunel skutočne používať. Jediným krokom, ktorý sa týka servera, je stiahnutie scp vo verzii 6.2 a aj tento príkaz sa zadáva na vašom počítači a stiahne sa súbor, ktorý server už vygeneroval v časti 4.

Nainštalujte klienta

AmneziaWG má špeciálnu aplikáciu pre Windows – jej rozhranie odzrkadľuje štandardného klienta WireGuard, ale rozumie parametrom obfuskácie. Stiahnite si inštalátor z oficiálneho repozitára projektu:

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

Vyššie uvedený odkaz je stránka s vydaniami spravovaného klienta pre Windows – stiahnite si odtiaľ najnovší súbor .msi/.exe. Toto je stránka, ktorú otvoríte v prehliadači, nie príkaz, ktorý vložíte do terminálu.

Spustite inštalátor a prejdite krok za krokom sprievodcom nastavením; predvolené nastavenia nie je potrebné meniť.

Importovať konfiguráciu

Skopírujte konfiguračný súbor klienta zo servera do počítača – najjednoduchší spôsob je scp, spustite ho v PowerShelle na počítači, nie na serveri:

Prázdny výzva prostredia Windows PowerShell na klientskom počítači, pripravená na spustenie príkazu scp uvedeného nižšie.
scp root@YOUR_SERVER_IP:~/awg/laptop.conf .

V aplikácii AmneziaWG kliknite na „Importovať tunel(e) zo súboru“, vyberte laptop.conf a zapnite prepínač vedľa nového tunela.

Pripájanie z macOS

Všetko sa tu deje na vašom Macu, nie cez SSH. Riadok scp nižšie sa zadáva do terminálu Macu a stiahne sa konfigurácia, ktorú server už vygeneroval v časti 4 – nespúšťa sa v rámci vašej root SSH relácie na VPS.

Existujú dve podporované možnosti:

  • AmneziaWG (Mac App Store): ľahký klient, funguje na macOS 12 a novších. Vyhľadajte „AmneziaWG“ v App Store, nainštalujte ho, potom použite možnosť „Importovať tunel(e) zo súboru“ a vyberte súbor .conf – rovnaký pracovný postup ako v prípade klienta pre Windows.
  • AmneziaVPN (plná aplikácia, macOS 14+): stiahnite si súbor .pkg z github.com/amnezia-vpn/amnezia-client/releases/latest, ak radšej používate plnohodnotnú aplikáciu Amnezia namiesto ľahkého klienta AmneziaWG.

V prípade potreby najskôr skopírujte konfiguráciu klienta, rovnako ako v kroku 6.2:

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

Pripájanie z Linuxu

Obe možnosti nižšie bežia na vašom stolnom/notebookovom počítači so systémom Linux, t. j. na samostatnej SSH relácii (alebo lokálnom shelli) na danom počítači – nie na koreňovej SSH relácii na VPS z časti 1. Príkazy vyzerajú identicky ako príkazy na strane servera, pretože na oboch koncoch sa používa rovnaký balík amneziawg-tools, ale ich spustením tu sa nainštaluje a spustí klientsky tunel na vašom vlastnom počítači, nie na serveri.

Na stolnom počítači alebo notebooku s Linuxom máte dve možnosti:

  • GUI: nainštalujte si plnú desktopovú klientsku verziu AmneziaVPN z github.com/amnezia-vpn/amnezia-client/releases a potom importujte súbor .conf rovnakým spôsobom ako vo Windows/macOS.
  • CLI s použitím rovnakých nástrojov amneziawg, aké sa používajú na serveri (awg / awg-quick):
apt install -y amneziawg
cp laptop.conf /etc/amnezia/amneziawg/awg0.conf
awg-quick up awg0

Spustite tento kód pre odpojenie.

awg-quick down awg0 

Ak chcete, aby sa tunel automaticky spustil pri prihlásení, povoľte ho ako službu:

systemctl enable --now awg-quick@awg0

Overenie spojenia

S aktívnym tunelom zo sekcie 6, 7 alebo 8 sa vráťte na svoje zariadenie (nie do SSH relácie) a otvorte v prehliadači ľubovoľný nástroj na kontrolu „aká je moja IP adresa“ – zobrazená adresa by sa mala zhodovať s IP adresou vášho VPS. Ak chcete overiť zvnútra SSH relácie, spustite na serveri príkaz awg show a overte, či klientov peer zobrazuje nedávne nadviazanie spojenia a nenulovú prevádzku.

Referencie:

Pole

Hodnota

adresa

VAŠA_IP_ADRESA_TUNELA (adresa klienta v tuneli, napr. 10.10.8.2/32 — priradená automaticky pri pridaní klienta v kroku 4.4)

Endpoint

YOUR_SERVER_IP:42666 (Externá IP adresa servera a port UDP, ku ktorému sa klient pripája.)

DNS

8.8.8.8

Jc / Jmin / Jmax

počet a veľkosť „nevyžiadaných“ paketov odoslaných pred handshake – môže sa medzi serverom a klientom líšiť bez prerušenia spojenia

S1 / S2

veľkosť polí handshake padding – musí sa zhodovať bajt po bajte medzi serverom a každým klientom

H1 – H4

hlavičky paketového typu, ktoré maskujú protokol ako bežnú prevádzku – musia sa tiež presne zhodovať a musia byť navzájom jedinečné

Identické musia byť iba S1/S2 a H1–H4 na oboch koncoch tunela; Jc, Jmin a Jmax sa týkajú výlučne toho, ako každá strana dopĺňa svoju vlastnú odchádzajúcu nevyžiadanú prevádzku, takže hodnoty klienta a servera sa môžu legitímne líšiť, ako je to v príklade vyššie.

Záver

Dodržiavaním tohto návodu necháte svoj VPS bežať na vlastnom serveri AmneziaWG: protokol kompatibilný s WireGuardom s obfuskáciou prevádzky, ktorú je pre systémy DPI citeľne ťažšie odlíšiť od bežnej prevádzky UDP ako pri obyčajnom WireGuarde. Služba beží ako jednotka systemd awg-quick@awg0 a prežije reštart servera bez akejkoľvek akcie z vašej strany.

Výsledné súbory .conf a QR kódy v priečinku ~/awg fungujú nielen s klientom systému Windows, ale je možné ich importovať aj do aplikácií AmneziaWG alebo Amnezia pre Android, iOS, macOS a Linux, ako aj do routerov Keenetic a OpenWrt.

Nových klientov môžete kedykoľvek pridať opakovaním krokov 4.4–4.5 (python3 awgcfg.py -a "name", potom awgcfg.py -c -q) a reštartovaním rozhrania pomocou príkazu systemctl restart [email protected].

Niekoľko návykov, ktoré sa oplatí dodržiavať po spustení servera:

  • Udržujte systém aktualizovaný. Pravidelne znova spúšťajte príkazy apt update -y && apt upgrade -y a po aktualizácii jadra reštartujte systém, aby DKMS znovu zostavil modul amneziawg s novým jadrom.
  • Zálohujte ~/awg. Obsahuje súkromný kľúč každého klienta a vlastný pár kľúčov servera v awg0.conf; jeho strata znamená opätovné vygenerovanie konfigurácií pre každé zariadenie.
  • Stratené zariadenia ihneď zrušte. Odstráňte príslušný blok [Peer] zo súboru /etc/amnezia/amneziawg/awg0.conf a spustite príkaz systemctl restart. [chránené e-mailom].

Ak sa pripojenie nenadviaže, skontrolujte postup v tomto poradí:

  • stav služby (stav systemctl [chránené e-mailom])
  • pravidlá brány firewall (stav ufw — port 42666/udp musí byť otvorený)
  • stav DKMS/modulu, ak sa rozhranie ani nespustí (stav dkms, lsmod | grep amnezia)
  • zoznam aktívnych peerov na serveri (awg show)
  • že konfigurácia klienta ukazuje na správnu IP adresu externého servera

Porovnávate AmneziaWG s inými možnosťami pred rozhodnutím? Pozrite si časti Nastavenie VPN servera v systéme Linux: PPTP alebo OpenVPN? a Ako nastaviť Wireguard VPN na vašom serveri . Ak potrebujete iba jednoduchý proxy server namiesto plného VPN tunela, konfigurácia 3proxy v systéme CentOS/ArchLinux je ľahšou alternatívou. Informácie o všeobecnom zabezpečení servera po spustení VPN nájdete v časti Používatelia systému Linux: Správa a povolenia.

❮ Predchádzajúci článok Nastavenie Hysteria2 a TUIC
Ďalší článok ❯ Sprievodca realitou Xray VLESS: VPS, Windows, Mac, Android, iPhone

Opýtajte sa nás na VPS

Sme vždy pripravení odpovedať na vaše otázky kedykoľvek počas dňa alebo v noci.