Osobisty serwer VPN WireGuard z przyjaznym dla użytkownika interfejsem internetowym

Instalację i konfigurację osobistego serwera WireGuard można wykonać za pomocą zaledwie kilku poleceń dzięki projektowi WG-Easy. Projekt ten oparty jest na technologii Docker i wdraża się w kilka sekund. Serwer WG-Easy VPN nie jest wymagający pod względem zasobów serwera, dlatego można go wdrożyć na VPS (konfiguracja VPS zależy od planowanej liczby użytkowników). Introserv d.o.o. oferuje szeroką gamę VPS w niskich cenach w 9 lokalizacjach na 4 kontynentach, co jest szczególnie ważne przy konfigurowaniu prywatnych serwerów VPN. Obraz serwera Docker jest domyślnie skonfigurowany do użytku zarówno z podsieciami IPv4, jak i IPv6.

Proces instalacji na serwerze Linux OS

1. połączyć się z serwerem przez SSH

2. zainstalować Docker Engine:

curl -sSL https://get.docker.com | sh

3. dodać użytkownika do grupy Docker:

sudo usermod -aG docker $(whoami)

4) Uruchom kontener docker za pomocą jednego polecenia. Standardowe polecenie wygląda następująco:

docker run -d --name=wg-easy -e WG_HOST=YOUR_SERVER_IP -e PASSWORD=YOUR_ADMIN_PASSWORD -v ~/.wg-easy:/etc/wireguard -p 51820:51820/udp -p 51821:51821/tcp --cap-add=NET_ADMIN --cap-add=SYS_MODULE --sysctl="net.ipv4.conf.all.src_valid_mark=1" --sysctl="net.ipv4.ip_forward=1" --restart unless-stopped weejewel/wg-easy

Ważne! Przed uruchomieniem polecenia należy podmienić kilka zmiennych. Poniżej znajduje się opis parametrów, które należy zastąpić własnymi wartościami:
"WG_HOST=" podaj adres IP swojego serwera zamiast wartości "YOUR_SERVER_IP"
"PASSWORD=" zamiast wartości "YOUR_ADMIN_PASSWORD" podaj hasło, które będzie używane do logowania się do panelu WWW.

Opcjonalnie. Domyślnie parametr "Allowed ip" jest ustawiony na 0.0.0.0/0 - oznacza to, że cały ruch podłączonego klienta będzie przechodził przez serwer VPN. W razie potrzeby parametr ten można dostosować w załadowanej konfiguracji po stronie aplikacji klienckiej.

Jeśli istnieje potrzeba zmiany portu połączenia z serwerem WireGuard, polecenie będzie wyglądać inaczej. Zostanie dodana opcja -e WG_PORT=PORT_NUMBER, a także nastąpi zmiana opcji przekierowania portu do kontenera. Przykładowe polecenie ze zmienionym portem:

docker run -d --name=wg-easy -e WG_HOST=YOUR_SERVER_IP -e PASSWORD=YOUR_ADMIN_PASSWORD -e WG_PORT=2345 -v ~/.wg-easy:/etc/wireguard -p 2345:51820/udp -p 51821:51821/tcp --cap-add=NET_ADMIN --cap-add=SYS_MODULE --sysctl="net.ipv4.conf.all.src_valid_mark=1" --sysctl="net.ipv4.ip_forward=1" --restart unless-stopped weejewel/wg-easy

5. Po uruchomieniu kontenera, kliknij link w przeglądarce - YOUR_SERVER_IP:51821 i zobaczysz formularz do wprowadzenia hasła.

6. Wprowadź hasło, a zostaniesz przeniesiony do głównej strony zarządzania serwerem. Na stronie głównej masz dostęp do wygodnego tworzenia konfiguracji klienta.

Konfiguracje te można pobrać jako plik do późniejszego zaimportowania w aplikacji klienckiej.

Konfigurację można też zastosować na urządzeniu mobilnym z kamerą, skanując kod QR

Gdy klient jest połączony z serwerem, aktywność będzie widoczna w postaci czerwonego znacznika, podobnie jak intensywność zużycia ruchu.


Aby zatrzymać kontener z serwerem VPN, uruchom polecenie:

docker stop wg-easy

Aby usunąć kontener z serwerem VPN, uruchom polecenie:

docker rm wg-easy