
WireGuard ® to niezwykle prosta, ale szybka i nowoczesna sieć VPN, która wykorzystuje najnowocześniejszą kryptografię . Ma być szybszy , prostszy , mniej zasobożerny i bardziej przydatny niż IPsec. Wireguard jest dużo bardziej wydajny niż OpenVPN. WireGuard został zaprojektowany jako sieć VPN ogólnego przeznaczenia do uruchamiania na wbudowanych interfejsach i serwerach, nadająca się do wielu różnych zastosowań. Początkowo wydany dla jądra Linuksa, teraz jest wieloplatformowy (Windows, macOS, BSD, iOS, Android) i można go szeroko wdrażać. Obecnie jest intensywnie rozwijany, ale już teraz może być uważany za najbezpieczniejsze, najłatwiejsze w użyciu i najprostsze rozwiązanie VPN.
Niedawno Wireguard (wersja 1.0.0) został włączony do jądra Linuksa (kernel 5.6), a niewiele wcześniej przeszedł audyt bezpieczeństwa, który nie wykazał żadnych podatności. Dostępne są też klienty Wireguarda na Windowsa, Linuksa (różne dystrybucje), Androida, iOSa, czy nawet OpenWRT.
W skrócie mamy tutaj tylko bezpieczne ustawienia i dodatkowo bardzo dużą wydajność (zarówno jeśli chodzi o zestawianie połączeń jak i samo późniejsze działanie).
- Ubuntu> = 16.04
- Debian 10
- Fedora
- CentOS
- Arch Linux
Pobierz i uruchom skrypt. Odpowiedz na pytania zadane przez skrypt, a on zajmie się resztą.
sudo apt update
sudo apt upgrade
sudo apt install curl
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
./wireguard-install.sh
( UWAGA: skrypt nie działa na VPS z LXC w takim przypadku użyj Instalatora WireGuard Road Warior dla Ubuntu, Debian, AlmaLinux, Rocky Linux, CentOS i Fedora.
Ten skrypt pozwoli Ci skonfigurować własny serwer VPN w nie więcej niż minutę, nawet jeśli wcześniej nie korzystałeś z WireGuard. Został zaprojektowany tak, aby był jak najbardziej dyskretny i uniwersalny.
Uruchom skrypt i podążaj za asystentem:
wget https://git.io/wireguard -O wireguard-install.sh && bash wireguard-install.sh
Po zakończeniu możesz uruchomić go ponownie, aby dodać więcej użytkowników, usunąć niektórych z nich, a nawet całkowicie odinstalować WireGuard).
Skrypt zainstaluje WireGuard (moduł jądra i narzędzia) na serwerze, skonfiguruje go, utworzy usługę systemd i plik konfiguracyjny klienta. Skrypt jest dość oczywisty. Po uruchomieniu skrypt zapyta o kilka podstawowych informacji:
- Po wyświetleniu monitu, jak pokazano poniżej, jeśli wyświetlany adres IP jest zgodny z adresem IP VPS, odpowiedz, naciskając Enter. Jeśli nie, zmień go zgodnie z adresem IP VPS.
- naciśnij Enter
- naciśnij Enter
- naciśnij Enter
- naciśnij Enter
- Określ port WireGuard, którego chcesz użyć. Lub naciśnij, Enterjeśli chcesz używać wyświetlonego portu
- W tej sekcji, jeśli chcesz używać Google DNS, zamień go na 8.8.8.8
- Jeśli chcesz korzystać z Google DNS, zamień go na 8.8.4.4
- naciśnij Enter
- Wpisz nazwę konta dla klienta, na przykład bustami
- naciśnij Enter
- naciśnij Enter
- Jak widzisz, na ekranie wyświetla się QR Code, który zawiera konfigurację dla właśnie utworzonego konta (bustami). Możesz zaimportować ten kod QR do aplikacji WireGuard na Androida, używając funkcji SCAN FROM QR CODE , jak pokazano poniżej.
- Na ekranie jest również wyświetlana lokalizacja pliku konfiguracyjnego klienta. Możesz pobrać plik konfiguracyjny na komputer PC za pomocą WinSCP lub na telefon z Androidem za pomocą AndFTP.
- Uruchom następujące polecenie, aby ponownie uruchomić VPS
restart
Sprawdź działanie usługi systemd:
systemctl status wg-quick@wg0
Powinno wyjść coś takiego:
Dodanie kolejnego klienta do serwera
- Uruchom następujące polece:
./wireguard-install.sh
- Wpisz 1, a następnie naciśnijEnter
- Utwórz nazwę konta WireGuard
- naciśnij Enter
- naciśnij Enter
- Wyświetlone zostaną informacje o kodzie QR, a także lokalizacja pliku konfiguracyjnego konta
Usuwanie konta WireGuard
Jeśli chcesz usunąć konto WireGuard, które utworzyłeś, na przykład chcesz usunąć konto o nazwie bustami, wykonaj następujące czynności.
- Uruchom następujące polecenie
./wireguard-install.sh
- Wpisz 2, a następnie naciśnijEnter
- Wybierz konto, które chcesz usunąć. Bo chcę usunąć konto z nazwą bustami , więc wpisuję 1 a następnie naciśnij przycisk Enter
Jak odinstalować WireGuard
Jeśli z jakiegoś powodu chcesz odinstalować WireGuard ze swojego VPS, wykonaj następujące czynności.
- Uruchom następujące polecenie
./wireguard-install.sh
- Wpisz 3, a następnie naciśnijEnter
- Usuń n , wpisz y , a następnie naciśnijEnter
Skonfiguruj klienta systemu Windows i Androida
Pobierz WireGuard dla Windows stąd . Zainstaluj to. Teraz kliknij import tunelu z pliku i wybierz plik .conf.
Po zaimportowaniu pliku konfiguracyjnego kliknij aktywuj, aby nawiązać bezpieczny tunel VPN.
Teraz przygotujmy się na Androida. Przejdź do sklepu Play i pobierz aplikację WireGuard od zespołu programistów WireGuard. Otwórz aplikację i naciśnij przycisk „+” w prawym dolnym rogu i wybierz plik .conf. Teraz kliknij suwak. Twoja sieć VPN jest połączona.
Pamiętaj żeby odinstalować wszystkie inne klienty VPN z telefonu w przeciwnym przypadku WireGuard na telefonie nie uruchomi się a aplikacja wyrzuci błąd autoryzacji usługi VPN przez użytkownika.
Skonfiguruj klienta dla systemu Linux
Zainstaluj wireguard poleceniem:
sudo apt install wireguard
Wklej zawartość pliku konfiguracyjnego klienta (tego który wygenerowałeś przy instalacji na serwerze) do pliku wg0.conf
sudo nano /etc/wireguard/wg0.conf
[Interface] PrivateKey = YCNNNgAGfrTHeXLBIvHP55446kGdJLsde/zJsiJ7NWk= Address = 10.66.66.2/32,fd42:42:42::2/128 DNS = 1.1.1.1,8.8.8.8 [Peer] PublicKey = /qhdc8sdrYUJ0uAkoYm7aienU5QaGnhrdH6--Wxu8xI= PresharedKey = a0LDmCf+fHbrxKE7xjIYrTbj75Z8vSAukFJrdbrN5Lw= Endpoint = 87.22.113.121:61934 AllowedIPs = 0.0.0.0/0,::/0
apt-get install linux-headers-$(uname -r)
Zainstaluj bibliotekę openresolv:
sudo apt install openresolv
Włącz usługę wireguard
sudo systemctl enable wg-quick@wg0
Uruchom połączenie z serwerem:
sudo systemctl start wg-quick@wg0
Sprawdź połączenie z serwerem
sudo systemctl status wg-quick@wg0
● wg-quick@wg0.service - WireGuard via wg-quick(8) for wg0 Loaded: loaded (/lib/systemd/system/wg-quick@.service; enabled; vendor preset: enabled) Active: active (exited) since Thu 2021-09-09 18:00:55 CEST; 33s ago Docs: man:wg-quick(8) man:wg(8) https://www.wireguard.com/ https://www.wireguard.com/quickstart/ https://git.zx2c4.com/wireguard-tools/about/src/man/wg-quick.8 https://git.zx2c4.com/wireguard-tools/about/src/man/wg.8 Process: 3845 ExecStart=/usr/bin/wg-quick up wg0 (code=exited, status=0/SUCCESS) Main PID: 3845 (code=exited, status=0/SUCCESS) wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] ip -6 route add ::/0 dev wg0 table 51820 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] ip -6 rule add not fwmark 51820 table 51820 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] ip -6 rule add table main suppress_prefixlength 0 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3977]: [#] ip6tables-restore -n wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] ip -4 route add 0.0.0.0/0 dev wg0 table 51820 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] ip -4 rule add not fwmark 51820 table 51820 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] ip -4 rule add table main suppress_prefixlength 0 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3845]: [#] sysctl -q net.ipv4.conf.all.src_valid_mark=1 wrz 09 18:00:55 SATELLITE-L50-B wg-quick[3995]: [#] iptables-restore -n wrz 09 18:00:55 SATELLITE-L50-B systemd[1]: Finished WireGuard via wg-quick(8) for wg0. ~
Zatrzymaj połączenie z serwerem
sudo systemctl stop wg-quick@wg0
W ten sposób możesz użyć swojego VPS, aby wdrożyć dla siebie osobistą sieć VPN. WireGuard jest niezwykle szybki do łączenia i przeglądania.
Wireguard wycina adresy DNS z pliku /etc/resolv.conf. Przez co np. apt update nie działa. Poza tym wszystko śmiga 🙂
Zapewniam że komenda apt update działa również podczas połączenia VPN na Wireguard.