Zadania systemu DNS

5/5 - (1 vote)

Zadania systemu DNS (Domain Name System) są kluczowe dla funkcjonowania Internetu, ponieważ umożliwiają prawidłowe kierowanie ruchu sieciowego do odpowiednich zasobów. System DNS pełni rolę tłumacza, przekształcając przyjazne dla użytkownika nazwy domenowe (np. example.com) na numeryczne adresy IP, które są niezbędne do nawiązania połączeń pomiędzy urządzeniami w sieci. Poniżej przedstawiam główne zadania systemu DNS.

Tłumaczenie nazw domenowych na adresy IP to podstawowa funkcja systemu DNS. Kiedy użytkownik wpisuje w przeglądarkę adres strony internetowej, np. example.com, system DNS tłumaczy tę nazwę na odpowiadający jej adres IP (np. 192.0.2.1). Adres IP jest używany do nawiązywania połączenia z odpowiednim serwerem. Dzięki DNS użytkownicy nie muszą zapamiętywać skomplikowanych adresów numerycznych, co ułatwia korzystanie z Internetu.

Rozdzielanie obciążenia w sieci to kolejna ważna rola systemu DNS. DNS może wykorzystywać mechanizmy takie jak load balancing (równoważenie obciążenia), które umożliwiają równomierne rozdzielanie ruchu pomiędzy serwerami. Dzięki temu, gdy jedna domena posiada wiele serwerów, DNS może wskazać na różne adresy IP w zależności od obciążenia lub geograficznej lokalizacji użytkownika. Przykładem może być serwis internetowy, który posiada serwery w różnych częściach świata i kieruje ruch do najbliższego serwera, co zwiększa wydajność i niezawodność usług.

Zarządzanie subdomenami jest kolejnym zadaniem DNS. Pozwala to na tworzenie różnych podstron lub usług pod główną domeną, jak np. blog.example.com, shop.example.com. Każda z tych subdomen może wskazywać na różne serwery lub usługi, umożliwiając organizowanie zasobów w sposób bardziej elastyczny i hierarchiczny. Administratorzy mogą zarządzać różnymi subdomenami niezależnie od siebie, co upraszcza zarządzanie i konfigurację.

Przechowywanie i udostępnianie rekordów DNS to zadanie związane z przechowywaniem informacji o nazwach domenowych w systemie. Rekordy DNS zawierają różne dane, takie jak adresy IP, informacje o serwerach pocztowych (rekordy MX), serwery nazw (NS) oraz inne informacje, które pomagają w prawidłowym funkcjonowaniu sieci. Dzięki rozproszonej strukturze DNS, zapytania o domeny są rozdzielane pomiędzy różne serwery, co zapewnia odporność na awarie i szybkie uzyskiwanie odpowiedzi.

Zarządzanie bezpieczeństwem to zadanie systemu DNS, które jest coraz bardziej istotne w dzisiejszym Internecie. Wprowadzenie takich rozwiązań jak DNSSEC (Domain Name System Security Extensions) pozwala na zapewnienie integralności i autentyczności danych przekazywanych przez DNS. DNSSEC pomaga w zapobieganiu atakom, takim jak DNS spoofing czy cache poisoning, które mogą prowadzić do przekierowania użytkowników na złośliwe strony internetowe.

System DNS pełni zatem wiele istotnych ról, które zapewniają funkcjonalność, wydajność i bezpieczeństwo korzystania z Internetu. Dzięki niemu możliwe jest wygodne i bezpieczne korzystanie z nazw domenowych, zarządzanie ruchem sieciowym, a także organizowanie usług w sieci w sposób elastyczny i efektywny.

