DNS-over-TLS

Wstęp

Tradycyjne zapytania i odpowiedzi DNS są przesyłane przez protokół UDP lub TCP bez szyfrowania. Jest to narażone na podsłuchiwanie i podszywanie się (w tym filtrowanie internetowe przez DNS). Odpowiedzi pochodzących od resolverów rekurencyjnych są najbardziej narażone na niepożądane lub szkodliwe zmiany, a komunikacja między resolvemi rekurencyjnymi a wiarygodnymi serwerami nazw często obejmuje dodatkową ochronę.

Aby rozwiązać te problemy, Google Public DNS zapewnia rozdzielczość DNS przez połączenia TCP szyfrowane przy użyciu protokołu TLS, jak określono w RFC 7858. Tryb DNS-over-TLS zwiększa prywatność i bezpieczeństwo danych między klientami a rozwiązaniami. Uzupełnia to DNSSEC i chroni wyniki sprawdzone przez DNSSEC przed modyfikacją lub podszywaniem się pod klienta.

Jak to działa

System kliencki może używać DNS-over-TLS w jednym z 2 profili: ścisłej lub osobistej. W ramach ścisłego profilu prywatności użytkownik konfiguruje nazwę serwera DNS (nazwę domeny uwierzytelniania w RFC 8310) dla usługi DNS-over-TLS, a klient musi utworzyć bezpieczne połączenie TLS na porcie 853 z serwerem DNS. Jeśli nie uda się nawiązać bezpiecznego połączenia, jest to poważny błąd i klient nie uzyska żadnej usługi DNS.

W profilu prywatności o Narzędzie do rozpoznawania klienta próbuje nawiązać bezpieczne połączenie przez port 853 z określonym serwerem DNS. Jeśli nawiązać bezpieczne połączenie, zapewni to prywatność zapytań użytkownika pochodzących z pasywnych obserwatorów ścieżki. Ponieważ klient nie weryfikuje autentyczności serwera, nie jest on zabezpieczony przed aktywnym ataku. Jeśli klient nie może nawiązać bezpiecznego połączenia przez port 853, korzysta z komunikacji z serwerem DNS przez standardowy port DNS 53 przez UDP lub TCP bez dodatkowej ochrony. Wykorzystywanie prywatności operatywnej ma na celu wspieranie przyrostowego wdrażania zwiększonej prywatności z powodu powszechnego zastosowania rygorystycznego profilu prywatności.

Jeśli używasz rygorystycznego profilu prywatności, resolvery tworzą połączenie DNS-over-TLS, wykonując te czynności.

  1. Program do przenoszenia treści jest skonfigurowany przy użyciu nazwy resolvera DNS-over-TLS dns.google.
  2. Narzędzie do rozpoznawania sprzężenia uzyskuje adresy IP dns.google na potrzeby lokalnego resolvera DNS.
  3. Program do przenoszenia treści tworzy parę TCP z numerem 853 pod tym adresem IP.
  4. Program do przenoszenia nazw elementów inicjujących rozpoczyna uzgadnianie połączenia TLS z publicznym resolverem DNS Google.
  5. Publiczny serwer DNS Google zwraca certyfikat TLS wraz z pełnym łańcuchem certyfikatów TLS, aż do zaufanego certyfikatu głównego.
  6. Narzędzie do rozpoznawania wycinków weryfikuje tożsamość serwera na podstawie przedstawionych certyfikatów.
    • Jeśli nie można zweryfikować tożsamości, rozpoznanie nazwy DNS nie powiedzie się, a resolver zwróci błąd.
  7. Po nawiązaniu połączenia przy użyciu protokołu TLS resolver ma bezpieczną ścieżkę komunikacji między publicznym serwerem DNS Google.
  8. Rozpoznawanie treści może teraz wysyłać zapytania DNS i otrzymywać odpowiedzi przez połączenie.

Gdy używany jest oporny profil prywatności, klient najpierw próbuje utworzyć bezpieczne połączenie TLS z serwerem. Odbywa się to podobnie jak powyżej, ale z jedną ważną różnicą – klient nie przeprowadza weryfikacji certyfikatu. Oznacza to, że tożsamość serwera nie jest zaufana. Jeśli nie można nawiązać połączenia TLS z portem 853 z serwerem, resolver wraca do komunikacji z serwerem DNS przez port 53.

Prywatność

Nasza polityka prywatności dotyczy usługi DNS-over-TLS.

27 czerwca 2019 roku ponownie włączyliśmy podsieć klienta EDNS (ECS) dla usługi DNS-over-TLS. ECS zostało wyłączone w momencie uruchomienia usługi.

Pomoc w zakresie standardów

Publiczny serwer DNS Google implementuje tryb DNS-over-TLS w oparciu o RFC 7858. Ponadto obsługujemy następujące zalecenia, aby zapewnić usługę DNS o wysokiej jakości i krótkim czasie oczekiwania.

Zacznij korzystać

Wykonaj te instrukcje, aby skonfigurować go na urządzeniu z Androidem 9 (Pie) lub nowszym.

Tryb DNS-over-TLS jest też obsługiwany tylko w przypadku usługi publicznej DNS64 tylko dla IPv6. Nie zalecamy konfigurowania DNS64 na urządzeniu mobilnym, które będzie przyłączone do wielu sieci, ponieważ DNS64 działa tylko wtedy, gdy jest dostępny IPv6.