Kategorie
Sprzęt

Bezpieczny DNS

Ostatnio zaktualizowany

Zapewne jesteś tego świadomy, że bardzo ważne jest, aby strona, którą odwiedzasz, a szczególnie ta, na której wprowadzasz jakiekolwiek dane (w tym login i hasło) zabezpieczona była tzw. zieloną kłódką, czyli serwowana przez https:// przed nazwą witryny.

HTTPS staje się swojego rodzaju normą. Coraz to więcej przeglądarek już teraz ostrzega cię, jeżeli odwiedzasz stroną poprzez nieszyfrowane połączenie, a w przyszłości większość z nich nie pozwoli ci nawet na nie wejść.

Dzięki HTTPS strony wyposażone są w certyfikat pozwalający w szyfrowaniu naszego połączenia. Dane, które wprowadzamy na stronie, czy to formularze, czy po prostu hasło do naszego konta wysyłane jest w sposób nieczytelny dla osoby postronnej.

W przypadku połączeń nieszyfrowanych HTTP, ktokolwiek pomiędzy tobą, a stroną docelową, może „podsłuchać” co na danej stronie robisz. Do tego celu nie trzeba zbyt dużej wiedzy a jedynie odpowiednie oprogramowanie.

Osobą, która może cię podsłuchiwać, czy tego chcesz, czy nie, jest przede wszystkim twój operator dostarczający połączenie internetowe. W zależności, jakie zobowiązania na niego nakłada lokalne prawo, mimo tego czy chce, czy nie, zmuszony jest przekazywać “twoje” informacje do odpowiednich organów państwowych.

I tak powstaje globalny program inwigilacji, który w połączeniu z poszczególnymi reżimami na świecie, decyduje, co jego obywatele mogą, a co nie mogą zobaczyć w internecie.

Stąd też przedstawione zostało połączenie HTTPS, dzięki czemu, wszelkie dane wysyłane w kierunku witryny internetowej są szyfrowane nie do poznania. O ile zaczęło się to od instytucji bankowych, to nabrało to tępa i strony, takie jak moja, serwowane są przez bezpieczne połączenie. Jeszcze kilka lat temu, certyfikaty były drogą inwestycją i nieopłacalną dla szarego człowieka. W miarę popularyzacji standardu i orientowania użytkowników w kierunku ich własnego bezpieczeństwa wszystko zaczęło tanieć. Certyfikat dla strony internetowej można już mieć praktycznie za darmo i to wystawione przez bardzo zaufane instytucje. Na mojej stronie opisywałem, jak można uzyskać w bardzo prosty sposób, za darmo, certyfikat i serwować domyślnie naszą stronę przez HTTPS (Certyfikat SSL dla twojej strony WWW).

W momencie odwiedzenia strony poprzez szyfrowane połączenie, oprócz ciągu znaków, potencjalna osoba, która nas podsłuchuje, nie zobaczy nic więcej — no prawie.

Strona internetowa i adres do niej to jedno, jednakże w internecie wszystko zaczyna się od numerków. Te oto numerki to adresy IP, które odpowiadają serwerom za nimi zlokalizowanymi. Pod jednym adresem IP, na jednym serwerze (lub więcej niż jednym) może znajdować się wiele stron. Aby przejść na stronę, którą oczekujemy, musimy podać odpowiednią nazwę — nazwę strony internetowej — domenę. Bazując na nazwie, serwer przekaże nas do tej, a nie innej strony.

I tak chcąc przejść na stronę Google wpisujemy google.com (nazwa, domena), a nie 216.58.206.110 (IP).

Serwer znajdujący się po drugiej stronie numerków, na bazie nazwy — domeny, którą wprowadziliśmy, przekazuje nas tam, gdzie chcemy.

I tak z wykorzystaniem połączenia szyfrowanego lądujesz na stronie https://www.google.com i możesz bezpiecznie wyszukiwać, to co chcesz. To, co wpisujesz w wyszukiwarce, nie jest dostępne w łatwy sposób dla osób ciebie podsłuchujących. Jednakże to nie znaczy, że dane osoby nie wiedzą, co robisz i jaką stronę odwiedzasz.

Otóż w momencie, gdy wpisujesz w przeglądarce internetowej google.com, odpowiednie zapytanie ląduje do tak zwanych serwerów nazw (dns), które odczytują tekst (nazwę — domenę) i informują, z jakim serwerem (adresem IP) należy cię połączyć.