Strukturę bazy DNS można porównać do struktury drzewa (wykorzystywanego np. w programowaniu). DNS posiada korzeń, krawędzie i węzły. Ponieważ jest to baza danych – pozwala na wyszukiwanie informacji za pomocą kluczy. Na przykładzie nazwy amazon.com widać wszystkie te elementy. Tak naprawdę ta nazwa ma następującą postać amazon.com. – końcowa kropka jest pomijana ale trzeba pamiętać, że reprezentuje ona korzeń drzewa. Tak jak w programowaniu wymagana jest informacja, gdzie ten korzeń się znajduje, nie jest możliwe automatyczne odnalezienie go. Jeśli odnajdziemy korzeń, wtedy wiadomo, gdzie znaleźć pozostałe elementy. Korzeń drzewa DNS nazywany jest często domeną główną. Każda z jego części reprezentuje domenę lub subdomenę zależnie od punktu widzenia. Aby sprawnie się poruszać między węzłami drzewa, którymi są serwery nazw potrzebne są krawędzie, w przypadku systemu DNS ich funkcję pełnią dane przechowywane w serwerach DNS.

Odwzorowanie nazw na adresy ulega częstym zmianom, więc możliwy jest wzrost kosztów utrzymania poprawnych kopii pełnej listy nazw w każdym ośrodku wraz ze wzrostem liczby ośrodków. Jeśli zamiast tego używa się jednej bazy danych w centralnym ośrodku, to wraz ze wzrostem liczby ośrodków rośnie jej obciążenie i ruch w sieci. Rozwiązaniem tego problemu jest decentralizacja mechanizmu przydzielania nazw przez podzielenie przestrzeni nazw na niezależnie zarządzane części i na rozproszeniu odpowiedzialności za odwzorowywanie nazw na adresy.

Nazwa dziedziny składa się z ciągu nazw cząstkowych, oddzielonych od siebie separatorem.(kropką) Poszczególne człony nazwy reprezentują ośrodki lub grupy wszystkie dla systemu dziedzin nazywają się etykietami. Nazwy dziedzin zapisuje się zaczynając od etykiety lokalnej i kończąc na dziedzinie najwyższego poziomu. Standard dotyczący nazw dziedzin określa abstrakcyjną, hierarchiczną przestrzeń nazw umożliwiającą używania dowolnych etykiet. Jednak większość użytkowników używa hierarchii nazw obowiązującej w systemie nazw dziedzin Internetu, bo jest on elastyczny, można go dopasować do potrzeb wielu organizacji. Umożliwia wybór między hierarchią opartą na lokalizacji geograficznej i na strukturze organizacyjnej. Umożliwia łatwe przyłączenie ich sieci do Internetu bez zmiany hierarchii nazw.

Na głównym poziomie nazwy dziedzin umożliwiają utworzenie dwóch całkowicie odrębnych hierarchii nazw: geograficznej i organizacyjnej. W hierarchii geograficznej zbiór maszyn jest dzielony według krajów. Gdy jakiś kraj chce rejestrować maszyny w systemie nazw dziedzin, władze centralne przydzielają mu dziedzinę na głównym poziomie, której etykietą jest standardowy dwuliterowy kod danego kraju.

Alternatywą jest hierarchia organizacyjna. Gdy jakaś organizacja chce uzyskać nazwę w systemie nazw dziedzin wybiera nazwę dla siebie i prosi o zgodę. Władze centralne rozpatrują zgłoszenie i przydzielają organizacji poddziedzinę w jednej z istniejących dziedzin głównego poziomu. System nazw dziedzin umożliwia używanie wielu hierarchii nazw w obrębie tego samego systemu. Chcąc umożliwić klientom rozróżnianie różnych rodzajów pozycji w hierarchii, z każdą nazwą przechowuje się typ tej nazwy, który wskazuje czy chodzi o:

  • adres maszyny
  • skrzynki pocztowej
  • użytkownika

