OKWszystkie usługi działają prawidłowo
InfrawireLogo InfrawireDokumentacja

Instalacja WireGuard VPN na VPS

Ten przewodnik pokazuje, jak zainstalować WireGuard VPN na serwerze VPS przy użyciu uproszczonego skryptu instalacyjnego. WireGuard to nowoczesny, szybki i bezpieczny VPN, który pozwala utworzyć własną prywatną sieć wirtualną.

📋 Wymagania wstępne

  • Serwer VPS z dostępem root lub sudo
  • Aktywne połączenie SSH
  • Ubuntu/Debian (skrypt działa z tymi dystrybucjami)
  • Zainstalowany i skonfigurowany UFW (zobacz Instalacja UFW)

📥 Instalacja WireGuard

Pobranie skryptu instalacyjnego

Użyjemy automatycznego skryptu instalacyjnego, który znacznie upraszcza konfigurację:

Bash
1# Pobierz skrypt instalacyjny 2curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh 3 4# Nadaj uprawnienia do wykonania 5chmod +x wireguard-install.sh

Uruchomienie skryptu instalacyjnego

Bash
sudo ./wireguard-install.sh

Konfiguracja interaktywna

Skrypt zada kilka pytań. Zalecane odpowiedzi:

  1. Interfejs: Enter, aby użyć eth0 (domyślnie)
  2. Adres IPv4: Enter, aby użyć automatycznego adresu prywatnego (np. 10.7.0.1/24)
  3. Port WireGuard: Enter, aby użyć portu 51820 (domyślnie)
  4. DNS: wybór serwera DNS:
    • 1 — Cloudflare (1.1.1.1) — zalecane
    • 2 — Google (8.8.8.8)
    • 3 — OpenDNS (208.67.222.222)
    • 4 — Quad9 (9.9.9.9)
  5. Klient: nazwa pierwszego klienta (np. my-pc, laptop, smartphone)

Skrypt:

  • zainstaluje WireGuard automatycznie
  • wygeneruje klucze prywatne i publiczne
  • skonfiguruje serwer
  • utworzy pierwszego klienta

📱 Konfiguracja klienta

Pobranie pliku konfiguracyjnego

Po instalacji skrypt generuje plik konfiguracyjny klienta. Aby go odczytać:

Bash
1# Wyświetl zawartość pliku konfiguracyjnego 2cat /root/[nazwa-klienta].conf 3 4# Przykład: jeśli klient nazywa się "my-pc" 5cat /root/my-pc.conf

Przykładowa zawartość pliku

Plik będzie wyglądał mniej więcej tak:

[Interface]
PrivateKey = [your-private-key]
Address = 10.7.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = [server-public-key]
Endpoint = [your-vps-ip]:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

Instalacja klienta na urządzeniu

Windows

  1. Pobierz WireGuard z wireguard.com
  2. Zainstaluj aplikację
  3. Otwórz WireGuard i wybierz „Add Tunnel” > „Add empty tunnel”
  4. Wklej zawartość pliku .conf
  5. Zapisz i aktywuj połączenie

macOS

  1. Pobierz WireGuard z App Store lub wireguard.com
  2. Zainstaluj aplikację
  3. Otwórz WireGuard i wybierz „Add Tunnel” > „Create from file” lub „Create from clipboard”
  4. Zaimportuj plik konfiguracyjny
  5. Aktywuj połączenie

Linux (Ubuntu/Debian)

Bash
1# Instalacja WireGuard 2sudo apt update 3sudo apt install wireguard -y 4 5# Skopiuj plik konfiguracyjny 6sudo cp /root/my-pc.conf /etc/wireguard/wg0.conf 7 8# Uruchom WireGuard 9sudo wg-quick up wg0 10 11# Włącz przy starcie systemu 12sudo systemctl enable wg-quick@wg0

Android / iOS

  1. Zainstaluj aplikację WireGuard z Google Play lub App Store
  2. Otwórz aplikację i dotknij „+”
  3. Wybierz „Create from file” lub „Create from QR code”
  4. Zaimportuj plik konfiguracyjny
  5. Aktywuj połączenie

