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ę:
Bash1# 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
Bashsudo ./wireguard-install.sh
Konfiguracja interaktywna
Skrypt zada kilka pytań. Zalecane odpowiedzi:
- Interfejs:
Enter, aby użyćeth0(domyślnie) - Adres IPv4:
Enter, aby użyć automatycznego adresu prywatnego (np.10.7.0.1/24) - Port WireGuard:
Enter, aby użyć portu51820(domyślnie) - DNS: wybór serwera DNS:
1— Cloudflare (1.1.1.1) — zalecane2— Google (8.8.8.8)3— OpenDNS (208.67.222.222)4— Quad9 (9.9.9.9)
- 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ć:
Bash1# 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
- Pobierz WireGuard z wireguard.com
- Zainstaluj aplikację
- Otwórz WireGuard i wybierz „Add Tunnel” > „Add empty tunnel”
- Wklej zawartość pliku
.conf - Zapisz i aktywuj połączenie
macOS
- Pobierz WireGuard z App Store lub wireguard.com
- Zainstaluj aplikację
- Otwórz WireGuard i wybierz „Add Tunnel” > „Create from file” lub „Create from clipboard”
- Zaimportuj plik konfiguracyjny
- Aktywuj połączenie
Linux (Ubuntu/Debian)
Bash1# 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
- Zainstaluj aplikację WireGuard z Google Play lub App Store
- Otwórz aplikację i dotknij „+”
- Wybierz „Create from file” lub „Create from QR code”
- Zaimportuj plik konfiguracyjny
- Aktywuj połączenie
🔐 Dodanie nowego klienta
Aby później dodać kolejnego klienta (np. na inne urządzenie):
Bashsudo ./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ą
Bash1# 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
Bash1# 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
Bash1# 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
Bash1# 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
Bash1# 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:
- Sprawdź publiczny IP:
curl ifconfig.me(powinien pokazać IP VPS) - Test połączenia:
ping 8.8.8.8 - Sprawdź interfejs sieciowy pod kątem VPN
🆘 Rozwiązywanie problemów
WireGuard nie startuje
Bash1# 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
-
Port w UFW:
Bashsudo ufw status | grep 51820 -
Serwer nasłuchuje:
Bashsudo netstat -ulnp | grep 51820 -
Konfiguracja klienta: sprawdź, czy w
Endpointjest poprawny adres IP serwera -
Logi po stronie serwera:
Bashsudo journalctl -u wg-quick@wg0 -f
Błąd skryptu instalacyjnego
- Upewnij się, że masz uprawnienia root lub sudo
- Sprawdź połączenie z internetem
- Zaktualizuj system:
sudo apt update && sudo apt upgrade -y - 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
- Oficjalna dokumentacja WireGuard
- Repozytorium skryptu instalacyjnego
- Przewodnik instalacji UFW
- Wsparcie Infrawire
❓ 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.