Kako postaviti vlastiti WireGuard VPN poslužitelj | INTROSERV
EUR
european

EUR

usa

USD

Croatia Hr
Ex. VAT Ex. VAT 0%

Kako postaviti WireGuard VPN poslužitelj uz wg-easy

wg-easy je Docker aplikacija koja pokreće WireGuard VPN poslužitelj zajedno s web-panelom. U panelu stvarate klijente, preuzimate njihove konfiguracijske datoteke ili skenirate QR kod telefonom te vidite koji su klijenti povezani. Ovaj vodič prikazuje kako instalirati aktualnu verziju, wg-easy v15, na Linux poslužitelj pomoću Docker Composea i povezati prvi uređaj.

Info

wg-easy v15 razlikuje se od starijih verzija. Administratorska se lozinka više ne prosljeđuje u varijabli PASSWORD: kontejner pokrenut s PASSWORD ili PASSWORD_HASH ne pokreće se. Korisničko ime i lozinka sada se postavljaju u pregledniku pri prvom pokretanju.

Zahtjevi

Dovoljan je VPS s javnom IP adresom i root ili sudo pristupom. wg-easy je lagan: za osobni VPN dovoljni su 1 vCPU i 1 GB RAM-a. Naredbe u ovom vodiču provjerene su na Ubuntuu 24.04 LTS. Budući da wg-easy radi u Dockeru, jednako funkcioniraju na Ubuntuu 22.04, Debianu 12, AlmaLinuxu 9 i Rocky Linuxu 9.

Tip

Ako ne želite ništa instalirati ručno, naručite na INTROSERV marketplaceu aplikacija VPS s već postavljenim wg-easyjem i odmah prijeđite na prvo pokretanje.

Instalacija Dockera

Spojite se na poslužitelj putem SSH-a i službenom skriptom instalirajte Docker Engine s Compose dodatkom:

curl -fsSL https://get.docker.com | sudo sh

Provjerite jesu li Docker i Compose instalirani:

sudo docker --version sudo docker compose version

Preuzimanje datoteke docker-compose.yml

wg-easy se instalira pomoću službene datoteke docker-compose.yml iz repozitorija projekta. Za nju stvorite mapu i preuzmite datoteku:

sudo mkdir -p /etc/docker/containers/wg-easy sudo curl -o /etc/docker/containers/wg-easy/docker-compose.yml https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml

Glavni retci datoteke su slika i portovi:

image: ghcr.io/wg-easy/wg-easy:15 ports: - "51820:51820/udp" - "51821:51821/tcp"

Port 51820/udp koristi sam WireGuard, a port 51821/tcp web-panel. Oznaka 15 znači da ažuriranja ostaju unutar verzije 15. Konfiguracija i klijenti pohranjeni su u Docker volumenu, pa se zadržavaju kada se kontejner ponovno stvori.

Pokretanje wg-easyja

Idite u mapu s datotekom i pokrenite kontejner:

cd /etc/docker/containers/wg-easy sudo docker compose up -d

Provjerite radi li kontejner:

sudo docker compose ps

U stupcu STATUS treba pisati Up, a u stupcu PORTS trebaju biti portovi 51820/udp i 51821/tcp.

Otvaranje porta u vatrozidu

Klijenti se na poslužitelj spajaju preko UDP porta 51820. Ako je na poslužitelju omogućen UFW, dopustite taj port:

sudo ufw allow 51820/udp

Na AlmaLinuxu i Rocky Linuxu s firewalldom koristite:

sudo firewall-cmd --permanent --add-port=51820/udp sudo firewall-cmd --reload

Otvaranje web-panela

wg-easy v15 ne dopušta prijavu u panel preko običnog HTTP-a. Najjednostavniji siguran način je otvoriti panel kroz SSH tunel. Na svojem računalu pokrenite:

ssh -L 51821:localhost:51821 USER@SERVER_IP

Ostavite ovu SSH sesiju otvorenom i u pregledniku otvorite http://localhost:51821.

Warning

Pristup preko običnog HTTP-a možete i dopustiti: u docker-compose.yml uklonite komentar s bloka environment, postavite INSECURE=true i ponovno pokrenite sudo docker compose up -d. U tom se slučaju lozinka panela šalje nešifrirano, stoga tu opciju koristite samo za testiranje. Za trajni pristup preko naziva domene postavite panel iza obrnutog proxyja (reverse proxy) s HTTPS-om.

Dovršetak prvog pokretanja

Pri prvom pokretanju wg-easy otvara čarobnjak za postavljanje. Nakon pozdravnog zaslona stvorite administratorski račun: unesite korisničko ime i lozinku, zatim potvrdite lozinku.

Kada čarobnjak pita imate li postojeće postavke, odaberite No. Time se stvara nova konfiguracija.

Na sljedećem zaslonu odredite Host i Port koje će klijenti koristiti za spajanje. U polje Host unesite javnu IP adresu ili naziv domene poslužitelja, a ne localhost, čak i ako ste panel otvorili kroz SSH tunel. Port ostavite na 51820. Gumb Suggest popunjava adresu koju wg-easy automatski otkriva.

