Administracja usługami sieciowymi cz. 3

 

1.           Zaawansowane zarządzanie sieciami TCP/IP

a)        Rutowanie
Poszczególne sieci (np. sieć lokalna i sieć Internet) łączone są ze sobą za pomocą routerów. Router to urządzenie połączone z dwiema lub więcej sieciami i zajmujące się przenoszeniem pakietów między nimi. Jeśli komputer wysyła pakiet do komputera leżącego w tej samej sieci, pakiet przesyłany jest bezpośrednio. Jeśli jednak adres docelowy nie należy do tej samej sieci, co adres nadawcy, pakiet jest przesyłany do routera, który przesyła go do odpowiedniej sieci. W sieci zwykle działa ruter domyślny, który łączy ją z innymi sieciami. W takiej sytuacji wszystkie pakiety, które nie są zaadresowane do komputerów wchodzących w skład sieci lokalnej są przesyłane za pomocą rutera domyślnego.
W sieci może również działać kilka ruterów – jeden łączy sieć z Internetem, drugi – z inną siecią lokalną. W takiej sytuacji konieczne może być zdefiniowanie rutowanie statycznego lub dynamicznego, obsługiwanego przez programy rezydentne takie jak np. routed.

·      tablice rutingu
polecenie /sbin/route pozwala na manipulowanie tablicą rutowanie przechowywaną przez jądro sytemu. Tablica ta służy do podejmowania decyzji o tym, jaką drogą wysyłać poszczególne pakiety nadane przez dany komputer – czy kierować je bezpośrednio do adresata, czy poprzez bramkę (gateway), oraz za pomocą, którego interfejsu je wysyłać.
Ogólna składnia polecenia route jest następująca:

-       $/sbin/route [opcje] [polecenia [parametry]]

·      przeglądanie tablicy rutowania
$ /sbin/route
opis tablicy rutowania:

-       Destination – oznacza adres docelowy pakietów.

-       Gateway – zawiera dane 0 bramce, która zostanie wykorzystana do przesyłania pakietów. Gwiazdka w tym polu oznacza, że pakiety będą przesyłane bezpośrednio.

-       Genmask – wyświetla, jaka jest maska sieci używana dla pakietów przesyłanych określoną drogą. Maska ta dotyczy adresu docelowego.

-       Flags – może znajdować się kilka różnych wartości:

w               U         droga jest aktywna,

w               H         adres docelowy jest adresem komputera, jest to droga statyczna,

w               G         pakiety przechodzą przez bramkę.

-       Metric – informacja o długości drogi.

-       Ref – nie jest wykorzystywana przez jądro systemu Linux.

-       Use – zawiera informację ile razy jądro systemu korzystało z danej drogi.

-       Iface – przedstawia nazwę interfejsu, przez które kierowane są pakiety korzystające z danej drogi.

w               $/sbin/route –n – opcja –n powoduje, że dane są wyświetlane w nieco inny sposób.

·      modyfikowanie tablicy rutowania
polecenie route pozwala również definiować drogi pakietów i usuwać je z tablicy rutowania. Służą do tego następujące polecenia:

-       route add|del [inet | -host] <cel> [gw <bramka>] [netmask <maska_sieci>] [[dev] <interfejs>]

w               opcje add i del pozwalają odpowiednio definiować drogi i usuwać je z tablicy rutowania.

w               opcje –net i –host pozwalają określić czy droga prowadzi do całej sieci czy tylko do pojedynczego komputera

w               parametr cel określa adres sieci lub komputera, do którego pakiety będą trafiać daną drogą

w               parametr gateway określa bramkę, przez którą należy przesyłać pakiety do określonego celu.

-       linuxconf -> Networking -> Client Tasks -> Routing and gateways

 

2.           Narzędzia do zabezpieczenia sieci

a)        Firewall
Firewall to komputer, który oddziela sieć bezpieczną (np. sieć lokalną) od sieci obecnej (np. Internetu) i potrafi kontrolować przekazywane pakiety. Jest to bardzo ważny element bezpieczeństwa sieci.
Istnieją dwa podstawowe typy firewalli: działające na poziomie aplikacji (czyli serwery pośredniczące, proxy) oraz działające na poziomie pakietów.

·      filtrowanie pakietów
w systemie Linux obsługa filtrowania pakietów jest oparta na koncepcji łańcuchów, konfigurowanych za pomocą programu /usr/sbin/ipchains.
Program ipchains pozwala na wstawianie i usuwanie następujących reguł:

-       łańcuch wejściowy (input chain); reguły tego łańcucha odnoszą się do pakietów przychodzących

-       łańcuch wyjściowy (output chain), którego reguły są stosowane do pakietów wychodzących z komputera

-       łańcuch przekazywania (forwarding chain) jest stosowany do pakietów, które przeszły przez łańcuch wejściowy, ale są kierowane do innego komputera lub sieci

-       Każdy pakiet może być obsługiwany na sześć różnych sposobów:

ACCEPT         zezwolenie na przyjęcie, przesłanie lub wysłanie pakietu

DENY             porzucenie pakietu bez informowanie o tym

REJECT          odrzucenie pakietu i wysłanie informacji nadawcy

MASQ                        maskuje numer IP (tylko dla łańcucha forward)

REDIRECT     przesyła pakiet bezpośrednio do określonego komputera (pakiet input)

RETURN        przejście na koniec łańcucha

·        najważniejsze parametry polecenia ipchains:

-A łańcuch                               dodaje regułę do łańcucha

-D łańcuch [nr reguły]  usuwa regułę o numerze [nr reguły]

-N łańcuch                              tworzy nowy łańcuch

-X łańcuch                               usuwa łańcuch tworzony przez użytkownika

-P łańcuch cel                          określa domyślne traktowanie pakietów w

łańcuchu

·        konfiguracja firewall-a

-       /etc/rc.d/rc.firewall lub /etc/rc.d/rc.local

-       linuxconf -> Networking -> Firewalling

 

 

b)        Serwer pośredniczący (proxy)
Najczęściej wykorzystywanym dziś typem serwerów pośredniczących są serwery proxy WWW. W systemie Linux funkcję taką może pełnić na przykład program Squid.

·      konfiguracja serwera proxy

-       katalog /etc/squid; squid.conf

-       linuxconf -> Network -> Server Tasks -> Squid

·      uruchomienie serwera Squid

-       /etc/rc.d/init.d/squid {start/stop/restart}

·      informacje o pracy serwera Squid (log)

-       /var/log/squid/squid.out

 

3.           Serwer pocztowy

a)        protokół SMTP
Simple Mail Transfer Protocol - podstawowy protokół odpowiadający za dostarczanie poczty elektronicznej. Protokół ten jest już ustalonym standardem przesyłania wiadomości poprzez Internet.

b)        protokół POP
Post Office Protocol – protokół wykorzystywany przez programy, które służą do odbierania i czytania poczty elektronicznej. W protokole POP3 każdy użytkownik ma tylko jeden katalog przeznaczony na skrzynkę pocztową, do którego zapisywane są wszystkie wiadomości, jakie otrzymał. POP3 nie ma możliwości rozróżniania czy poczta na serwerze jest przeczytana czy też nie dlatego każdorazowo pobiera wszystkie wiadomości jakie znajdują się w skrzynce. Ostatnią wersją tego protokołu jest POP3.

c)         protokół IMAP
Internet Mail Access Protocol – ulepszony protokół POP3. Jego główną cechą jest to, że w przeciwieństwie do protokołu POP3, użytkownik może posiadać wiele katalogów z poczta na koncie serwera, gdzie zapisuje przeczytaną pocztę. Tak więc kiedy odbierasz pocztę przy użyciu protokołu IMAP otrzymujesz pełny dostęp do wcześniej zapisanych lub przeczytanych wiadomości. Protokół IMAP pobiera najpierw nagłówki z konta, a dopiero potem w całości pobiera wybrane wiadomości. Ostatnią wersją tego protokołu jest IMAP4.

d)        program sendmail
Program przeznaczony do obsługi poczty elektronicznej na serwerze Linux. Program ten zajmuje się tylko i wyłącznie trasowaniem, pozostawiając dostarczanie poczty lokalnym programom. Oznacza to, że użytkownik może korzystać z dowolnego programu do czytania poczty, jeżeli tylko potrafi on zrozumieć format wiadomości zapisywanych przez oprogramowanie odpowiedzialne za jej dostarczanie. Program sendmail dostarcza usługi potrzebne do obsługi połączeń SMPT pod Linuxem.

·      pliki konfiguracyjne sendmaila

-       sendmail.cf (/usr/share/sendmail-cf)

·      dokumentacja programu sendmail

-       file:/usr/share/doc/sendmail/README

-       www.sendmail.org

e)        program postfixconf
Program przeznaczony do obsługi poczty elektronicznej na serwerze Linux. Postfixconf jest szybszy, łatwiejszy w administracji i bezpieczniejszy w porównaniu z programem sendmail. Program ten jest równocześnie kompatybilny z sendmailem

·      konfiguracja programu postfixconf

-       linuxconf -> Network -> Server Tasks -> Postfixconf

·      dokumantacja programu postfixconf

-       file:/usr/share/doc/ht/postfix-20010228ml/index.html

f)          wysyłanie i pobieranie poczty

·      dodatkowe programy pocztowe
zapoznanie się z przykładowymi programami do obsługi poczty elektronicznej w systemie Linux

-       wysyłanie i odbieranie poczty przy użyciu programu KMail (KDE)

·      program mail
wysyłanie i odbieranie poczty przy pomocy programu mail

-       wysyłanie poczty
$ mail login_id@nazwa_serwera (aby wysłać pocztę naciśnij Ctrl+D)

-       odbieranie poczty
$ mail

g)        katalogi z pocztą

·       /var/spool/mail

·       /home/user_id/Mail


4.           Komunikacja pomiędzy użytkownikami

a)        omówienie różnych metod komunikacji

·      $ wall
możliwość wysyłania komunikatów do wszystkich, zalogowanych użytkowników serwera

·      $ write
możliwość wysyłania komunikatów do wybranego użytkownika serwera

·      $ talk
możliwość prowadzenia rozmowy z wybranym użytkownikiem serwera

-       instalacja serwera talk

-       uruchamianie usługi talk – edycja pliku /etc/xinetd/talk i /etc/xinetd/ntalk

-       sprawdzenie pliku /etc/services i uaktywnienie odpowiednich serwisów (talk i ntalk)

-       restart procesu xinetd

b)        serwer IRC
IRC z angielskiego "Internet Realy Chat" to usługa umożliwiająca prowadzenie dyskusji w czasie rzeczywistym czyli w trakcie połączenia z siecią. W odróżnieniu od grup dyskusyjnych lub poczty elektronicznej, gdzie odpowiadamy na listy wysłane przez innych użytkowników Internetu, w IRC-u mamy możliwość natychmiastowej wymiany zdań z rozmówcami.

·      połączenie z serwerem IRC

-       programy dla użytkowników IRC

w               programy dla systemu Linux

w               programy dla systemu Windows

·      podstawowe komendy

Wszystkie komendy IRCa, dla odróżnienia od zwyczajnego tekstu, poprzedzamy  znakiem "/".
/alias nazwa polecenie - tworzy skróty (aliasy) dla używanych poleceń (sekwencji poleceń). Np. /alias j join.
/admin nazwa_serwera - wyświetla informacje o osobie odpowiedzialnej za serwer.
/away tekst - po wykonaniu tego polecenia, użytkownicy wykonujący /whois twój_nick będą również informowani wpisanym przez ciebie tekstem, że nie ma Cię w tej chwili przy komputerze. Ponadto każdy kto prześle nam wiadomość za pomocą /msg zostanie poinformowany tym tekstem, który wpisałeś, że Cię nie ma.
/bind klawisz funkcja - pozwala przedefiniować znaczenie klawisz, nadać klawiszowi nową funkcję.
/clear - czyści ekran.

/ctcp nick komenda parametry - (Client To Client Protocol). Połączenie bezpośrednie między użytkownikami, z pominięciem serwera. /date - wyświetla aktualny czas i datę. Po podaniu jako parametr nazwy serwera wyświetli aktualny czas i data na serwerze, a po podaniu nicka - czas i data na komputerze podanego użytkownika.
/dcc - (Direct Client Connection). Połączenie bezpośrednie miedzy użytkownikami. /dcc chat pozwala na rozmowy bez pośrednictwa serwera, zaś /dcc send nick nazwa_pliku na wysyłanie plików do podanego użytkownika.
/help - pomoc na temat IRCa.
/ignore nick - ignoruje wypowiedzi pochodzące od podanego użytkownika.
/join #kanał - wejście na kanał o podanej nazwie.
/list #kanał -MIN # -MAX # - podaje listę aktualnie dostępnych kanałów. Można sprecyzować najmniejszą oraz największą liczbę kanałów do wyświetlenia. Można również użyć polecania /list w połączeniu ze słowem, które chcemy aby występowało w nazwie kanału. Przy podawaniu wyrazu, możemy użyć gwiazdki (*), zastępując nią dowolną liczbę znaków w wyrazie.
/msg nick tekst - wysłanie wiadomości, która zobaczy tylko osoba, której ją wysłaliśmy.
/names #kanał - wyświetla nicki osób aktualnie przebywających na podanym kanale.
/nick nowy_nick - zmienia aktualny nick na nowy.
/part #kanał - opuszczenie podanego kanału.
/query nick - rozpoczęcie prywatnej rozmowy z podaną osobą.
/quit tekst - opuszczenie IRCa. Na kanale przy informacji o tym, że wyszliśmy, pojawi się podany tekst.
/who #kanał - wyświetla informacje o osobach znajdujących się na podanym kanale.
/whois nick - podaje informacje o danym użytkowniku: jego nazwę hosta, "real name", czyli prawdziwe imię, kanały na których dana osoba jest, serwer, którego używa oraz idle, czyli ile czasu dana osoba nie wykonała żadnej akcji.
/whowas - to samo co /whois, tylko dotyczy osoby, która niedawno opuściła IRCa.

 

powrót