Klient zadający systemowi pytanie o nazwę musi jednocześnie określić typ tej nazwy Np. gdy program pocztowy pyta DNS o nazwę, to wskazuje jednocześnie, że chodzi o adres komputera zajmującego się wymianą poczty –  program do zdalnej pracy w sieci wskazuje, że chodzi o adres IP komputera. Dana nazwa w systemie nazw dziedzin może mieć wiele różnych znaczeń. Pytając o nazwę klient określa typ obiektu, który go interesuje a serwer udziela odpowiedzi dotyczącej obiektu tego typu. Poza określeniem typu nazw DNS pozwala klientowi na podanie rodziny protokołów. DNS dzieli wszystkie obiekty na klasy, co umożliwia przechowywanie w jednej bazie danych odwzorowań dotyczących wielu różnych zestawów protokołów. Na podstawie składni nazwy nie można określić typu obiektu ani klasy zestawu protokołów. Na podstawie liczby członów nazwy nie da się określić czy chodzi o pojedynczy obiekt czy o dziedzinę. Mechanizm odwzorowywania nazw na adresy składa się z niezależnych współdziałających systemów nazywanych serwerami nazw. Serwer jest programem, który realizuje odwzorowania nazw na adresy IP. Oprogramowanie klienta program odwzorowania nazw korzysta podczas pracy z jednego lub więcej serwerów.

Podstawowe cele postawione przy projektowaniu serwisu DNS mają oczywiście wpływ na jego strukturę.

  • głównym celem jest stworzenie spójnej przestrzeni nazwowej, która posłuży do odwoływania się do zasobów. Aby pozbyć się problemu spowodowanego przez      nieprzemyślane wpisywanie danych, nazwy powinny nie zawierać identyfikatorów sieciowych, adresów, szlaków (routes) lub podobnych informacji, jako części nazwy
  • rozmiar  bazy danych z nazwami i częstość z jaką należy ją uaktualniać sugeruje, by była ona prowadzona w sposób łatwy do dystrybucji (z wykorzystaniem takich udogodnień, jak lokalne cache’owanie). Wszystkie podejścia proponujące trzymanie kompletnych kopii bazy danych są nieprzydatne, jako zbyt  kosztowne i trudne do zorganizowania. Powinny być unikane. Takie same zasady dotyczą struktury przestrzeni nazw, a w szczególności mechanizmów  tworzenia i usuwania nazw.
  • ponieważ  potrzebny jest sposób, w którym konieczne będzie połączenie różnych typów sieci i aplikacji, należy zapewnić możliwość zachowania struktury adresowania dla różnych protokołów sieciowych i sposobów zarządzania zasobami sieciowymi.
  • transakcje  dokonywane przez name server muszą być niezależne od systemów komunikacyjnych, na których się opierają.  Np. jedne z systemów będą chciały diagramów zapytań i odpowiedzi
  • serwis powinien być niezależny sprzętowo do pewnego poziomu – to znaczy uwzględniać możliwości innych typów komputerów i nie wychodzić poza nie, lub organizować je w sposób zapewniający działanie niezależnie od rodzaju komputera.

System domen zapewnia kilka z powyższych postulatów:

  • standardowe  formaty danych źródłowych
  • standardowe  metody zapytań baz danych
  • standardowe metody pozwalające name server’om na odświeżanie danych z obcych name server’ów
image_pdf

Składniki DNS

Oceń tę pracę

Składniki DNS (Domain Name System) obejmują różne elementy, które współpracują, aby zapewnić prawidłowe funkcjonowanie systemu rozwiązywania nazw domenowych. DNS jest kluczowy w internecie, ponieważ tłumaczy czytelne dla człowieka nazwy domen na numeryczne adresy IP, które są zrozumiałe dla komputerów. System DNS składa się z kilku istotnych komponentów, które odpowiadają za różne aspekty rozwiązywania nazw, przechowywania danych i zarządzania dostępem do usług.

Serwery nazw DNS to jeden z głównych składników systemu. Serwery te są odpowiedzialne za przechowywanie i udostępnianie informacji o nazwach domen oraz ich powiązanych adresach IP. Istnieje kilka rodzajów serwerów DNS, w tym serwery główne (master), które przechowują oryginalne pliki strefy, oraz serwery podrzędne (slave), które kopie tych plików replikują. Serwery nazw mogą być również klasyfikowane jako autorytatywne (czyli serwery, które odpowiadają na zapytania dla określonych stref domenowych) oraz rekursywne (które wykonują zapytania do innych serwerów, aby uzyskać odpowiedź na zapytania, dla których same nie mają danych).

