Generator konfiguracji WireGuard
Generuj pliki konfiguracyjne serwera i klienta WireGuard.
Wejście
Wyjście
Instrukcja
Co to jest WireGuard?
WireGuard to nowoczesny, wydajny protokół VPN zaprojektowany z myślą o prostocie i szybkości. W przeciwieństwie do starszych protokołów, takich jak OpenVPN czy IPsec, WireGuard wykorzystuje najnowocześniejszą kryptografię (Curve25519 do wymiany kluczy, ChaCha20 do szyfrowania i Poly1305 do uwierzytelniania) i działa z minimalnym kodem — około 4000 linii w porównaniu do setek tysięcy w rozwiązaniach przestarzałych. Ten oszczędny projekt ułatwia audyt, przyspieszą nawiązywanie połączeń i jest bardziej niezawodny w przypadku zmian sieci, takich jak przełączanie się między Wi-Fi a danymi mobilnymi.
WireGuard działa poprzez tworzenie zaszyfrowanych tuneli punkt-punkt między serwerem a jednym lub większą liczbą klientów. Każda strona posiada klucz prywatny i zna klucz publiczny swoich partnerów. Po skonfigurowaniu ruch przepływa przez tunel bezproblemowo, a protokół automatycznie obsługuje uścisk dłoni, rotację kluczy i pakiety keepalive.
Opis narzędzia
To narzędzie generuje gotowe do użytku pliki konfiguracyjne WireGuard zarówno po stronie serwera, jak i klienta. Automatycznie tworzy kryptograficznie ważne pary kluczy X25519, buduje prawidłowo sformatowane pliki .conf i umożliwia zarządzanie wieloma klientami z jednego interfejsu. Możesz pobrać każdy plik konfiguracyjny bezpośrednio lub zeskanować kod QR w celu szybkiej konfiguracji urządzenia mobilnego.
Przykłady
Wyjście konfiguracji serwera:
[Interface]
PrivateKey = aGVsbG93b3JsZC4uLi4uLi4uLi4uLi4uLi4uLi4=
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT
SaveConfig = true
[Peer]
PublicKey = Y2xpZW50cHVibGlja2V5Li4uLi4uLi4uLi4uLi4=
AllowedIPs = 10.0.0.2/32Wyjście konfiguracji klienta:
[Interface]
PrivateKey = Y2xpZW50cHJpdmF0ZWtleS4uLi4uLi4uLi4uLi4=
Address = 10.0.0.2/32
DNS = 1.1.1.1, 1.0.0.1
[Peer]
PublicKey = c2VydmVycHVibGlja2V5Li4uLi4uLi4uLi4uLi4=
Endpoint = vpn.example.com:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25Funkcje
- Generuje kryptograficznie ważne pary kluczy X25519 bezpośrednio w przeglądarce przy użyciu Curve25519
- Tworzy pliki
.confdo pobrania zarówno dla serwera, jak i wszystkich klientów - Wyświetla kody QR dla konfiguracji klientów, umożliwiając natychmiastową konfigurację urządzeń mobilnych
- Obsługuje wielu klientów z automatycznym przydzielaniem adresów IP
- Konfigurowalne MTU, hooki PostUp/PostDown, DNS i PersistentKeepalive dla każdego klienta
Wyjaśnienie opcji
- Nazwa serwera — etykieta używana w komentarzu pliku konfiguracyjnego i nazwie pliku do pobrania
- Port serwera — port UDP, na którym WireGuard nasłuchuje (domyślnie: 51820)
- Adres IP serwera — adres podsieci VPN dla interfejsu serwera (np. 10.0.0.1/24)
- Endpoint serwera — publiczna nazwa hosta lub IP oraz port, z którymi łączą się klienci
- MTU — rozmiar maksymalnej jednostki transmisji; pozostaw puste, aby użyć domyślnego systemu (zwykle 1420)
- PostUp / PostDown — polecenia shell wykonywane po włączeniu lub wyłączeniu interfejsu (powszechnie używane dla reguł NAT iptables)
- Allowed IPs — zakresy IP, które klient kieruje przez tunel;
0.0.0.0/0, ::/0kieruje cały ruch - DNS — serwery DNS, które klient używa podczas połączenia
- PersistentKeepalive — interwał w sekundach dla pakietów keepalive, przydatny dla klientów za NAT (domyślnie: 25)
Przypadki użycia
- Konfiguracja samodzielnie hostowanego serwera VPN na instancji w chmurze w celu szyfrowania całego ruchu z laptopów i telefonów
- Łączenie zdalnych sieci biurowych poprzez bezpieczny tunel WireGuard typu site-to-site
- Generowanie konfiguracji klientów z kodami QR w celu szybkiego wdrażania członków zespołu lub urządzeń mobilnych