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# Pobierz skrypt instalacyjny curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh # Nadaj uprawnienia do wykonania chmod +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ć:
Bash# Wyświetl zawartość pliku konfiguracyjnego cat /root/[nazwa-klienta].conf # Przykład: jeśli klient nazywa się "my-pc" cat /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)
Bash# Instalacja WireGuard sudo apt update sudo apt install wireguard -y # Skopiuj plik konfiguracyjny sudo cp /root/my-pc.conf /etc/wireguard/wg0.conf # Uruchom WireGuard sudo wg-quick up wg0 # Włącz przy starcie systemu sudo 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ą
Bash# Uruchom WireGuard sudo systemctl start wg-quick@wg0 # Zatrzymaj WireGuard sudo systemctl stop wg-quick@wg0 # Restart WireGuard sudo systemctl restart wg-quick@wg0 # Status usługi sudo systemctl status wg-quick@wg0 # Włącz przy starcie sudo systemctl enable wg-quick@wg0 # Wyłącz autostart sudo systemctl disable wg-quick@wg0
Informacje o połączeniu
Bash# Informacje o WireGuard sudo wg show # Statystyki transferu sudo wg show wg0 transfer # Bieżąca konfiguracja (dump) sudo wg show wg0 dump
Logi
Bash# Logi na żywo sudo journalctl -u wg-quick@wg0 -f # Ostatnie wpisy sudo journalctl -u wg-quick@wg0 -n 50
🔐 Zezwolenie na WireGuard w UFW
Ważne: Po instalacji zezwól na port WireGuard w UFW — w przeciwnym razie VPN nie zadziała.
Bash# Port WireGuard (domyślnie 51820) sudo ufw allow 51820/udp # Przeładuj UFW sudo ufw reload # Sprawdź, czy reguła jest aktywna sudo ufw status | grep 51820
✅ Weryfikacja
Czy WireGuard działa
Bash# Status usługi sudo systemctl status wg-quick@wg0 # Aktywne połączenia sudo wg show # Czy port jest otwarty sudo 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
Bash# Logi sudo journalctl -u wg-quick@wg0 -n 50 # Konfiguracja sudo wg-quick down wg0 sudo wg-quick up wg0 # Czy port jest wolny sudo 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.