🔐 Dodanie nowego klienta

Aby później dodać kolejnego klienta (np. na inne urządzenie):

Bash
sudo ./wireguard-install.sh

Gdy skrypt zapyta o działanie, wybierz opcję dodania nowego klienta.

Podaj nazwę nowego klienta — skrypt wygeneruje plik /root/[nazwa-klienta].conf.

🚀 Przydatne polecenia WireGuard

Zarządzanie usługą

Bash
1# Uruchom WireGuard 2sudo systemctl start wg-quick@wg0 3 4# Zatrzymaj WireGuard 5sudo systemctl stop wg-quick@wg0 6 7# Restart WireGuard 8sudo systemctl restart wg-quick@wg0 9 10# Status usługi 11sudo systemctl status wg-quick@wg0 12 13# Włącz przy starcie 14sudo systemctl enable wg-quick@wg0 15 16# Wyłącz autostart 17sudo systemctl disable wg-quick@wg0

Informacje o połączeniu

Bash
1# Informacje o WireGuard 2sudo wg show 3 4# Statystyki transferu 5sudo wg show wg0 transfer 6 7# Bieżąca konfiguracja (dump) 8sudo wg show wg0 dump

Logi

Bash
1# Logi na żywo 2sudo journalctl -u wg-quick@wg0 -f 3 4# Ostatnie wpisy 5sudo journalctl -u wg-quick@wg0 -n 50

🔐 Zezwolenie na WireGuard w UFW

Bash
1# Port WireGuard (domyślnie 51820) 2sudo ufw allow 51820/udp 3 4# Przeładuj UFW 5sudo ufw reload 6 7# Sprawdź, czy reguła jest aktywna 8sudo ufw status | grep 51820

✅ Weryfikacja

Czy WireGuard działa

Bash
1# Status usługi 2sudo systemctl status wg-quick@wg0 3 4# Aktywne połączenia 5sudo wg show 6 7# Czy port jest otwarty 8sudo netstat -ulnp | grep 51820

Test z klienta

Po połączeniu z klienta:

  1. Sprawdź publiczny IP: curl ifconfig.me (powinien pokazać IP VPS)
  2. Test połączenia: ping 8.8.8.8
  3. Sprawdź interfejs sieciowy pod kątem VPN

🆘 Rozwiązywanie problemów

WireGuard nie startuje

Bash
1# Logi 2sudo journalctl -u wg-quick@wg0 -n 50 3 4# Konfiguracja 5sudo wg-quick down wg0 6sudo wg-quick up wg0 7 8# Czy port jest wolny 9sudo netstat -ulnp | grep 51820

Brak połączenia z klienta

  1. Port w UFW:

    Bash
    sudo ufw status | grep 51820
  2. Serwer nasłuchuje:

    Bash
    sudo netstat -ulnp | grep 51820
  3. Konfiguracja klienta: sprawdź, czy w Endpoint jest poprawny adres IP serwera

  4. Logi po stronie serwera:

    Bash
    sudo journalctl -u wg-quick@wg0 -f

Błąd skryptu instalacyjnego

  1. Upewnij się, że masz uprawnienia root lub sudo
  2. Sprawdź połączenie z internetem
  3. Zaktualizuj system: sudo apt update && sudo apt upgrade -y
  4. Pobierz skrypt ponownie:
    Bash
    rm wireguard-install.sh curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh chmod +x wireguard-install.sh

📚 Dodatkowe zasoby

❓ Najczęstsze pytania

P: Czy mogę mieć wielu klientów jednocześnie?
O: Tak — WireGuard obsługuje wielu klientów naraz. Dodaj kolejnego skryptem.

P: Jaka jest prędkość WireGuard?
O: WireGuard należy do najszybszych VPN, z wydajnością bliską natywnej.

P: Czy WireGuard jest bezpieczny?
O: Tak — nowoczesne szyfrowanie, poddane audytom bezpieczeństwa.

P: Czy mogę zmienić port po instalacji?
O: Tak, ale wymaga ręcznej edycji konfiguracji. Często prościej przeinstalować skryptem.


Powodzenia w konfiguracji.