Gdy wysyłasz zapytanie do serwera nazw, a nim wylądujesz na stronie docelowej, każdy, kto jest w stanie ciebie podsłuchać, jest w stanie zobaczyć, gdzie zmierzasz i jaką stronę odwiedzasz. Mimo tego, że nie będą w stanie powiedzieć, co dalej robisz na stronie, to co odwiedziłeś, jest dla nich podstawą do dalszych działań.

Słyszałeś na pewno o osobie oskarżonej o terroryzm, tylko dlatego że weszła (świadomie lub nie) na stronę, która uznana została za niedozwoloną.

Dlaczego?

Otóż zapytanie do serwera nazw wysyłane jest w postaci nieszyfrowanej. Każde szyfrowanie spowalnia ruch w internecie (było tak jeszcze kilka lat temu), w związku z tym, aby szybko przekierować się na serwer docelowy, wszystkie zapytania wysyłane są w postaci czystego tekstu, który może zostać w łatwy sposób przeczytany przez serwery pośredniczące, jak również inne osoby na drodze do miejsca docelowego.

Jeszcze kilka lat temu, połączenie z zieloną kłódką (HTTPS) nie było tak popularne wśród szarych użytkowników i właścicieli małych stron internetowych. Wiązało się to nie tylko z kosztami, ale również tym, że potrzeba było nieco większej mocy obliczeniowej, aby taki połączenie obsłużyć. Strony przez HTTPS na słabych serwerach ładowały się stanowczo dłużej a niżeli strony serwowane przez standardowy protokół HTTP.

Wszystko na szczęście się zmieniło. Różnica w prędkościach połączeń nieszyfrowanych (HTTP) i szyfrowanych (HTTPS) jest naprawdę marginalna. I mimo tego, że serwer, na którym strona się znajduje, nadal odgrywa znaczącą rolę, to nawet firmy takie jak Google zapowiedziały, że w 2020, to właśnie bezpieczne strony będą wiodły prym w wynikach wyszukiwania.

Mimo dużego skoku w technologii i świadomości użytkowników nadal większość z nas jest nieświadoma faktu, że strony, które odwiedzamy — adresy, są widoczne dla wszystkich, gdyż serwery nazw (DNS) działają w sposób „prosty” niezmiennie od lat.

Bez względu na to, czy za serwer nazw wybierzesz ten, dostarczony jest przez twojego operatora, czy jako świadomy użytkownik zmienisz go na Google (tj. 8.8.8.8), CloudFlare (1.1.1.1) czy OpenDNS, to nadal wszystko jest widoczne dla wścibskich oczu. Stąd też świadomość użytkowników zaczyna być kreowana przez duże firmy, wprowadzając szyfrowanie do poziomu serwerów nazw, zwiększając tym samym bezpieczeństwo użytkowników.

Bezpieczeństwo użytkowników jest teraz na modzie i słusznie!

Ostatnio Mozilla wypuściła informację, która szybko została podchwycona przez wszystkie portale. Otóż w ich przeglądarce internetowej Firefox włączyli oni domyślnie (oficjalne wejdzie w przeciągu następnych tygodni) szyfrowanie serwerów nazw DNS przy pomocy podobnej metody do stron serwowanych przez HTTPS. Dlatego też nazwane zostało to jako DNS over HTTPS, czyli serwer nazw DNS obsługiwany przez bezpieczne połączenie HTTPS, w skrócie DoH.

W związku z tym, zaczynając od wpisania adresu google.com aż do wylądowania na stronie docelowej, wszystko jest szyfrowane (no prawie wszystko). Wścibskie oczy zobaczą, że coś odwiedzasz w internecie, jednak ograniczone to będzie tylko do adresu IP serwera. Z reguły jeden adres IP obsługiwać może multum stron internetowych, więc określenie dokładnie jaką stronę odwiedzasz, nie jest już takie łatwe.

Fakt, że Firefox został wzbogacony w tę funkcję, która dodatkowo została włączona domyślnie (czytaj dalej) dla wszystkich stron, które wpisujemy w pasku adresu, nie znaczy, że masowo mamy porzucać nasze „niebezpieczne” przeglądarki i instalować „bezpieczną” przeglądarkę Firefox.

Nie wszystko jest takie różowe, jak myślicie.

