Knowledgebase Simplaj instrukcioj por labori kun la servo Profitserver
ĉefa Knowledgebase Gvidilo pri Deplojo de Servilo AmneziaWG

Gvidilo pri Deplojo de Servilo AmneziaWG


Pli kaj pli da homoj uzas sian propran VPN-on anstataŭ fidi je pagitaj, pretaj servoj: ĝi estas pli malmultekosta, pli bona por privateco, kaj donas al vi plenan kontrolon de la servilo. Unu el la plej efikaj ebloj por regionoj kun agresema retblokado estas AmneziaWG, protokolo evoluigita de la projekto Amnezia sur WireGuard.

Klasika WireGuard estas rapida kaj fidinda, sed ĝi havas fiksan pakaĵetstrukturon kaj antaŭvideblan manpremon, kiun DPI (Profunda Pakaĵetinspektado) sistemoj povas fidinde fingrospuri kaj bloki. AmneziaWG solvas tion: ĝi aldonas rubpakaĵetojn al la ordinara WireGuard-konekto, hazarde difinas kapliniojn, kaj ŝanĝas la grandecon de manpremaj kampoj — tiel la karakteriza signaturo de WireGuard malaperas kaj la trafiko jam ne elstaras de ordinara UDP-trafiko.

Ĉu vi jam uzas klasikan tunelon kaj scivolas ĉu valoras ŝanĝi? Komparu ĉi tion kun simpla OpenVPN/PPTP-aranĝo en VPN-servilaranĝo en Linukso: PPTP aŭ OpenVPN?, aŭ kun vanila WireGuard (sen malklarigo) en Kiel agordi Wireguard VPN sur via servilo.

Ĉi tiu gvidilo starigas AmneziaWG-servilon permane, sen Docker aŭ TTT-panelo — la plej malgranda ebla spaco sur la VPS mem, tute agordita per la komandlinio. Ĝi estas la plej malpeza opcio kaj bone funkcias sur buĝeta VPS, ĉar ĝi ne bezonas grafikan interfacon, datumbazon kaj inversan prokurilon. La ekzempla servilo sube uzas provizoran IP-adreson — anstataŭigu ĝin per la adreso de via propra VPS kie ajn ĝi aperas.

Kion vi bezonos: VPS-on funkciantan per Ubuntu 22.04/24.04 aŭ Debian 11/12, administran aliron, kaj la IP-adreson de via VPS. Domajna nomo ne necesas — AmneziaWG ne uzas atestilojn, do ne estas io por renovigi kaj nenio por ke DPI marku kiel TLS-manpremon.

Ĉu vi ankoraŭ ne havas servilon? Vidu Kiel mendi servilon

Konektante al la Servilo

Vindozo (PUTTY)

Malfermu PuTTY, enigu vian VPS IP-adreson en la kampon Gastiga Nomo, agordu la pordon al 22, kaj ensalutu kiel administranto uzante la pasvorton, kiun via VPS-provizanto retpoŝtis al vi.

Servila IP-adreso: via IP-adreso

ensaluti kiel: root

Pasvorto: via pasvorto

1. Malfermu PuTTY, enigu vian VPS IP-adreson en la kampon Gastiga Nomo.  

Defaŭlta PuTTY-agorda fenestro, antaŭ ol iuj ajn konektodetaloj estas enigitaj.

2. Agordu la pordon al 22. 

La seanco pleniĝis kun la IP-adreso kaj pordo 22 de la VPS, kun la konservita seanco "Mia VPS" elektita kaj preta por alklaki Malfermi.

3. Tajpu ensaluti kiel administranto. 

Nova PuTTY-terminalo malfermanta la SSH-sesion kaj petanta la ensalutan uzantnomon.

4. Uzante la pasvorton, kiun via VPS-provizanto retpoŝtis al vi.

Post tajpado de root, PuTTY petas la pasvorton de la konto.

La rezulto devus esti jena:

