WireHole – VPN z funkcją blokowania reklam

Wstęp

WireHole to połączenie WireGuard, Pi-hole i Unbound w projekcie docker-compose umożliwiające użytkownikom szybkie i łatwe tworzenie tunelu WireGuard VPN z funkcjami blokowania reklam dzięki Pi-hole, buforowanie DNS i dodatkowe opcje prywatności za pośrednictwem Unbound.

Wymagania wstępne

1. Zainstalowany Docker Engine i Docker Compose

Instalacja

Klonujemy repozytorium GIT, przechodzimy do folderu wirehole i edytujemy plik docker-compose.yml:

git clone https://github.com/IAmStoxe/wirehole.git
cd wirehole
sudo nano docker-compose.yml

W sekcji wireguard zmieniamy strefę czasową i ustalamy liczbę klientów, którzy będą mogli łączyć się przez VPN. Jeżeli w przyszłości chciałbyś dodać więcej klientów, edytujesz ten plik i ponownie uruchamiasz docker compose(sudo docker compose up -d). Poniżej strefy czasowej znajduje się numer portu, z którego korzysta WireGuard. Pamiętaj aby otworzyć port UDP 51820.

W sekcji pihole ponownie zmieniamy strefę czasową:

Zamykamy plik jednocześnie go zapisując wciskając Ctrl+X, Y, Enter i uruchamiamy docker compose:

sudo docker compose up -d

Łączenie klienta z VPN

Po udanej instalacji pobieramy pliki konfiguracyjne, które umożliwią połączenie się z VPN. Użyjemy do tego programu WinSCP. Po instalacji oprogramowania łączymy się do serwera protokołem SFTP. Jako nazwę hosta podajemy adres IP naszego serwera, numer portu zostawiamy domyślny (22), wpisujemy nazwę użytkownika i hasło. Jeżeli logujesz się do serwera kluczem SSH to zamiast hasła klikasz Zaawansowane, Uwierzytelnianie i wskazujesz lokalizację pliku klucza prywatnego.

Po zalogowaniu się do serwera przechodzimy do folderu wirehole/wireguard i kopiujemy foldery peerx:

Pobieramy i instalujemy aplikację WireGuard:

https://www.wireguard.com/install/

Po instalacji uruchamiamy program, klikamy Importuj tunel z pliku, wskazujemy plik konfiguracyjny peerx.conf i to wszystko – po aktywacji połączenia jesteśmy połączeni z VPN:

W przypadku kiedy chcemy połączyć się z VPN w telefonie, pobieramy aplikację WireGuard dla Android/iOS, następnie w celu konfiguracji połączenia skanujemy kod QR z pliku peerx.png.

Dostęp do PiHole

Po połączeniu z WireGuard przejdź do http://10.2.0.100/admin

Hasło (chyba że ustawiłeś je w docker-compose.yml) jest puste.