Po pierwsze, Mozilla Firefox dopiero wprowadza to do swojego programu. Na pierwszy ogień, królikami doświadczalnymi zostali Amerykanie, reszta musi sobie poczekać (sic!). Dodatkowo cała usługa bazować będzie początkowo na serwerach nazw dostarczonych od CloudFlare.

Serwery nazw od CloudFlare są obecnie jednymi z najszybszych serwerów na rynku, a dodatkowo oferują dodatkowe zalety.

A co w przypadku, gdy chcemy użyć DoH już dzisiaj i zabezpieczyć swoją przeglądarkę przed wścibskimi oczami, szczególnie w krajach, które zaczynają śledzić użytkownika na każdym kroku?

Nie mówię tutaj tylko o Polsce, ale również Wielkiej Brytanii. Po wystąpieniu z Unii Europejskiej i zakończeniu okresu przejściowego wiele się może zmienić.

Otóż szyfrowanie DNS możemy włączyć już dzisiaj w naszej przeglądarce na naszym komputerze.

Mozilla Firefox

Jeżeli nie mieszkamy w stanach lub nie chcemy czekać, aż Mozilla udostępni oficjalnie DoH w naszej przeglądarce, możemy wykonać poniższe kroki i cieszyć się zwiększonym bezpieczeństwem już dzisiaj.

  • Przechodzimy do Menu przeglądarki, klikając na trzy poziome linie w prawym górnym rogu, następnie z listy wybierając opcję Ustawienia (Preferences), lub w pasku adresu wpisujemy about:preferences
  • Następnie przesuwamy stronę do samego dołu i przechodzimy do Ustawień Sieci (Network Setting). Na samum dole w oknie Ustawienia połączenia (Connection Settings) zaznaczymy Uruchom DNS przez HTTPS (Enable DNS over HTTPS) i pozostawiamy Cloudflare jako domyślnego usługodawcę.

Google Chrome i Microsoft Edge (Chromium)

W przypadku Chrome (oraz Edge bazującym na Chromium) musimy włączyć dodatkową, zaawansowaną opcję (flagę), aby uruchomić DoH.

  • W tym celu w pasku adresu wpisujemy i przechodzimy na chrome://flags/#dns-over-https (Chrome) lub edge://flags/#dns-over-https (Edge)
  • Następnie przy fladze Bezpiecznego DNS (Secure DNS lookup) zmieniamy status z Domyślny (Default) na Włączony (Enabled) i uruchamiamy ponownie przeglądarkę.

Aby wszystko w pełni działało, należy również ustawić w naszym systemie operacyjnym (lub na routerze) adresy DNS dla naszego połączenia sieciowego na następujące:

IPv4
1.1.1.1
1.0.0.1

IPv6
2606:4700:4700::1111
2606:4700:4700::1001

Więcej znajdziesz tutaj: Zmienianie ustawień protokołu TCP/IP.

Również, w przypadku gdy strona https://1.1.1.1/help wykryje, że nie korzystasz z bezpiecznego DNS, pod wynikiem przedstawi ci, jak ustawić serwery nazw Cloudflare na używanym przez ciebie systemie operacyjnym.

Safari

Tutaj niestety nic nie możemy włączyć — ustawić, aby zacząć używać szyfrowanego DNS. Jest to poniekąd dziwne, gdyż to Apple ostatnio kreuje pozytywne myślenie odnośnie bezpieczeństwa (sic!).


Jeżeli wszystko wykonaliśmy prawidłowo, to przechodzą na stronę https://1.1.1.1/help sprawdzimy, czy nasz DoH działa, czy nie. Jednakże nie jest to 100%-owa wykładnia, szczególnie gdy używasz innej metody implementacji bezpiecznego DNS w twojej sieci domowej, o której napiszę za chwilę.

Nim przejdę dalej, zadasz pytanie, jak włączyć DNS over HTTPS na tablecie lub telefonie komórkowym.

Otóż nic prostszego! Wystarczy zainstalować dedykowaną aplikację 1.1.1.1 ze Sklepu Play (Android) lub AppStore (iOS) i postępować zgodnie z instrukcjami.

Aplikacja od Cloudflare oprócz zabezpieczenia DNS oferuje również WARP w celu przyśpieszenia serfowania w internecie, ale nie będę się o tym rozpisywał, gdyż to temat na inny wpis.

Idąc dalej…