Rekordy DNS to struktury danych przechowywane na serwerach DNS, które zawierają różne informacje o domenach. Przykładowe rekordy to:

  • A (Address) – mapuje nazwę domeny na adres IPv4.
  • AAAA – mapuje nazwę domeny na adres IPv6.
  • MX (Mail Exchanger) – wskazuje serwery pocztowe odpowiedzialne za odbiór wiadomości e-mail dla danej domeny.
  • CNAME (Canonical Name) – tworzy alias dla innej domeny.
  • NS (Name Server) – wskazuje, który serwer DNS jest odpowiedzialny za daną strefę.
  • PTR (Pointer) – stosowany w odwrotnym rozwiązywaniu nazw, mapuje adres IP na nazwę domeny.
  • SOA (Start of Authority) – zawiera informacje o strefie, w tym dane o serwerze głównym i czasach odświeżania.

Pliki strefy to pliki tekstowe zawierające wpisy DNS dla konkretnej strefy domenowej. Zawierają one rekordy DNS, które są odpowiedzialne za rozwiązywanie nazw w danej domenie. Plik strefy zawiera także informacje konfiguracyjne, takie jak rekord SOA, który określa serwer odpowiedzialny za strefę, oraz czas przechowywania danych w pamięci podręcznej. Pliki strefy są kluczowe dla poprawnego działania DNS, ponieważ zawierają szczegóły dotyczące zarządzania i delegacji domen.

Rekursive zapytania DNS to zapytania, które wymagają od serwera DNS zebrania odpowiedzi od innych serwerów, jeśli nie ma wystarczających informacji lokalnie. Serwery DNS, które obsługują rekursywne zapytania, przeprowadzają cały proces rozwiązywania nazw, przesyłając zapytanie od serwera do serwera, aż znajdą odpowiednią odpowiedź.

Caching w systemie DNS jest mechanizmem przechowywania wyników zapytań DNS przez pewien czas, co pozwala na przyspieszenie kolejnych zapytań do tej samej domeny. Dzięki pamięci podręcznej zapytania są szybsze, a obciążenie serwerów DNS mniejsze, ponieważ nie trzeba każdorazowo wykonywać pełnej procedury rozwiązywania nazw.

Podsumowując, składniki DNS obejmują serwery nazw, rekordy DNS, pliki strefy, mechanizm rekurencyjnych zapytań oraz pamięć podręczną. Wszystkie te elementy współdziałają, aby zapewnić szybkie, efektywne i bezpieczne rozwiązywanie nazw w internecie.

Na pojęcie DNS składają się trzy podstawowe elementy:

  1. DOMAIN NAME SPACE oraz RESOURCE RECORDS, które specyfikują strukturę drzewa przestrzeni nazw i danych związanych z tymi nazwami. Każda gałąź i każdy liść drzewa DNSPACE zawiera pewien zbiór informacji i sposoby (rodzaje zapytań – queries) potrzebne do uzyskania chcianej informacji z całego zbioru. Zapytanie wyszczególnia domenę, która go interesuje, oraz określa rodzaj informacji, jakiej potrzebuje.
  2. NAME SERVERS są programami, które przechowują informacje o drzewie struktury domeny i zbiorach informacji. Name server może cache’ować jakiś dowolny fragment struktury sieci, ale generalnie Name Sever zawiera kompletną informację na temat fragmentu przestrzeni nazw i wskaźniki do innych name server’ów, które zapewniają informacje dla pozostałych części lub innych domen. Name Server zna całą część domeny, o której ma kompletną informację i mówi się, że jest autorytatywny dla niej (authoritative). Miarodajne (autorytatywne) informacje są organizowane w jednostki zwane dalej strefami (zones).
  3. RESOLVERS są również programami, które wyciągają informację od name server’ów w celu udzielenia informacji na pytania żądane przez komputery – klientów. Resolver musi mieć dostęp do co najmniej jednego name server’a, by móc odpowiedzieć na pytanie bezpośrednio, lub wymóc żądanie odpytania innych name server’ów. Żaden protokół nie jest potrzebny do komunikacji między programem użytkownika a Resolver’em, ponieważ ten ostatni jest zwykle wywołaniem systemowym dostępnym bezpośrednio z programów.