Warning

Adresa iz polja Host upisuje se u konfiguraciju svakog klijenta. Ako unesete pogrešnu adresu, klijenti se neće moći spojiti.

Nakon što se čarobnjak završi, prijavite se stvorenim korisničkim imenom i lozinkom.

Stvaranje klijenta

Na glavnoj stranici panela kliknite New Client, unesite naziv uređaja, na primjer laptop ili phone, i potvrdite. Klijent se pojavljuje na popisu. Pokraj njega nalaze se gumbi za prikaz QR koda i preuzimanje konfiguracijske datoteke.

Za svaki uređaj stvorite zasebnog klijenta. Tako možete onemogućiti ili izbrisati pristup jednog uređaja, a da to ne utječe na ostale.

Povezivanje uređaja

Na svoj uređaj instalirajte službenu aplikaciju WireGuard. Dostupna je za Windows, macOS, Android i iOS na službenoj stranici za preuzimanje WireGuarda.

Na telefonu otvorite aplikaciju WireGuard, odaberite dodavanje tunela putem QR koda i skenirajte kod iz panela.

Na računalu preuzmite konfiguracijsku datoteku klijenta u panelu i uvezite je u aplikaciji WireGuard pomoću opcije Import tunnel(s) from file. Zatim kliknite Activate.

Na Linuxu instalirajte wireguard-tools i openresolv. Bez openresolva naredba wg-quick ne uspijeva na DNS retku konfiguracijske datoteke. Na Ubuntuu i Debianu:

sudo apt install wireguard-tools openresolv sudo wg-quick up ./CLIENT_NAME.conf

Za prekid veze na Linuxu pokrenite sudo wg-quick down ./CLIENT_NAME.conf.

Provjera veze

Kada je tunel aktivan, provjerite koju IP adresu vidi internet:

curl -4 ifconfig.me

Naredba treba vratiti IP adresu vašeg poslužitelja. U pregledniku možete otvoriti i bilo koju web-stranicu za provjeru IP adrese. U wg-easy panelu povezani klijent prikazuje nedavnu aktivnost i promet.

Upravljanje klijentima

Svim se klijentima upravlja na glavnoj stranici panela. Svakog klijenta možete privremeno onemogućiti sklopkom pokraj njega: uređaj ostaje na popisu, ali se ne može spojiti dok ga ponovno ne omogućite. Za potpuno uklanjanje pristupa izbrišite klijenta. Njegova konfiguracijska datoteka i QR kod odmah prestaju raditi. Ako se uređaj izgubi ili je konfiguracijska datoteka možda kopirana, izbrišite tog klijenta i stvorite novog.

Ako nešto ne radi

Ako se panel ne otvara, naredbom sudo docker compose ps provjerite radi li kontejner i pogledajte zapisnik:

sudo docker logs wg-easy

Ako se panel otvara, ali se ne možete prijaviti i vidite poruku o nesigurnoj vezi, otvorili ste ga preko običnog HTTP-a. Koristite SSH tunel iz prethodnog odjeljka.

Ako se klijent ne može spojiti, provjerite je li UDP port 51820 otvoren u vatrozidu poslužitelja i u vatrozidu panela vašeg davatelja usluga, ako ga ima. Otvorite i konfiguracijsku datoteku klijenta te provjerite redak Endpoint: mora sadržavati javnu adresu poslužitelja. Ako sadrži pogrešnu adresu, Host je pogrešno unesen u čarobnjaku za postavljanje.

Ako je tunel aktivan, a uređaj nema internet, provjerite zapisnik poslužitelja naredbom sudo docker logs wg-easy i uvjerite se da je kontejner pokrenut iz službene datoteke docker-compose.yml bez izmjena u odjeljku sysctls.

Ako na Linuxu wg-quick ne uspije s pogreškom u vezi s resolvconf, instalirajte openresolv kako je opisano u odjeljku o povezivanju uređaja.

Ažuriranje wg-easyja

Za instalaciju novije izvedbe verzije 15 preuzmite novu sliku i ponovno stvorite kontejner:

cd /etc/docker/containers/wg-easy sudo docker compose pull sudo docker compose up -d

Klijenti i postavke se zadržavaju jer su pohranjeni u Docker volumenu.

Zaustavljanje i uklanjanje wg-easyja

Za zaustavljanje VPN poslužitelja pokrenite u mapi s datotekom docker-compose.yml:

sudo docker compose down

Konfiguracija ostaje u volumenu, a naredba sudo docker compose up -d ponovno pokreće poslužitelj s istim klijentima.

Za potpuno uklanjanje wg-easyja, zajedno sa svim klijentima i ključevima, dodajte opciju -v:

sudo docker compose down -v

Warning

Nakon naredbe sudo docker compose down -v sve konfiguracije klijenata prestaju raditi. Da biste ponovno koristili VPN, morat ćete dovršiti prvo pokretanje i ponovno stvoriti klijente.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA