Linux - sieciowa alternatywa

Router z firewallem

Jednym z najlepszych zastosowań Linuxa jest wykorzystanie go jako "inteligentnego" routera internetowego. Istotne znaczenie mają tutaj znikome wymagania sprzętowe. Jeśli Linux ma być jedynie bramką internetową, to wystarczy starszy model Pentium 60-100 MHz, 24-40 MB RAM, dysk twardy 500 MB i jedna lub dwie karty sieciowe. Obsługa przekazywania i filtrowania pakietów TCP/IP nie wymaga dużych mocy obliczeniowych. Co więcej, maszyna, na której ma działać serwer linuxowy, wcale nie musi mieć twardego dysku. W skrajnym przypadku wystarczy odpowiednio przygotowana dyskietka startowa, zawierająca specjalnie skonfigurowaną "minimalną" wersję Linuxa.

Ponadto zaletą użycia Linuxa jest to, że jądro tego systemu ma wbudowany wydajny firewall, nazwany IPchains. Wszystkie dystrybucje są przygotowane tak, że usługa ta jest dostępna "z pudełka". Dzięki IPchains Linux może działać jako firewall/gateway filtrujący, a uzupełnia go usługa IP Masquerading (NAT Network Address Translation), również wbudowana w jądro, pozwalając na ukrycie adresów IP sieci lokalnej przed potencjalnymi włamywaczami. Trzeba też pamiętać, że większość dostępnych dla Linuxa programów, opisywanych jako firewall, to w rzeczywistości jedynie nakładki ułatwiające manipulację regułami firewalla wbudowanego w jądro. Przykładami takich nakładek są PMFirewall oraz Mason.

Niestety, IPchains nie potrafi blokować ruchu w zależności od zawartości ramek, potrafi jednak identyfikować użytkowników jedynie wg adresu IP ich maszyny (co wyklucza stosowanie DHCP). Rozwiązaniem tego problemu są komercyjne firewalle, wykorzystujące technologię stateful inspection. Jednym z pierwszych tego typu rozwiązań dla Linuxa jest komercyjny Check Point FireWall-1. Szczegółowe informacje o instalacji Linuxa jako firewalla można znaleźć w dokumencie Firewall-HOWTO (http://metalab.unc.edu/pub/Linux/docs/HOWTO/Firewall-HOWTO ). Na podstawie Linuxa powstają także firewalle sprzętowe, np. WatchGuard Firebox. Są one droższe niż konfiguracja komputer PC + Linux, ale dają pewność, że system jest prawidłowo skonfigurowany.

Uzupełnieniem Linuxa jako "czarnego pudełka" do łączenia się z Internetem jest serwer cache, przyspieszający dostęp do często odwiedzanych stron WWW i serwisów FTP. Najlepszym tego typu oprogramowaniem jest bezpłatny Squid (http://www.squid-cache.org ). Możliwa jest również taka konfiguracja Squida, aby ten korzystał z serwerów buforujących w3cache, które znajdują się w największych miastach Polski.

WWW, katalogi i poczta elektroniczna

Drugim najczęstszym przeznaczeniem Linuxa jest wykorzystanie go jako platformy do udostępniania serwisów nternetowych/intranetowych. Podstawową usługą jest tutaj WWW. Najpopularniejszym linuxowym serwerem WWW jest Apache. Jest on standardowo instalowany wraz z większością dystrybucji Linuxa. Najlepszym dostępnym rozszerzeniem skryptowym (analogicznym do ASP w MS IIS) jest PHP (Hypertext Preprocessor), który - oferując składnię zbliżoną do Perla - umożliwia łączenie się z różnymi bazami danych i usługami sieciowymi. Istnieje ogromna liczba gotowych do wykorzystania skryptów PHP (można je znaleźć w serwisiehttp://www.freshmeat.net . Coraz częściej uzupełnieniem serwera WWW jest serwer baz danych - tutaj najczęstszym rozwiązaniem dla mniejszych serwisów jest MySQL lub PostgreSQL. Są to proste, szybkie i nieskomplikowane w administracji serwery SQL, oba również wchodzą w skład większości dystrybucji Linuxa. Ostatnim elementem serwisów WWW jest coraz częściej serwer LDAP - dla Linuxa dostępne są następujące rozwiązania: NDS eDirectory i iPlanet Directory Server (dawniej Netscape Directory Server). Trzeba również pamiętać o znakomitym, bezpłatnym serwerze Open-LDAP, który jest małym, szybkim serwerem LDAP, wykorzystywanym do autoryzacji masowych "anonimowych" użytkowników WWW (istnieje odpowiedni moduł do współpracy z Apache) czy serwerów e-mail w systemach darmowych kont internetowych.

Kluczowym składnikiem serwera internetowego jest także serwer pocztowy. Standardowym linuxowym serwerem pocztowym jest Sendmail. Wywodzi się on z czasów, gdy właściwie nie istniało zagrożenie włamaniami. Jego budowa powoduje, że często odkrywane są w nim błędy. Należy więc uważnie śledzić listy dyskusyjne, poświęcone bezpieczeństwu, i w razie znalezienia nowej dziury, szybko instalować nową wersję. Sendmail ma jednak również kilka zalet. Pozwala na tworzenie bardzo zaawansowanych konfiguracji, jest dostępny w każdej dystrybucji Linuxa i wielu innych systemach Unix. Ma też bogatą dokumentację, a ze względu na jego popularność, łatwiej uzyskać pomoc w przypadku problemów.

Niestety, Sendmail nie jest ani prosty w konfiguracji, ani bezpieczny. Toteż administratorzy coraz częściej sięgają po alternatywne rozwiązania, takie jak Qmail. Są one łatwiejsze w konfiguracji i mają nowe, ciekawe funkcje - w tym obsługę dodatkowych protokołów pocztowych, takich jak IMAP4 czy POP3, szyfrowany przez SSL. Oba serwery pozwalają nie tylko na uruchomienie serwera pocztowego, ale także na łatwe tworzenie e-mailowych list dyskusyjnych czy list mailingowych, pozwalając na przechowywanie informacji o kontach pocztowych np. na serwerze LDAP. Dla użytkowników szukających serwerów łatwych w konfiguracji zawsze pozostają rozwiązania komercyjne - Advanced Message Server czy znakomity CommuniGate Pro, oferujący również interfejs WWW do sprawdzania poczty i wygodny interfejs WWW do konfiguracji serwera.

Zarządzanie systemem

Dostępne są też wygodne narzędzia pozwalające zdalnie administrować serwerem linuxowym. Najprymitywniejsze, ale często jedyne narzędzie to zwykłe połączenie terminalowe przy wykorzystaniu SSH (Secure Shell), który zestawia szyfrowany kanał ze zdalnym serwerem. SSH jest oprogramowaniem bezpłatnym i znajduje się (zarówno serwer, jak i klient) w większości dystrybucji Linuxa.

Ponadto każda dystrybucja oferuje własne - mniej lub bardziej przydatne narzędzia do zarządzania systemem - zarówno w trybie terminalowym, jak i graficznym (XWindow). Efektywnym, rozbudowanym narzędziem do zarządzania pojedynczymi serwerami linuxowymi jest Webmin, który umożliwia wygodny, zdalny dostęp do większości ustawień i zarządzanie systemem za pomocą przeglądarki WWW, pracującej w trybie SSL. Webmin jest rozwiązaniem modułowym, a każdy moduł służy do zarządzania określoną usługą. Również ta aplikacja znajduje się w większości dystrybucji Linuxa.

W roku 2000 pojawiło się dla Linuxa pierwsze narzędzie do zarządzania rozbudowanymi strukturami serwerów i stacji roboczych - Novell wprowadził do sprzedaży NDS Corporate Edition for Linux. NDS umożliwia zarządzanie wszystkimi serwerami linuxowymi (i nie tylko) z jednego miejsca i narzędzia (ConsoleOne) oraz zunifikowane zarządzanie użytkownikami, grupami, urządzeniami zewnętrznymi. Niemniej ważna jest możliwość łatwego wdrożenia tzw. SSO (Single Sign-On), gdy jedno hasło może być używane do kontroli dostępu do wszystkich serwerów i różnych zasobów (telnet, ftp etc., serwery baz danych) niezależnie od miejsca logowania. Ta centralizacja administracji to cecha, której brak był dotąd najpoważniejszą wadą Linuxa.

Koszty

Jeśli nie kupujemy rozwiązania "w pudełku", a decydujemy się na wdrożenie Linuxa w istniejącej infrastrukturze sprzętowej, warto zatrudnić do tego zadania doświadczonego administratora lub konsultanta. Zwłaszcza w przypadku serwerów internetowych, gdzie istnieje duże ryzyko włamań i utraty danych. Linux jest systemem w stanie nieustannego rozwoju i każdego dnia pojawiają się uaktualnienia związane z bezpieczeństwem. Zatem szczególnie w przypadku tego systemu wiedza i doświadczenie są najważniejsze i warto za nie płacić. Koszty instalacji systemu Linux wahają się w granicach 500-2000 zł w zależności od instalowanych serwisów. Koszty wykupienia obsługi serwisowej i wsparcia administracyjnego są bardziej zróżnicowane. A jaką dystrybucję Linuxa wybrać? To tak naprawdę mało istotne, choć ogólnie lepiej nie ryzykować i najlepiej wybrać taką, która jest popularna. Chodzi o uniknięcie problemów związanych z niezgodnością wersji bibliotek czy po prostu błędami programów wywołanymi innym rozmieszczeniem plików konfiguracyjnych itd.


TOP 200