Te trzy składniki dość dobrze oddają trzy perspektywy systemu domenowego:

  • Punkt widzenia użytkownika:
    system jest osiągalny jako prosta procedura, lub wywołanie systemowe kierowane do lokalnego resolver’a.      Przestrzeń domeny jest prostą strukturą drzewiastą, a użytkownik może żądać informacji na temat dowolnej części tego drzewa
  • Punkt widzenia resolver’a:
    system składa się z nieznanej liczby name server’ów. Każdy z nich zawiera informacje dla jednego lub kilku fragmentów całej struktury domeny, są one widziane jako całość.

Punkt widzenia name server’a:
Domena składa się z oddzielnych zbiorów informacji lokalnych pogrupowanych w strefy. Name server posiada lokalne kopie różnych stref. Musi co jakiś czas je odświeżać z plików oryginalnych przechowywanych lokalnie lub na innych host’ach. Równocześnie musi odpowiadać na pytania zadawane przez resolvery.

image_pdf

Komercyjne zapory sieciowe

Oceń tę pracę

Poniżej zostanie przedstawiona lista kilku zapór sieciowych dostępnych na rynku, wraz z ich krótką charakterystyką.

Tabela 5. AltaVista Firewall 98

Typ   zapory sieciowej:

programowa   – brama proxy

Producent:

Digital Equipment Corp.

Przeznaczona   dla platform:

DEC UNIX, Windows NT

Dodatkowe   informacje:

AltaVista Firewall 98 zawiera bramy dla usług: FTP, Telnet, HTTP, Mail, News, SQL*Net, RealAudio i finger. Dla usług FTP i Telnet mamy możliwość wymuszenia stosowania jednorazowych haseł. Produkt ten pracuje zarówno na platformach sprzętowych opartych o procesory Intel, jak i Alpha.

Tabela 6. BorderMenager

Typ   zapory sieciowej:

Programowa

Producent:

Novell   Inc.

Przeznaczona   dla platform:

Novell   NetWare

Dodatkowe   informacje:

BorderManager jest programem przeznaczonym dla sieci Novell, ale ochrania również sieci pracujące w oparciu o systemy UNIX oraz NT. Produkt ten pozwala na centralizację zarządzania siecią, szczegółowe filtrowanie oraz szybką i dokonywaną w czasie rzeczywistym analizę ruchu w sieci. BorderManager pozwala także na tworzenie „minizapór sieciowych”, zabezpieczających chronioną sieć także przed atakami z sieci lokalnych.

Tabela 7. CSM Proxy/Enterprise Edition

Typ   zapory sieciowej:

programowa   – brama proxy

Producent:

CSM-USA Inc.

Przeznaczona   dla platform:

Linux, Solaris i Windows NT

Dodatkowe   informacje:

CSM Proxy jest kompleksowym rozwiązaniem służącym serwerom sieciowym do filtrowania skryptów ActiveX i Java, plików cookies, poczty konferencyjnej i prywatnej. CSM Proxy wspierane jest przez Windows 95.

Jeżeli w naszym systemie są przechowywane dane, których zniszczenie bądź ujawnienie wiązałoby się z poważnymi konsekwencjami, to taka podsieć powinna być izolowana i nie mieć fizycznego połączenia z siecią globalną. Gdy jednak jest to niemożliwe, należy zdecydować się na jeden z profesjonalnych systemów firewall. Zanim dokonamy takiego wyboru warto rozważyć następujące kwestie:

  • czy koszt inwestycji nie przekroczy wartości chronionych danych,
  • czy użytkownicy Internetu będą wysyłać/przysyłać pliki do/z serwera firmy,
  • tanie lub darmowe systemy charakteryzują się zwykle wysokim kosztem instalacji, konserwacji, obsługi i administracji (np. oprogramowanie dla Linuxa), więc być może opłaci się zainwestować na początku w droższy ale łatwiejszy w eksploatacji produkt,
  • jaki poziom zabezpieczeń, monitoringu, kontroli jest rzeczywiście potrzebny,
  • jaki poziom ryzyka jesteśmy w stanie zaakceptować, jaki jest najbardziej pesymistyczny scenariusz w przypadku wtargnięcia intruza,
  • możliwości zdalnej konfiguracji i zarządzania systemem,
  • jakie usługi dodatkowe są nam potrzebne (VPN, IPX/IP Gateway, NAT).
    W trakcie instalacji należy rozwiązać kolejne problemy:
    ·         czy firma będzie udostępniać stronę WWW i czy nie warto serwera WWW wydzielić z zabezpieczanej sieci,
    ·         odpowiedni podział pracowników na grupy o różnych prawach do poszczególnych usług,
    ·         optymalny podział sieci na podsieci i przyłączenie ich do odpowiednich interfejsów.
