Jak uzyskać ochronę prywatności DNS w systemie Linux za pomocą DNS przez TLS

Każdego dnia komputer wysyła do Internetu tysiące zapytań DNS. W większości przypadków Twój system operacyjny nie chroni tych zapytań, a niewłaściwa osoba z odpowiednią wiedzą może naruszyć Twoją prywatność.

W przeszłości w newsblog.pl mówiłem o DNSCrypt. To doskonały sposób na uzyskanie ochrony prywatności DNS. Jednak nie jest to jedyne dostępne rozwiązanie. Jak się okazuje, inną opcją jest wysłanie DNS przez TLS.

Metoda 1 – Gruby

Stubby to łatwy program, który działa w niektórych dystrybucjach Linuksa, który umożliwia użytkownikom wysyłanie zapytań DNS przez TLS.

Narzędzie Stubby działa w systemach Ubuntu Linux, Debian Linux i Arch Linux. Aby zainstalować to narzędzie, uruchom okno terminala, naciskając Ctrl + Alt + T lub Ctrl + Shift + T.na klawiaturze. Następnie postępuj zgodnie z instrukcjami wiersza polecenia, które odpowiadają aktualnie używanemu systemowi operacyjnemu Linux.

Ubuntu

Aby zainstalować Stubby na Ubuntu, musisz najpierw włączyć repozytorium oprogramowania Ubuntu „Universe”. Aby to zrobić, użyj polecenia apt-add-repository w oknie terminala.

sudo add-apt-repository universe

Po uruchomieniu polecenia add-apt-repository nadszedł czas na użycie narzędzia do aktualizacji, aby system Ubuntu sprawdził dostępność aktualizacji oprogramowania. Pobierze również informacje o wersji do źródła oprogramowania Universe i doda je do twojego systemu.

sudo apt update

Po zakończeniu polecenia aktualizacji użyj polecenia Apt install, aby zainstalować Stubby w systemie operacyjnym Ubuntu Linux.

sudo apt install stubby

Debian

W Debianie, dla wersji 10, „Sid” narzędzie Stubby można znaleźć w repozytorium oprogramowania „Main”. Aby go zainstalować, uruchom okno terminala i użyj poniższego polecenia Apt-get.

sudo apt-get install stubby

Arch Linux

Użytkownicy Arch Linux mogą zainstalować Stubby, jeśli mają skonfigurowane repozytorium oprogramowania „Społeczność”. Aby to ustawić, wyedytuj /etc/pacman.conf, przewiń do końca pliku, usuń symbole # z przodu „Społeczność” i zaktualizuj swój system.

Po skonfigurowaniu „Społeczność” zainstaluj aplikację Stubby za pomocą menedżera pakietów Pacman.

sudo pacman -S stubby

Teraz, gdy aplikacja Stubby jest skonfigurowana, nie ma potrzeby modyfikowania żadnego z plików konfiguracyjnych, ponieważ Stubby ma wstępnie ustawione doskonałe usługi DNS, które obsługują TLS.

Uwaga: jeśli chcesz zmienić usługi DNS, wyedytuj /etc/stubby/stubby.yml.

Ostatnim krokiem konfiguracji DNS przez TLS za pomocą Stubby jest zmiana domyślnych ustawień DNS z dowolnego adresu, którego obecnie używasz, na adres 127.0.0.1.

Zmiana ustawień DNS różni się w zależności od używanego środowiska graficznego Linux, więc nie będziemy tego omawiać w tym poście. Zamiast tego przejdź do naszego przewodnika, jak zmienić ustawienia DNS, aby uzyskać więcej informacji.

Gdy ustawienia DNS zostaną zmienione na 127.0.0.1, Twój komputer z systemem Linux powinien używać DNS przez TLS!

Metoda 2 – Rozwiązanie Systemd

Chociaż narzędzie Stubby jest łatwe w konfiguracji i sprawia, że ​​wysyłanie DNS przez TLS w systemie Linux jest dość proste, niestety nie działa w każdej dystrybucji.

Świetną alternatywą dla programu Stubby do konfigurowania DNS przez TLS w systemie Linux jest wykorzystanie systemu buforowania DNS z rozpoznaniem Systemd. Głównym tego powodem jest to, że jest wbudowany w system inicjujący Systemd, z którego korzysta już większość systemów operacyjnych Linux, i jest łatwy w użyciu. Pamiętaj jednak, że przed skonfigurowaniem Systemd-resolved dla DNS over TLS, musisz wyłączyć system pamięci podręcznej DNS, z którego obecnie korzystasz, na rzecz Systemd-resolved.

Aby skonfigurować system rozpoznawany przez Systemd, uruchom terminal wiersza poleceń, naciskając Ctrl + Alt + T lub Ctrl + Shift + T.na klawiaturze. Następnie użyj polecenia systemctl, aby wyłączyć używany system pamięci podręcznej DNS.

Uwaga: jeśli nie używasz DNS Masq lub NSCD, prawdopodobnie używasz już Systemd-resolved i nie musisz niczego wyłączać.

DNS Masq

sudo systemctl stop dnsmasq.service
sudo systemctl disable dnsmasq.service -f

NSCD

sudo systemctl stop nscd.service -f
sudo systemctl disable nscd.service -f

Po wyłączeniu domyślnego dostawcy DNS na komputerze z systemem Linux, czas przejść na rozwiązanie Systemd. Aby to zrobić, ponownie użyj polecenia systemctl.

sudo systemctl enable systemd-resolved.service -f
sudo systemctl start systemd-resolved.service

Mając narzędzie włączone przez Systemd, możemy skonfigurować program do korzystania z DNS przez TLS. Aby rozpocząć, uruchom plik konfiguracyjny narzędzia w Nano.

sudo nano -w /etc/systemd/resolved.conf

Edytuj plik Resolved.conf za pomocą Nano i przewiń w dół do DNS =.

Po znaku = dodaj bezpieczny serwer DNS z obsługą TLS, taki jak prywatny serwer DNS CloudFlare. Powinien wyglądać następująco:

DNS=1.1.1.1

Następnie przejdź do Domains = i zmień go tak, aby wyglądał jak poniższy kod.

Domeny = ~.

Po „Domains” przejdź w dół do DNSOverTLS = i zmień go, aby wyglądał jak poniższy kod.

DNSOverTLS = oportunistyczny

Zapisz zmiany w Resolved.conf, naciskając Ctrl + O, a następnie wyjdź za pomocą Ctrl + X i zrestartuj system DNS, aby włączyć DNS przez TLS z Systemd-resolved!

sudo systemctl restart  systemd-resolved