Każdego dnia komputery generują tysiące zapytań DNS, które są wysyłane do Internetu. Niestety, standardowe ustawienia systemu operacyjnego nie zapewniają ochrony tych zapytań, co może prowadzić do naruszenia prywatności, jeśli trafią w niepowołane ręce.
W przeszłości na newsblog.pl poruszałem temat DNSCrypt, które stanowi efektywną metodę zabezpieczania prywatności zapytań DNS. Jednak to nie jedyna dostępna opcja; alternatywą jest przesyłanie zapytań DNS przez protokół TLS.
Metoda 1 – Stubby
Stubby to prosty program dostępny w wybranych dystrybucjach Linuksa, który umożliwia użytkownikom przesyłanie zapytań DNS przez TLS.
Stubby jest kompatybilny z systemami Ubuntu, Debian i Arch Linux. Aby go zainstalować, należy otworzyć terminal, wciskając kombinację klawiszy Ctrl + Alt + T lub Ctrl + Shift + T. Następnie wykonaj polecenia odpowiednie dla używanej dystrybucji Linuksa.
Ubuntu
Aby zainstalować Stubby na Ubuntu, najpierw należy aktywować repozytorium „Universe”. Można to zrobić, wpisując następujące polecenie w terminalu:
sudo add-apt-repository universe
Po dodaniu repozytorium, warto zaktualizować system, aby sprawdzić dostępność nowych pakietów oprogramowania:
sudo apt update
Po zakończeniu aktualizacji, należy zainstalować Stubby za pomocą poniższego polecenia:
sudo apt install stubby
Debian
Dla użytkowników Debiana w wersji 10, Stubby jest dostępny w repozytorium „Main”. Aby go zainstalować, otwórz terminal i użyj polecenia:
sudo apt-get install stubby
Arch Linux
Użytkownicy Arch Linux mogą zainstalować Stubby, jeśli mają aktywne repozytorium „Community”. Aby je włączyć, należy edytować plik /etc/pacman.conf, usuwając znak # przed „Community”, a następnie zaktualizować system.
Po aktywowaniu repozytorium, zainstaluj Stubby za pomocą menedżera pakietów Pacman:
sudo pacman -S stubby
Po skonfigurowaniu Stubby nie trzeba modyfikować plików konfiguracyjnych, ponieważ program domyślnie obsługuje doskonałe usługi DNS z obsługą TLS.
Jeżeli chcesz zmienić usługi DNS, edytuj plik /etc/stubby/stubby.yml.
Ostatnim krokiem jest zmiana domyślnych ustawień DNS w systemie, aby wskazywały na adres 127.0.0.1.
Zmiany w ustawieniach DNS mogą się różnić w zależności od środowiska graficznego, dlatego odsyłam do naszego przewodnika, który szczegółowo opisuje, jak to zrobić.
Po zmianie ustawień DNS na 127.0.0.1, komputer z systemem Linux będzie korzystać z DNS przez TLS!
Metoda 2 – Rozwiązanie Systemd
Choć Stubby jest stosunkowo łatwy w konfiguracji, może nie być dostępny w każdej dystrybucji Linuksa. W takim przypadku warto rozważyć użycie Systemd-resolved, które jest wbudowane w wiele nowoczesnych dystrybucji Linuksa i charakteryzuje się prostotą użytkowania. Przed jego konfiguracją należy jednak wyłączyć aktualnie używany system buforowania DNS, jeśli jest aktywny.
Aby skonfigurować Systemd-resolved, otwórz terminal, wciskając Ctrl + Alt + T lub Ctrl + Shift + T. Następnie wyłącz aktualny system pamięci podręcznej DNS:
Jeśli używasz DNS Masq:
sudo systemctl stop dnsmasq.service
sudo systemctl disable dnsmasq.service -f
Jeżeli korzystasz z NSCD:
sudo systemctl stop nscd.service -f
sudo systemctl disable nscd.service -f
Po wyłączeniu aktualnego dostawcy DNS, przystąp do uruchomienia Systemd-resolved:
sudo systemctl enable systemd-resolved.service -f
sudo systemctl start systemd-resolved.service
Gdy Systemd-resolved jest aktywny, można skonfigurować go do korzystania z DNS przez TLS. W tym celu edytuj plik konfiguracyjny w edytorze Nano:
sudo nano -w /etc/systemd/resolved.conf
W pliku Resolved.conf znajdź linię zaczynającą się od „DNS =” i dodaj tam bezpieczny serwer DNS, na przykład CloudFlare:
DNS=1.1.1.1
Następnie edytuj linię „Domains =”, aby wyglądała następująco:
Domains=~.
Kolejnym krokiem jest edycja ustawienia „DNSOverTLS =”, zmieniając je na:
DNSOverTLS=opportunistic
Po dokonaniu wszystkich zmian zapisz plik, naciskając Ctrl + O, a następnie wyjdź, używając Ctrl + X. Na koniec zrestartuj system DNS, aby aktywować DNS przez TLS z Systemd-resolved:
sudo systemctl restart systemd-resolved