image_pdf

Wybór zapory firewall

Oceń tę pracę

Przy budowaniu zapory sieciowej istotne jest przeprowadzenie poniższych czynności:

  • Rozpoznanie topologii sieci oraz potrzeb w zakresie aplikacji i protokołów
  • Analiza zależności służbowych (kompetencje decyzyjne, dostęp do zasobów)
  • Stworzenie reguł dostępu do zasobów w oparciu o uprzednio określone potrzeby użytkowników oraz ich miejsce w strukturze decyzyjnej
  • Znalezienie odpowiedniej zapory dla naszych potrzeb
  • Właściwa instalacja i konfiguracja zapory
  • Drobiazgowe przetestowanie stosowanych reguł

Rozpoznanie topologii sieci oraz potrzeb w zakresie aplikacji i protokołów jest zagadnieniem dużo trudniejszym niż mogłoby się wydawać, zależy ono od struktury i rozmiarów danej sieci. Jeśli administrujemy siecią jednorodną (co jednak zdarza się dość rzadko), zadanie jest proste – będziemy mieć do czynienia z jednym systemem operacyjnym i przypuszczalnie takim samym zestawem aplikacji obecnym na każdej ze stacji.

Większość sieci, to sieci heterogeniczne, co zmusza administratora do identyfikacji każdego systemu operacyjnego i wszystkich zestawów aplikacji używanych w sieci. To z kolei wymagać może konieczności korzystania z usług ekspertów w dziedzinie bezpieczeństwa poszczególnych aplikacji.

Przy budowie zapory sieciowej należy wziąć pod uwagę zależności służbowe. Ten krok może wymagać od administratora rozpoznania potrzeb i uzgodnienia działań z poszczególnymi działami firmy podłączonymi do sieci. Musimy uniknąć sytuacji, kiedy ze względu na fizyczną odległość między poszczególnymi segmentami sieci ruch wewnętrzny będzie się odbywał poprzez którąś z naszych bram programowych. Zatem przed dokonywaniem zmian w strukturze sieci należy dokładnie przeanalizować te zależności. Cały ten proces wymaga dużego taktu. Można spotkać się z użytkownikami lub menedżerami, którzy będą sprzeciwiać się zmianom (skoro od 10 lat sieć chodzi, to po co cokolwiek zmieniać?). Konieczna jest bliska współpraca z użytkownikami i uzasadnienie im konieczności przeprowadzenia zmian.

Ostatnią rzeczą jaką byśmy sobie życzyli, to rzesza niezadowolonych lokalnych użytkowników – to od nich w przyszłości będzie zależeć bezpieczeństwo sieci, to nasi użytkownicy przestrzegając (lub nie) zasad korzystania z systemów będą mieli decydujący wpływ jej bezpieczeństwo. Jeśli staraliśmy się rzeczowo (i przystępnie) uzasadnić konieczność przedsięwzięcia odpowiednich środków – nie mamy się czego obawiać; jeśli zaś wprowadziliśmy drakońskie reguły korzystania z sieci bez słowa wyjaśnienia, możemy się spodziewać oporu materii ludzkiej na każdym możliwym kroku.

Po zakupie zapory sieciowej powinniśmy przeprowadzić intensywne testy w dwóch fazach:

  • Testowanie zasad korzystania z sieci dla użytkowników zdalnych
  • Testowanie wewnętrznych reguł korzystania z sieci

Pierwsza faza może być przeprowadzona w dowolnym czasie – nawet gdy użytkownicy danej sieci są nieobecni (weekend, godziny wieczorno-nocne, etc.).