Sukcesa ensaluto: la Debiana mesaĝo-de-la-tago-standardo sekvata de la administranta ŝel-invito (root@copywr:~#).

Por detala gvidilo pri konekto per PuTTY/SSH, vidu Kiel konekti al Linuksa servilo per SSH

Linukso / macOS (terminalo)

ssh root@YOUR_SERVER_IP

Ĉiuj komandoj sube estas plenumataj sur la servilo, en ĉi tiu sama SSH-sesio — kiu kovras Sekciojn 2 ĝis 5, plus la servilflankajn kontrolojn en Sekcio 9. Sekcioj 6–8 (instalado kaj agordado de la VPN-kliento) okazas anstataŭe sur via propra Vindoza/macOS/Linuksa aparato, ĉar tio estas la aparato sur kiu la VPN bezonas funkcii; ĉiu el tiuj sekcioj eksplicite diras kiuj linioj, se ekzistas, ankoraŭ tuŝas la servilon.

Preparante la Servilon

Ĝisdatigu la sistemon

Antaŭ ol instali ion ajn, refreŝigu la pakaĵliston kaj ĝisdatigu instalitajn pakaĵojn:

apt update -y && apt upgrade -y

Se tio ĝisdatigas la kernon, rekomencu antaŭ ol konstrui la kernan modulon AmneziaWG en Sekcio 3, alie DKMS povus konstrui kontraŭ la malĝustaj kernaj kaplinioj kaj la modulo malsukcesos ŝarĝi. (Por refreŝigo pri apt kaj kiel funkcias Linuksaj pakaĵadministriloj, vidu Linuksaj Pakaĵadministriloj .) Kontrolu kun:

cat /var/run/reboot-required
Ĝisdatigo de Apt elŝutante novan kernan pakaĵon (linux-image-6.1.0-52-amd64) dum la sistemĝisdatigo. Finiĝas la ĝisdatigo de Apt: initramfs regeneriĝas kaj la koncernaj servoj rekomenciĝas.

Ebligi IP-plusendadon

Ĉi tiu agordo permesas al la servilo plusendi la pakaĵojn de klientoj al la interreto — sen ĝi, la tunelo aperos sed neniu trafiko trairos ĝin.

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

La unua komando kreas dediĉitan agordodosieron; la dua aplikas ĝin sen restartigi la servilon.

sysctl --system aplikas ĉiun sysctl.d agordodosieron, konfirmante ke net.ipv4.ip_forward = 1 nun estas aktiva.

Agordu la fajromuron (UFW)

Por pliaj informoj pri UFW-reguloj, vidu Agordado de Fajromuro en Linukso

Malfermu la du bezonotajn pordojn: 22/tcp por SSH (preterlasu ĉi tiun regulon kaj vi riskas perdi aliron al la servilo) kaj 42666/udp, la pordon, kiun AmneziaWG aŭskultos.

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

Ambaŭ reguloj devus montriĝi kiel PERMESITA en la ufw-statusa eligo.

Ufw-stato konfirmanta 22/tcp kaj 42666/udp estas permesita por kaj IPv4 kaj IPv6, kun la fajromuro aktiva.

Instali AmneziaWG

Debian ne subtenas Ubuntu-stilajn PPA-ojn rekte, do la deponejo devas esti aldonita permane anstataŭ per add-apt-repository. Tio funkcias same ĉe Ubuntu.

Aldonu la deponejon permane

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

Aldonu la GPG-subskriban ŝlosilon

Uzu ŝlosilringan dosieron anstataŭ la malrekomendinda komando apt-key, kaj prenu la veran subskriban ŝlosilon de la PPA (fingrospuro 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

Ĝisdatigu kaj instalu

apt update
apt install -y amneziawg
Apt install -y amneziawg eligo: DKMS konstruas la kernan modulon amneziawg kontraŭ la kuranta kerno kaj kompletigas la instaladon.

Kontrolu la ŝarĝitan modulon

modprobe amneziawg
lsmod | grep amnezia
Modprobe amneziawg sekvata de lsmod, konfirmante ke la amneziawg-modulo kaj ĝiaj dependecoj (curve25519, chacha20poly1305, ktp.) estas ŝarĝitaj.

Generado de Servila kaj Klienta Agordo

Instali helpajn ilojn

Instalu la qrcode-dependecon, poste kreu dediĉitan labordosierujon kaj elŝutu la komunuman config-generator-skripton en ĝin:

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

Se python3-qrcode ne haveblas en la deponejoj de via distribuaĵo, revenu al pip3 install qrcode --break-system-packages (la flago estas necesa en Debian 12+/Ubuntu 24.04, kiu defaŭlte blokas neadministritajn pip-instalaĵojn). Ne lanĉu ambaŭ instalaĵojn — elektu unu.

Awgcfg.py estas neoficiala, triaparta komunuma skripto (de GitHub-uzanto "remittor"), ne oficiala Amnezia-projekta ilo. La URL supre montras al la kruda enhavo de la gist sen revizia haŝo, do ĝi ĉiam tiras tion, kion la aŭtoro laste puŝis — silenta ĝisdatigo (aŭ la forigo de la gist) povus rompi vian agordon sen averto. Kie eble, alfiksu ĝin al specifa revizio anstataŭe: malfermu la revizian historion de la gist, kopiu la haŝon de la commit por la versio, kiun vi testis, kaj uzu URL de la formo de ĉi tiu gvidilo. 

Generi la servilan agordon

Kreu /etc/amnezia/amneziawg/awg0.conf. Vi povas lasi la internan subreton kaj UDP-pordon de la tunelo je iliaj defaŭltaj valoroj aŭ agordi viajn proprajn:

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

La flago -i agordas la internan retadreson kaj maskon de la tunelo; -p agordas la UDP-pordon de la servilo (la sama malfermita en paŝo 2.3).

Awgcfg.py --kreas /etc/amnezia/amneziawg/awg0.conf kaj detektas la ĉefan retinterfacon de la servilo (ens3).

Kreu la ŝablonon de klienta agordo

python3 awgcfg.py --create

Ĉi tio konservas ŝablonon en la sama dosierujo, el kiu individuaj klientaj agordoj estas konstruitaj — ĝi jam inkluzivas la publikan ŝlosilon de la servilo, ĝian IP-adreson, kaj la malklarigajn parametrojn (Jc, Jmin, Jmax, S1, S2, H1–H4) kiuj distingas AmneziaWG de simpla WireGuard.

Awgcfg.py --krei skribante _defclient.config, la ŝablonon el kiu novaj klientaj agordoj estos generitaj.

Aldoni klientojn

Kreu unu eniron por aparato — la nomo povas esti io ajn, ekz. la aparatnomo:

python3 awgcfg.py -a "laptop"
python3 awgcfg.py -a "phone"
Awgcfg.py -a registras la klientojn "tekokomputilo" kaj "telefono", ĉiu asignita al sia propra tunela IP-adreso (10.10.8.2/32 kaj 10.10.8.3/32).

Generi klientajn dosierojn kaj QR-kodojn

python3 awgcfg.py -c -q

La dosierujo ~/awg nun enhavos dosierojn kiel laptop.conf kaj phone.conf, kaj plie kongruajn PNG-QR-kodojn, kiujn vi povas skani rekte en poŝtelefonan aplikaĵon.

Ĉi tiu komunuma skripto havas konatan strangaĵon: ĝia funkciigo povas forigi aliajn .init/state dosierojn, kiujn vi eble metis en la saman dosierujon. Konservu ~/awg dediĉitan nur al AmneziaWG dosieroj, kaj sekurkopiu servilajn ŝlosilojn (la [Interface] PrivateKey en awg0.conf) aliloke antaŭ ol regeneri agordojn.
Enhavo de la generita laptop.conf-dosiero: la adreso de la kliento, DNS, malklarigado-parametroj, kaj la sekcio [Peer] montrante reen al la servilo.

La dosierujo ~/awg nun enhavos dosierojn kiel laptop.conf kaj phone.conf, kaj plie kongruajn PNG-QR-kodojn, kiujn vi povas skani rekte en poŝtelefonan aplikaĵon.

Ĉi tiu komunuma skripto havas konatan strangaĵon: ĝia funkciigo povas forigi aliajn .init/state dosierojn, kiujn vi eble metis en la saman dosierujon. Konservu ~/awg dediĉita nur al AmneziaWG dosieroj, kaj faru sekurkopion de la servilaj ŝlosiloj (la [Interface] PrivateKey en awg0.conf) aliloke antaŭ ol regeneri agordojn.

Komenci la servon kaj ebligi aŭtomatan starton

Malfermu la interfacon awg0 kaj ebligu ĝin aŭtomate ekfunkcii post restartiĝo:

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

La stato devus montri aktiva (elirinta) kun la aparato ebligita dum la starto. Se la konzolo ŝajnas "blokiĝi" montrante protokolojn, premu Q por eliri.

Systemctl-stato konfirmanta ke awg-quick@awg0.service estas aktiva (finiĝinta) kaj ebligita, kun la ip/iptables-agordigaj komandoj de la interfaco en la protokolo.

Kontrolu la liston de aktivaj samtavolanoj kaj po-samtavola trafiko per:

awg show
Awg montras listigantajn la malklarigparametrojn de la awg0-interfaco kaj ĝiajn du agorditajn samtavolanojn (tekokomputilo kaj telefono), ĉiu kun sia permesita IP-adreso.

Konektante el Vindozo

Ĉio en ĉi tiu sekcio okazas sur via Vindoza komputilo, ne per SSH — la VPN-kliento devas esti instalita sur la aparato, kiu efektive uzos la tunelon. La sola paŝo, kiu koncernas la servilon, estas la elŝuto de scp en versio 6.2, kaj eĉ tiu komando estas tajpita sur via komputilo, tirante dosieron, kiun la servilo jam generis en Sekcio 4.

Instalu la klienton

AmneziaWG havas dediĉitan Vindozan aplikaĵon — ĝia interfaco spegulas la norman WireGuard-klienton sed ĝi komprenas la malklarigado-parametrojn. Elŝutu la instalilon el la oficiala deponejo de la projekto:

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

La supra ligilo estas la paĝo pri eldonoj de la prizorgata Vindoza kliento — elŝutu la plej novan .msi/.exe dosieron de tie. Ĉi tiu estas paĝo por malfermi en via retumilo, ne komando por alglui en terminalon.

Rulu la instalilon kaj paŝu tra la agorda asistanto; la defaŭltoj ne bezonas esti ŝanĝitaj.

Importi la agordon

Kopiu la klientan agordodosieron de la servilo al via komputilo — la plej facila maniero estas scp, rulu ĝin en PowerShell sur via komputilo, ne sur la servilo:

Malplena Windows PowerShell-mesaĝo sur la klienta komputilo, preta por ruli la scp-komandon sube.
scp root@YOUR_SERVER_IP:~/awg/laptop.conf .

En la aplikaĵo AmneziaWG, alklaku "Importi tunelo(j)n el dosiero", elektu laptop.conf, kaj ŝaltu la ŝaltilon apud la nova tunelo.

Konektante de macOS

Ĉio ĉi tie okazas sur via Mac, ne per SSH. La scp-linio sube estas tajpita en la propra Terminalo de la Mac, tirante la agordon, kiun la servilo jam generis en Sekcio 4 — ĝi ne funkcias ene de via ĉefa SSH-sesio sur la VPS.

Ekzistas du subtenataj opcioj:

  • AmneziaWG (Mac App Store): malpeza kliento, funkcias ĉe macOS 12 kaj pli novaj. Serĉu "AmneziaWG" en la App Store, instalu ĝin, poste uzu "Importi tunelon(j)n el dosiero" kaj elektu vian .conf-dosieron — sama laborfluo kiel ĉe la Vindoza kliento.
  • AmneziaVPN (plena aplikaĵo, macOS 14+): elŝutu la .pkg de github.com/amnezia-vpn/amnezia-client/releases/latest se vi preferas uzi la plenfunkcian Amnezia aplikaĵon anstataŭ la malpezan nur-AmneziaWG-klienton.

Kopiu la klientan agordon unue se necese, same kiel en paŝo 6.2:

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

Konektante el Linukso

Ambaŭ opcioj sube funkcias sur via Linuksa labortablo/tekokomputilo, t.e., aparta SSH-sesio (aŭ loka ŝelo) sur tiu maŝino — ne la ĉefa SSH-sesio sur la VPS el Sekcio 1. La komandoj aspektas identaj al tiuj sur la servilo, ĉar la sama pakaĵo amneziawg-tools estas uzata ambaŭflanke, sed ruli ilin ĉi tie instalas kaj startas klientan tunelon sur via propra maŝino, ne sur la servilo.

Sur Linuksa labortabla komputilo aŭ tekokomputilo vi havas du eblojn:

  • GUI: instalu la plenan klienton por labortablo de AmneziaVPN el github.com/amnezia-vpn/amnezia-client/releases, poste importu la dosieron .conf same kiel en Vindozo/macOS.
  • CLI, uzante la samajn amneziawg-ilojn uzatajn sur la servilo (awg / awg-quick):
apt install -y amneziawg
cp laptop.conf /etc/amnezia/amneziawg/awg0.conf
awg-quick up awg0

Rulu ĉi tiun kodon por malkonekti.

awg-quick down awg0 

Por aŭtomate aktivigi la tunelon ĉe ensaluto, ebligu ĝin kiel servon:

systemctl enable --now awg-quick@awg0

Kontrolante la Konekton

Kun la tunelo aktiva el Sekcio 6, 7, aŭ 8, revenu al via propra aparato (ne la SSH-sesio) kaj malfermu iun ajn kontrolilon "kio estas mia IP-adreso" en retumilo — la montrita adreso devus kongrui kun la IP-adreso de via VPS. Por kontroli de interne de la SSH-sesio anstataŭe, lanĉu "awg show" sur la servilo kaj konfirmu, ke la samtavolano de la kliento montras lastatempan manpremon kaj ne-nulan trafikon.

referenco:

Kampo

valoro

Adreso

VIA_TUNELA_IP (la adreso de la kliento ene de la tunelo, ekz. 10.10.8.2/32 — asignita aŭtomate kiam la kliento estis aldonita en paŝo 4.4)

Punkto de punkto

VIA_SERVILA_IP:42666 (La ekstera IP-adreso de la servilo kaj la UDP-pordo al kiu la kliento konektiĝas.)

DNS

8.8.8.8

Jc / Jmin / Jmax

nombro kaj grandeco de "rubaj" pakaĵetoj senditaj antaŭ la manpremo — povas diferenci inter servilo kaj kliento sen interrompi la konekton

S1/S2

grandeco de manpremaj remburaĵaj kampoj — devas kongrui bajto-post-bajto inter servilo kaj ĉiu kliento

H1 – H4

pakaĵ-tipaj titoloj, kiuj maskas la protokolon kiel ordinaran trafikon — devas ankaŭ kongrui precize, kaj devas esti unikaj unu de la alia

Nur S1/S2 kaj H1–H4 devas esti identaj ambaŭflanke de la tunelo; Jc, Jmin, kaj Jmax temas nur pri kiel ĉiu flanko aldonas sian propran elirantan rubtrafikon, do la klientaj kaj servilaj valoroj povas legitime diferenci, kiel ili faras en la supra ekzemplo.

konkludo

Sekvante ĉi tiun gvidilon, via VPS funkciigas sian propran AmneziaWG-servilon: WireGuard-kongruan protokolon kun trafika malklarigado, kiun estas rimarkeble pli malfacile distingi por DPI-sistemoj de ordinara UDP-trafiko ol simpla WireGuard. La servo funkcias kiel la sistemd-unuo awg-quick@awg0 kaj postvivas servilan restartigon sen ia ajn ago de via flanko.

La rezultantaj .conf-dosieroj kaj QR-kodoj en ~/awg funkcias ne nur kun la Vindoza kliento, sed ankaŭ povas esti importitaj en la AmneziaWG aŭ Amnezia aplikaĵojn por Android, iOS, macOS kaj Linukso, same kiel en la Keenetic kaj OpenWrt-enkursigilojn.

Aldonu novajn klientojn iam ajn ripetante paŝojn 4.4–4.5 (python3 awgcfg.py -a "nomo", poste awgcfg.py -c -q) kaj rekomencante la interfacon per systemctl restart [email protected].

Kelkaj kutimoj, kiujn valoras konservi post kiam la servilo funkcias:

  • Konservu la sistemon flikita. Reekzekutigu `apt update -y` kaj `apt upgrade -y` periode, kaj restartigu post kernaj ĝisdatigoj por ke DKMS rekonstruu la `amneziawg` modulon kontraŭ la nova kerno.
  • Rezervu ~/awg. Ĝi enhavas la privatan ŝlosilon de ĉiu kliento kaj la propran ŝlosilparon de la servilo en awg0.conf; perdi ĝin signifas regeneri agordojn por ĉiu aparato.
  • Revoku perditajn aparatojn tuj. Forigu la respondan blokon [Peer] el /etc/amnezia/amneziawg/awg0.conf kaj lanĉu systemctl restart. [retpoŝte protektita].

Se la konekto ne funkcius, kontrolu laŭvice:

  • la servostato (systemctl-stato [retpoŝte protektita])
  • la reguloj de la fajromuro (ufw-stato — pordo 42666/udp devas esti malfermita)
  • la stato de DKMS/modulo se la interfaco eĉ ne ekfunkcias (dkms-stato, lsmod | grep amnezia)
  • la listo de aktivaj samrangaj uzantoj sur la servilo (awg show)
  • ke la klienta agordo montras al la ĝusta ekstera servila IP-adreso

Ĉu kompari AmneziaWG kun aliaj ebloj antaŭ ol decidi? Vidu VPN-servila agordo en Linukso: PPTP aŭ OpenVPN? kaj Kiel agordi Wireguard VPN en via servilo . Se vi bezonas nur simplan prokurilon anstataŭ plenan VPN-tunelon, 3-prokurila agordo en CentOS/ArchLinux estas pli malpeza alternativo. Por ĝenerala servila plifortigo post kiam la VPN funkcias, vidu Linuksaj Uzantoj: Administrado kaj Permesoj.

❮ Antaŭa artikolo Aranĝo de Hysteria2 kaj TUIC
Sekva artikolo ❯ Gvidilo pri Realeco kun Senretaj Rentgenaj Radiaĵoj: VPS, Vindozo, Mac, Android, iPhone

Demandu nin pri VPS

Ni ĉiam pretas respondi viajn demandojn je ajna tempo de tago aŭ nokto.