Druga faza jest bardziej skomplikowana. Należy się spodziewać wielu problemów, a nawet przejściowego zaniku funkcjonalności sieci (trzeba być przygotowanym na reakcję zdenerwowanych użytkowników). Jest wyjątkowo mało prawdopodobne, że fazę tę przejdzie się gładko już za pierwszym razem – chyba, że sieć jest całkowicie jednorodna i mamy do czynienia z tym samym zestawem aplikacji na każdej z maszyn.

Należy pamiętać o tym, że zapory firewall nie są niezawodne. Wiele serwerów, na których zastosowano zapory sieciowe, zostało pokonanych przez hakerów. Wynika to nie tyle z właściwości zapory sieciowej jako takiej, a raczej z zawodności tzw. czynnika ludzkiego. Najczęstszą przyczyną wadliwości zabezpieczeń firewalla są administratorskie błędy w jego implementacji. Nie znaczy to, że niektóre zapory sieciowe nie mają słabych punktów. Owszem mają – aczkolwiek w większości przypadków luki te nie mają zbyt wielkiego znaczenia dla bezpieczeństwa sieci.

image_pdf

Rodzaje zapór ogniowych

Oceń tę pracę

Na rynku dostępnych jest wiele produktów sprzedawanych pod nazwą „Firewall”, lecz różnią się one poziomem oferowanych zabezpieczeń. Filtry pakietowe (Network Level) na podstawie adresu źródłowego i docelowego oraz portu pojedynczego pakietu decydują, czy dana przesyłka może zostać przesłana dalej, czy też nie. Zwyczajny router nie jest zwykle w stanie takiej decyzji podjąć, lecz bardziej nowoczesne konstrukcje mogą przechowywać wewnętrzne informacje o stanie połączeń przechodzących przez niego, zawartości niektórych strumieni danych itp. Filtry pakietowe są zwykle bardzo szybkie, jednak ich wadą jest, że podane kryteria selekcji mogą okazać się niewystarczające dla niektórych usług internetowych, przez co do sieci byłyby przepuszczane niepożądane pakiety, a wtedy… Jedną z możliwych prób ataku może być umieszczenie pakietów wyższego poziomu w fałszywych ramkach MAC lub protokołu warstwy 3 (sieciowa) i 4 (transportowa) modelu ISO/OSI. Często wystarczy tylko zmienić adres nadawcy pakietu. W takim przypadku filtr pakietowy jest bezradny.

Bramki typu Circuit Level są w stanie przyporządkowywać pakiety do istniejących połączeń TCP i dzięki temu kontrolować całą transmisję. Zaawansowane systemy potrafią także kojarzyć pakiety protokołu UDP, który w rzeczywistości kontroli połączeń nie posiada.

Firewalle Application Level to, generalnie rzecz ujmując, hosty, na których uruchomiono proxy servers, które nie zezwalają na bezpośredni ruch pakietów pomiędzy sieciami oraz rejestrują i śledzą cały ruch przechodzący przez niego. Proxies potrafią więc niejako odseparować wiarygodną część sieci od podejrzanej; mogą magazynować najczęściej żądane informacje – klient kieruje swoje żądanie do proxy, który wyszukuje obiekt w swoich lokalnych zasobach i zwraca zamawiającemu. Dla każdej aplikacji (czyli usługi sieciowej, np. http, ftp, telnet, smtp, snmp, …) istnieje osobny proxy, dla którego definiowane są reguły według których podejmowana jest decyzja o zaakceptowaniu bądź odrzuceniu połączenia. Niewątpliwym minusem tego rozwiązania jest konieczność stosowania wielu proxies do obsługi różnych aplikacji; jeżeli dla danego protokołu nie jest dostępny odpowiedni proxy, to dane przesyłane w tym formacie nie będą w ogóle przepuszczane przez bramkę. Na rynku dostępne są też systemy z proxies definiowanymi przez użytkownika funkcjonującymi jednakże nie na płaszczyźnie aplikacji, lecz analogicznie do filtrów pakietowych i bramek Circuit Level.

Zapory ogniowe (ang. firewalls) są kluczowymi elementami zabezpieczeń sieci komputerowych, chroniącymi przed nieautoryzowanym dostępem oraz atakami. Służą do monitorowania i kontrolowania ruchu sieciowego, decydując, które połączenia są dozwolone, a które mają zostać zablokowane. W zależności od metody pracy, zapory ogniowe dzielą się na kilka rodzajów, z których każdy ma swoje specyficzne zastosowanie i cechy.

Zapora ogniowa oparta na filtracji pakietów to jeden z najstarszych i najprostszych typów zapór. Działa na podstawie analizy nagłówków pakietów danych, takich jak adresy IP, porty oraz protokoły. Tego typu zapora porównuje przychodzące i wychodzące pakiety z zestawem reguł i decyduje, czy dany pakiet jest dozwolony, czy też powinien zostać zablokowany. Jest to rozwiązanie szybkie i łatwe w implementacji, jednak nie zapewnia pełnej ochrony przed bardziej zaawansowanymi atakami, które mogą obejmować np. ataki na poziomie aplikacji.

Zapora ogniowa oparta na stanie połączenia (ang. stateful inspection firewall) to bardziej zaawansowana forma zapory, która nie tylko filtruje pakiety na podstawie ich nagłówków, ale także monitoruje stan aktywnych połączeń. Dzięki temu zapora może kontrolować, czy dany pakiet należy do już istniejącego połączenia, czy jest próbą nawiązania nowego, potencjalnie nieautoryzowanego połączenia. Zapory te są bardziej bezpieczne, ponieważ mogą śledzić cały kontekst komunikacji i blokować pakiety, które nie pasują do dozwolonych połączeń.

Zapora ogniowa oparta na analizie głębokiej zawartości (ang. deep packet inspection firewall) idzie o krok dalej, analizując całą zawartość pakietów, a nie tylko ich nagłówki. Dzięki tej metodzie zapora może wykrywać złośliwe oprogramowanie, wirusy, czy inne zagrożenia, które mogą być ukryte w danych aplikacji, nawet jeśli wyglądają one na legalne. Tego typu zapory są bardziej zasobożerne, ale zapewniają wyższy poziom bezpieczeństwa, ponieważ mogą identyfikować ataki na poziomie aplikacji, takie jak SQL injection czy ataki DDoS.

Zapory ogniowe proxy pełnią rolę pośrednika pomiędzy wewnętrzną siecią a siecią zewnętrzną, czyli między użytkownikiem a usługą, z której ten korzysta. Zamiast łączyć się bezpośrednio z docelowym serwerem, zapora proxy wysyła żądanie w imieniu użytkownika. Może filtrować ruch, ukrywać prawdziwy adres IP użytkownika oraz pełnić funkcję buforowania danych, co poprawia wydajność. Dzięki pełnej kontroli nad połączeniem zapora proxy może również chronić przed atakami, które próbują wykorzystać luki w aplikacjach.

Zapory ogniowe nowej generacji (NGFW) to najnowsze rozwiązania, które łączą funkcje tradycyjnych zapór z dodatkowymi mechanizmami ochrony, takimi jak systemy wykrywania i zapobiegania włamaniom (IDS/IPS), analiza zachowań, kontrola aplikacji oraz integracja z usługami chmurowymi. NGFW oferują bardzo wysoką skuteczność w ochronie przed nowoczesnymi zagrożeniami, takimi jak ataki typu APT (Advanced Persistent Threat) czy złośliwe oprogramowanie w chmurze. Dzięki zaawansowanej analizie danych zapory nowej generacji mogą również blokować ataki na poziomie aplikacji i użytkownika.

Różne typy zapór ogniowych są stosowane w zależności od wymagań danej sieci i poziomu bezpieczeństwa, jaki ma zostać osiągnięty. Starsze rozwiązania, takie jak zapory oparte na filtracji pakietów, mogą być wystarczające w prostszych środowiskach, natomiast zapory nowej generacji stanowią kompleksową ochronę przed współczesnymi, wysoce zaawansowanymi zagrożeniami.

image_pdf