Instytut Elektroniki
Wydział Automatyki, Elektroniki i Informatyki
Politechniki Śląskiej
SIECI KOMPUTEROWE
LABORATORIUM
Instrukcja do ćwiczenia nr 9
Gliwice 2011
Ćwiczenie 9
Budowa, konfiguracja i
zarządzanie siecią Intranet cz. 1
9.1 Wstęp teoretyczny
Intranet to wewnętrzna sieć, która funkcjonuje w oparciu o rozwiązania
stosowane w globalnej sieci Internet, a jej celem jest wspomaganie obiegu in-
formacji wewnątrz grupy użytkowników (np. firmy) i łatwy dostęp do danych.
Pod sformułowaniem „rozwiązania” kryje się przede wszystkim zastosowanie
rodziny protokołów TCP/IP, ale także wykorzystanie internetowych technik
przekazu informacji.
9.1.1
Potrzeba stosowania Intranetu
Stos protokołów TCP/IP został stworzony do połączenia różnych sieci
heterogenicznych (sieci wykonanych w różnych technologiach) w jednolitą
sieć, tak by możliwa była komunikacja dowolnych użytkowników, niezależnie
od ich fizycznego położenia i używanej technologii. Innymi słowy grupa pro-
tokołów TCP/IP jest mechanizmem komunikacji międzysieciowej i takie też
pierwotne znaczenie miało słowo „internet”, które dzisiaj oznacza globalną
sieć i jest w tym znaczeniu zwykle pisane z dużej litery. Intranet wykorzystuje
zalety protokołów rodziny TCP/IP, lecz jest ograniczona do grupy użytkow-
ników (np. firmy czy korporacji).
Stosując protokóły TCP/IP i zawartą w nim filozofię przekazu informa-
cji polegającą na wydobywaniu informacji z różnych zasobów w chwili, kie-
dy są one potrzebne, ułatwia się proces wspólnego wykorzystania zasobów,
przyspiesza czas publikacji informacji wśród użytkowników, uniezależnia wy-
mianę informacji od sprzętu wykorzystywanego przez poszczególnych użyt-
kowników. Poza tym Intranet jako sieć wewnętrzna zapewnia bezpieczeństwo
Ćwiczenie 9 - Wstęp teoretyczny
3
i poufność danych. W przypadku Intranetu, bez połączenia z globalną siecią
Internet, dostęp do sieci jest możliwy tylko z maszyn będących w tej we-
wnętrznej sieci. Możliwe jest także przyłączenie sieci Intranet do Internetu,
a mechanizmy sprzętowo–programowe pozwalają na radykalne zwiększenie
poziomu bezpieczeństwa.
Oprócz w.w. cech wskazujących na celowość stosowania Intranetu, ist-
nieje jeszcze jeden powód, być może zasadniczy, który uzasadnia wybór ta-
kiego rozwiązania. A mianowicie, oczywistym jest że w sieci każda maszyna
musi być jednoznacznie identyfikowana, czyli musi posiadać unikatowy ad-
res, dlatego w sieci o zasięgu globalnym, przydziałem adresów zajmują się
organizacje związane ze standaryzacją bądź zarządzaniem siecią. Organiza-
cją przydzielająca adresy IP w sieci Internet jest IANA (Internet Assigned
Numbers Authority, http://www.iana.org). Użytkownikom na terenie Pol-
ski adresy przydziela NASK (Naukowa i Akademicka Sieć Komputerowa,
http://www.nask.com.pl). Ilość adresów IP jest jednak ograniczona, a liczba
użytkowników sieci Internet stale rośnie, co dla obecnie stosowanej wersji 4
protokołu IP może spowodować wyczerpanie puli adresów. Dlatego przezna-
czono część adresów na cele prywatnych sieci bazujących na protokołach
TCP/IP, czyli sieci intranetowych (zalecenia te zapisane są w dokumencie
RFC 1918). Każdy kto tworzy własną sieć opartą na protokołach TCP/IP
może przypisać maszynom adresy IP również z grupy adresów routowalnych
w Internecie, i nie ma konieczności ubiegania się o przydział adresów w orga-
nizacjach do tego uprawnionych, lecz w przypadku połączenia takiej prywat-
nej sieci z Internetem powstanie konflikt adresów (niejednoznaczne przypi-
sanie adres–maszyna), więc aby uniknąć późniejszego przekonfigurowywania
sieci prywatnej stosuje się adresy zawarte w zaleceniu RFC 1918. Pakiet da-
nych opatrzony takim adresem nie może być przesyłany przez sieć Internet
(jest usuwany), dlatego że nie istnieje żadne urządzenie o takim adresie w tej
sieci. Zbiór tych adresów określa się mianem adresów nieroutowalnych.
9.1.2
Zalety i wady Intranetu
Zalety:
• brak konieczności ubiegania się o adresy IP dla każdej z maszyn w sieci
wewnętrznej;
• możliwość wykorzystania mechanizmów i usług sieci opartej na proto-
kole TCP/IP, a w szczególności:
– ułatwienie użytkownikom sieci dostępu do danych oraz uspraw-
nienie procesu dystrybucji informacji – np. przez usługi WWW,
Ćwiczenie 9 - Wstęp teoretyczny
4
FTP,
– ułatwienie kontaktu między użytkownikami – usługa poczty elek-
tronicznej (e-mail),
– usprawnienie systemu obiegu danych,
– możliwość organizacji pracy grupowej;
• możliwość połączenia z globalną siecią Internet;
• zwiększenie poziomu bezpieczeństwa przez odseparowanie sieci Intranet
(sieci wewnętrznej) od Internetu.
Wady:
• niektóre protokoły internetowe mają problemy z prawidłowym działa-
niem, jeżeli programy wykorzystujące je są podłączone przez serwer po-
średniczący (przykładem mogą być ftp i irc, ale ponieważ są to bardzo
popularne protokoły autorzy oprogramowania pośredniczącego dodają
dodatkowe moduły do ich obsługi);
• żadna maszyna z sieci globalnej Internet nie jest w stanie nawiązać bez-
pośredniego połączenia z maszyną pracującą w sieci Intranet, a co za
tym idzie nie jest możliwe postawienie na maszynie użytkownika Intra-
netu serwera świadczącego usługi w sieci globalnej (może on świadczyć
usługi tylko w obrębie sieci Intranet).
9.1.3
Pula adresów IP dla sieci prywatnych
Zgodnie z dokumentem RFC 1918
1
“Address Allocation for Private Inter-
nets” dla sieci prywatnych przyznano przestrzeń adresów IP (są to tzw. ad-
resy nieroutowalne w globalnej sieci Internet):
a) 10.0.0.0 - 10.255.255.255
b) 172.16.0.0 - 172.31.255.255
c) 192.168.0.0 - 192.168.255.255
Jak nietrudno zauważyć zakres adresów z punktu a) jest niczym innym jak
zbiorem adresów IP z pojedynczej klasy A, zakres wymieniony w punkcie b)
1
Dokumenty RFC są dostępne na stronach Internet RFC/STD/FYI/BCP Archives
(http://www.faqs.org/rfcs/).
Ćwiczenie 9 - Wstęp teoretyczny
5
składa się z 16 zbiorów adresów IP należących do kolejnych klas B, a zakres
z punktu c) – to 256 zbiorów adresów IP kolejnych klas C.
Przynależność do klasy adresowej zależy od wartości pierwszego bajtu –
od wartości pierwszych bitów adresu IP. Ponadto przydział do klasy określa
rozmiar sieci:
klasa A – pierwszy bit adresu = 0, 8 bitów adresuje sieć, która zawiera
16.777.214 hostów – maska podsieci 255.0.0.0;
klasa B – pierwsze dwa bity adresu = 10, 16 bitów adresuje sieć, która
zawiera 65.534 hosty – maska podsieci 255.255.0.0;
klasa C – pierwsze trzy bity adresu = 110, 24 bity adresują sieć, która
zawiera 254 hosty – maska podsieci 255.255.255.0;
klasa D – pierwsze cztery bity adresu = 1110, brak podziału na podsieci,
przeznaczone do transmisji grupowej (multicast);
klasa E – pierwsze cztery bity adresu = 1111, zarezerwowane dla IETF (The
Internet Engineering Task Force, czyli Grupa Robocza ds. Technicznych
Internetu).
Pula adresów IP w wersji 4 (IPv4) protokołu internetowego obejmuje ok.
4 · 10
9
(2
32
) różnych adresów o długości 32 bitów. Dynamiczny rozwój In-
ternetu spowodował, że pula szybko się wyczerpuje. Obecne wykorzystanie
adresów trudno dokładnie określić, szczególnie że względu na sposób przy-
dzielania adresów jaki przyjęła IANA na początku. Podział całej puli na klasy
o różnej wielkości A, B, C (jak podano powyżej w każdej klasie wydzielono
pewną pulę adresów do zastosowań intranetowych) oraz nieużywane jeszcze
D i E spowodował, że firmy rezerwowały całe duże klasy adresów, a faktyczne
ich wykorzystanie było czasami niewielkie.
Adresy klasy A są wykorzystywane przez właścicieli w minimalnym stop-
niu, a ponadto większość jest ciągle nierozdzielona. Troche lepiej jest z wyko-
rzytstaniem adresów klasy B, natomiast adresy klasy C zostają dość szybko
rozdzielone i używane. To sposób podziału powoduje, że wiele adresów ma
staus zarezerwowanych i trudno je wykorzystać w sieci. Dlatego przedstawio-
ny podział na klasy uległ dalszemu rozdrobnieniu i maska może obejmować
inną liczbę komputerów, co pozwala lepiej gospodarować zasobami. Wymóg
jaki pozostał to pierwsze n bitów maski musi być równe 1, a reszta równa 0.
Zmienił się także sposób gospodarowania adresami klasy IPv4 przez IA-
NA. Adresy klasy A przydzielane są organizacjom regionalnym, te dalej roz-
dzielają je do ISP (ang. Internet Service Provider, Operatorzy Internetu)
Ćwiczenie 9 - Wstęp teoretyczny
6
w blokach po 4 klasy C (1024 adresy), a następnie ISP przydzielają adresy
swoim klientom. Duży nacisk kładzie się na wykorzystywanie mechanizmów
NAT, umożliwiających korzystanie z jednego adresu zewnętrznego przez wie-
le urządzeń posiadających adresy lokalne. W ten sposób ogranicza się przy-
dzielanie adresów urządzeniom (tj. drukarkom, punktom dostępowym, itp.)
działającym jedynie w obrębie zamkniętych sieci wewnętrznych. Wciąż moż-
na dostać przypisanie do klasy C dla swojej organizacji, ale staje się to coraz
trudniejsze. Trzeba wykazać rzeczywistą potrzebę dysponowania taką liczbą
adresów.
Obecnie powoli jest wdrażany nowy system numeracji IPv6 (opisany w do-
kumencie RFC2373). Powodem jego powstanie jest nie tylko groźba wyczer-
pania adresów IPv4, ale także konieczność wprowadzenia zmian w organizacji
sieci. Protokół IPv6 posługuje się adresem 128-bitowym, zapisywanym w po-
staci ośmiu bloków rozdzielonych dwukropkami – każdy blok to 4 cyfry szest-
nastkowe. Pula adresowa nie jest dzielona na klasy, co daje większą elastycz-
ność w rozdziale adresów. Zmienił się nagłówek pakietów, w założeniach ma
ułatwić routowanie pakietu. Dodano możliwość szyfrowania i większe możli-
wości zmian. Część nagłówka jest zarezerwowana dla przyszłych rozszerzeń
protokołu. Protokół IPv6 potrafi przesyłać z własnym nagłówkiem (tunelo-
wać) pakiety IPv4 (adres IPv4 jest wtedy częścią adresu IPv6). Umożliwia
to przez pewien okres czasu działanie obydwu protokołów jednocześnie, aż
wszystkie urządzenia zostaną dostosowane do nowej wersji protokołu.
9.1.4
Połączenie z Internetem
Aby połączyć sieć Intranet z globalną siecią Internet oprócz fizyczne-
go połączenia koniecznym jest posiadanie unikatowego routowalnego adresu
IP, pod którym będzie widziana sieć intranet. W celu umożliwienia wielu
użytkownikom Intranetu korzystania z zasobów Internetu na styku Intra-
net – Internet musi następować zamiana adresów z adresów nieroutowalnych
na routowalne. Zamiana taka dokonywana jest przez odpowiednie oprogramo-
wanie na urządzeniu pośredniczącym. Oprogramowanie to można podzielić
na dwie grupy:
• serwer NAT (ang. Network Address Translator ), wykonujący translację
adresów prywatnych na routowalne i odwrotnie bez zwracania uwagi
na typ przesyłanych przez użytkowników danych;
• serwer proxy, serwer pośredniczący w połączeniu pomiędzy dwoma
urządzeniami, który jest w stanie obsłużyć połączenie z Internetem tyl-
ko wybranych aplikacji i protokołów oferując w zamian znacznie więk-
szą kontrolę nad udostępnianymi usługami.
Ćwiczenie 9 - Wstęp teoretyczny
7
Niezależnie od użytej metody przekształcania adresów zastosowanie serwe-
ra NAT lub proxy dość dobrze zabezpiecza sieć prywatną przed dostępem
z Internetu.
NAT
Serwery NAT są często zintegrowane z routerami sprzętowymi, można
więc w prosty sposób udostępnić sieci lokalnej połączenie z Internetem. Ist-
nieją także programowe serwery NAT i są dostępne na praktycznie każdą
platformę systemową. Podstawowym zadaniem NATa jest przekształcanie
adresów źródłowych datagramów wysyłanych z sieci Intranet do Internetu
na adresy routowalne, z puli, którą rozporządza serwer. Podczas operacji
translacji serwer zapisuje w wewnętrznej tablicy NAT informacje o adresie
i porcie źródłowym pakietu przychodzącego z sieci lokalnej wraz z danymi
dla odpowiadającego mu pakietu wysyłanego do sieci globalnej. Numer por-
tu źródłowego pakietu jest zmieniany jeżeli potrzebny zasób jest już zajęty
na serwerze. Pakiety przychodzące z Internetu są przekazywane maszynom
intranetowym na podstawie śladu pozostawionego w tablicy NAT lub są igno-
rowane, jeżeli brak tam odpowiedniego wpisu. Jeżeli serwer dysponuje więcej
niż jednym adresem routowalnym funkcja translacji adresów z sieci lokalnej
może zostać rozbita na całą dostępną pulę.
Czasami pojęcia NAT używa się tylko w sytuacji kiedy jednemu adresowi
w sieci wewnętrznej odpowiada jeden adres z sieci zewnętrznej. Kiedy liczba
urządzeń/adresów w sieci Intranet jest większa niż liczba dostępnych adresów
internetowych, to używa się pojęcia PAT (ang. Port Address Translator),
ponieważ poza zmianą adresu zmieniane sa także porty.
Poza podstawowymi funkcjami mapowania adresów i portów dla celów
udostępniania połączenie internetowego serwery NAT posiadają dodatkowe
możliwości. Dzięki funkcji przekierowania portów można uruchamiać serwi-
sy internetowe na komputerach sieci lokalnej. Serwer NAT przekieruje od-
powiednie pakiety przychodzące z sieci Internet do wyznaczonej maszyny
w sieci wewnętrznej. Operacja taka określana jest mianem „translacji prze-
znaczenia” (ang. destination NAT ), ponieważ zmieniany jest adres docelowy
pakietu. Przy normalnej pracy serwera NAT zmieniany jest adres źródłowy
pakietu (ang. source NAT ).
Jeżeli serwer ma do dyspozycji kilka adresów routowalnych można stwo-
rzyć stałe przypisanie jednego z nich do maszyny lokalnej. Po włączeniu opcji
przekierowania adresu wszystkie pakiety zewnętrzne przeznaczone dla tego
IP są przesyłane do konkretnego komputera lokalnego, a wszystkie pakiety
z tego komputera mają w sieci Internet zawsze ten sam adres źródłowy. Mimo
lokalnego adresu z puli prywatnej maszyna jest widziana w sieci Internet.
Ćwiczenie 9 - Wstęp teoretyczny
8
Pomijając przypadki bezpośredniego przekierowania, serwer NAT doko-
nuje dynamicznego przydziału portów oraz adresów. Liczba maszyn w sieci
intranetowej przekracza zasoby jakimi dysponują użytkownicy przy próbie
połączenia z siecią zewnętrzną, dlatego algorytmy przydziału tych zasobów
użytkownikom są istotne dla działania serwera.
Bezpieczeństwo sieci lokalnej przed atakami z zewnątrz serwer NAT za-
pewnia ze względu na sposób działania. Nie pozwala jednak na kontrolę do-
stępu użytkowników od strony sieci wewnętrznej. Dlatego serwer NAT jest
często używany razem z programem typu firewall (ang. ściana ogniowa), któ-
ry zapewnia dodatkowe bezpieczeństwo i umożliwia kontrolowanie dostępu
użytkowników Intranetu (na poziomie adresów IP i portów).
Serwer proxy
Serwer proxy ułatwia zarządzaniem dostępem użytkowników Intranetu do
zasobów globalnej sieci Internet. Jest to program, który pośredniczy w wy-
mianie pakietów pomiędzy dwoma komputerami. Żądanie połączenia jest wy-
syłane do serwera proxy, on nawiązuje połączenie i odbiera dane z komputera
odległego, a następnie odsyła je do klienta. W przypadku serwera NAT był
tylko tworzony ślad połączenia w tablicy NAT i pakiety były przesyłane na
tak utworzonej drodze połączeniowej pomiędzy urządzeniami. Ingerencja ser-
wera proxy w przesyłane pakiety jest większa niż translatora adresów, dlate-
go stawia on większe wymagania sprzętowi, na którym uruchomiony jest taki
serwer. Przy wykorzystaniu serwera proxy dane są zawsze wysyłane do In-
ternetu z tym samym adresem źródłowym. Nie ma możliwości wykorzystania
większej puli adresów, chyba że przez uruchomienia kilku serwerów.
Serwer proxy umożliwia dostęp do ograniczonej liczby znanych sobie usług
internetowych. Ograniczenie to jest jednak omijane przez producentów opro-
gramowania, którzy przystosowują swoje produkty do ograniczeń stawianych
przez serwery proxy. Można wtedy blokować dostęp użytkowników poprzez
odpowiednią konfigurację serwera. Można blokować (lub nie) dostęp do kon-
kretnych portów, a co za tym idzie usług interenetowych. Można udostępniać
połączenie tylko wybranym maszynom w sieci lub ograniczonej ich liczbie
jednocześnie. Ponadto serwery proxy mają zazwyczaj wbudowane mecha-
nizmy związane z autoryzacją użytkowników, można więc uzależnić zakres
dostępnych usług od użytkownika i hasła. Możliwy jest także dostęp tylko do
wybranych adresów lub wprowadzenie ograniczeń czasowych w dostępie do
sieci.
Dwa podstawowe rodzaje serwerów proxy to serwery typu http proxy (lub
web proxy) oraz serwery typu socks (socks4 i socks5). Dodatkowo tworzy
się wyspecjalizowane serwery proxy do obsługi konkretnego rodzaju ruchu,
Ćwiczenie 9 - Wstęp teoretyczny
9
przykładem są serwery typu rtsp proxy, których zadaniem jest obsługa ruchu
multimediów strumieniowych.
Zadaniem serwera typu http proxy jest, przede wszystkim zapewnienie
dostępu do usługi http, czyli światowej pajęczyny WWW. Serwer taki ma
zazwyczaj zaimplementowane funkcje związane z „cache’owaniem” zawarto-
ści stron internetowych. Przechowuje on na lokalnych dyskach dane z często
odwiedzanych przez użytkowników serwerów. Przy kolejnych wywołaniach
tego samego adresu i pliku klient otrzymuje w odpowiedzi dane z lokalnych
zasobów. Działanie takie często zwiększa szybkość wczytywania stron. Głów-
ną zaletą używania cache’a jest jednak oszczędność pasma łącza dostępowego
do Internetu, ponieważ często używane dane są już na naszym serwerze. Ma
to szczególne znaczenie, gdy opłata za łącze zależy od ilości przesłanych da-
nych.
Serwery typu socks są bardziej uniwersalne. Nie są powiązane z żadną
usługą internetową. Ich działanie opiera się o protokół SOCKS (wersja 5
opisana w dokumentach RFC1928 oraz RFC1929 – autoryzacja użytkowni-
ków). Protokół socks ma za zadanie zapewnienie dostępu do wszystkich usług
internetowych przy braku bezpośredniego połączenia pomiędzy hostami. Ser-
wery socks nie mają wbudowanych usług typu cache stron. Protokół socks
umożliwia dostęp do większej liczby protokołów internetowych niż protokół
wykorzystywany przez serwery web proxy.
Istnieją także serwery proxy, które można określić mianem uniwersalnych
serwerów proxy. Przykładem takiego serwera jest program DeleGate
2
, przez
autorów opisywany nazwą: A Universal Application Level Gateway, co ozna-
cza uniwersalną bramę dla aplikacji internetowych. Program ten wywodzi się
z serwera http proxy, ale obecnie obsługuje także standard SOCKS. Ma funk-
cje cache’owania danych (dla protokołów http i nntp), więc potrafi zmniejszyć
obciążenia łącza internetowego. Obsługuje większość protokołów interneto-
wych, część z możliwością ingerencji w zawartość pakietów (potrafi interpre-
tować przesyłane dane) a inne w sposób przeźroczysty. Posiada funkcje zare-
zerwowane dla serwerów NAT – przekierowanie portów i umożliwia urucha-
mianie serwisów dostępnych w Internecie na maszynach lokalnych. Posiada
rozbudowane możliwości kontroli dostępu – adres IP, port, nazwa domenowa
oraz użytkownik i hasło. Istnieją wersje na systemy UNIX, Windows oraz
OS/2.
Taki uniwersalny serwer proxy posiada wiele zalet w porównaniu ze stan-
dardowymi serwerami proxy czy rozwiązaniami NAT. Rozbudowane moż-
liwości konfiguracji i kontroli dostępu oraz obsługa protokołów, które mogą
sprawiać problemy przy translacji adresów, dostępność na wiele systemów, to
2
(http://www.delegate.org/delegate/)
Ćwiczenie 9 - Wstęp teoretyczny
10
zalety tego programu. Wszystko to jest dostepne po odpowiednim skonfiguro-
waniu jednej aplikacji. Ta uniwersalność musi się niestety odbić na wydajno-
ści. Przewagą UNIXowych serwerów NAT jest ich ścisłe powiązanie z jądrem
systemu, co zapewnią dużą wydajność nawet przy bardzo dużej liczbie ob-
sługiwanych hostów. Dodatkowo można niezależnie uruchomić serwer http
proxy (np. squid), jako cache danych, który potrafi zapewnić bardzo dobrą
wydajność obsługując duży ruch, co odciąży łącze.
Konfiguracja serwera i stacji roboczych
Kolejne różnice w sposobie dostępu do zasobów Internetu można zauwa-
żyć konfigurując stacje robocze, które mają współpracować z serwerem NAT
lub z serwerem proxy.
Jeżeli Internet udostępniany jest przez serwer NAT to komputer udostęp-
niający jest konfigurowany jako brama internetowa. Potrzebne jest włączenie
obsługi przekazywania pakietów IP pomiędzy interfejsami. Przed przejściem
przez interfejs zewnętrzny pakiety mają zmieniane adresy i porty. Stacje
klientów konfiguruje się jak komputery w sieci zewnętrznej z routowal-
nym adresem IP – trzeba ustawić: numer IP, maskę, bramę i serwery
nazw (mogą to być adresy IP zewnętrznych serwerów DNS lub adres IP
lokalnego serwera, jeżeli udostępnia taką usługę).
Gdy połączenie udostępniane jest przez serwer proxy nie jest potrzeb-
na opcja przekazywania pakietów. Realizacją połączenie zajmuje się lokalny
program, który wykorzystuje własne (lub systemowe) informacje dotyczą-
ce zewnętrznej bramy internetowej i serwerów nazw. Stacje klientów muszą
mieć ustawione tylko numer IP i maskę – te dwa parametry są wymaga-
ne do komunikacji w sieci lokalnej. Aby program na wybranym komputerze
sieci intranetowej mógł się połączyć z Internetem musi mieć w ustawieniach
odpowiednią opcję dotyczącą parametrów serwera proxy: adres IP i port oraz
ewentualnie typ serwera. Wymóg taki oznacza, że liczba programów, które
skorzystają z połączenia internetowego jest dodatkowo ograniczana. Produ-
cenci najpopularniejszych programów dodają jednak obsługę przynajmniej
jednego typu proxy do swoich produktów.
Wybór konkretnego rozwiązania – NAT czy proxy zależy od potrzeb. Je-
żeli głównym celem jest udostępnienie użytkownikom sieci lokalnej zasobów
Internetu z dostępem do jak najszerszej liczby usług, to najlepszym roz-
wiązaniem będzie serwer NAT. Dodatkowo aby zmniejszyć obciążenie łącza
można uruchomić serwer http proxy z usługą „cache”. Dobrze skonfigurowa-
ny firewall pozwoli na kontrolowanie ruchu w sieci intranetowej. Wyłączenie
NATa będzie konieczne tam gdzie potrzebna jest przede wszystkim kontrola
Ćwiczenie 9 - Wstęp teoretyczny
11
nad ruchem sieciowym. Ułatwi to wybór dostępnych usług zależnie od użyt-
kowników i godzin użytkowania. Wystarczy wtedy serwer web proxy, a jeżeli
zachodzi potrzeba uruchomienia programów wymagających bezpośredniego
połączenie można dodatkowo uruchomić serwer socks. Wszystkie te programy
pracują niezależnie i mogą być włączone jednocześnie.
9.1.5
Przykładowe rozwiązania
Podłączenie sieci lokalnej
Najpopularniejsze rozwiązanie sieci intranetowej prezentuje rys. 9.1. Ma-
ła sieć lokalna podłączona jest poprzez koncentratory (przełączniki lub huby)
do serwera, który udostępnia połączenie internetowe. Dostawca usług inter-
netowych (ISP) dostarcza modem oraz przydziela na własnym serwerze jeden
numer IP. Router jest po stronie operatora. Wszystkie serwery sieci intrane-
towej widoczne są na zewnątrz pod tym samym numerem IP.
Konfiguracja zewnętrznego interfejsu serwera (A) zależy od ISP. Najczę-
ściej interfejs ten będzie skonfigurowany dynamicznie przez serwer DHCP,
który przydzieli adres IP, maskę, adres IP bramy i nazwy serwerów DNS.
Interfejs wewnętrzny (B) dostaje numer z puli adresów nieroutowalnych ra-
zem z odpowiednią maską. Tą samą maskę mają komputery w sieci lokalnej
wraz z odpowiednimi numerami IP i adresem bramy, którym adres interfejsu
wewnętrznego serwera.
Na rysunku sieć lokalną podłączono do Internetu poprzez modem (tele-
foniczny, DSL, itp.), ale może to być również karta sieciowa z routowalnym
IP lub łącze bezprzewodowe.
Sieć występującą po stronie połączenia B można rozbudować. Ograni-
czenie liczby podłączonych końcówek stanowią bardziej względy praktyczne
niż techniczne możliwości rozbudowy sieci wewnętrznej. Jak wspomniano na
wstępie w sieci intranetowej można wykorzystać wszystkie rozwiązania znane
w Internecie: routery, mostki, switche, itd. Można podzielić sieć lokalną na
podsieci. Przykład rozbudowanej sieci intranetowej prezentuje rys. 9.2. Ro-
uter zapewnia połączenie pomiędzy komputerami w róznych podsieciach i w
razie potrzeby kieruje pakiety do serwera podłaczonego do Internetu.
Trzeba pamiętać, że kiedy liczba komputerów rośnie, to mogą się pojawiać
coraz większe problemy z dostępem do Internetu. Wszystkie komputery mają
w ramach światowej sieci ten sam numer IP a liczba dostępnych portów
jest ograniczona. Bardziej rozbudowane sieci intranetowe (sieci korporacyjne)
można połączyć z siecią globalną przez kilka numerów IP, ciągle korzystając
z pojedynczego łącza fizycznego.
Ćwiczenie 9 - Wstęp teoretyczny
12
R
S/H
M
M
S
1
2
5
4
3
A
B
Rysunek 9.1: Przykład sieci Intranet – jeden adres IP, mała liczba kompu-
terów (R – router, M – modem, S – serwer, S/H – przełącznik (switch) lub
hub, 1..5 – stacje robocze)
R
M
S
1
A
2
A
4
A
3
A
A
B
S/H
A
S/H
B
S/H
C
1
C
2
C
4
C
3
C
1
B
2
B
4
B
3
B
PODSIEÆ A
PODSIEÆ C
PODSIEÆ
B
Rysunek 9.2: Przykład sieci Intranet – jeden adres IP, duża liczba kompute-
rów (oznaczenia jak na rys. 9.1)
Ćwiczenie 9 - Wstęp teoretyczny
13
R
S/H
S
A
PODSIEÆ A
S
C
PODSIEÆ C
PODSIEÆ B
S
B
S
S
FTP
S
WWW
Rysunek 9.3: Przykład sieci Intranet – kilka adresów IP, duża liczba kompu-
terów i serwerów pośredniczących (oznaczenia jak na rys. 9.1 oraz S
W W W
,
S
E
−
M AI L
, S
F T P
– serwery odpowiednich usług internetowych)
Jeden ze sposobów wykorzystania większej puli routowalnych adresów IP
przedstawia rys. 9.3. Rozdziałem dostępnych routowalnych adresów zajmuje
się router. Adresy z tej puli otrzymują serwery usług internetowych (www,
poczta, ftp, itp.) oraz serwery NAT/proxy w poszczególnych podsieciach.
Komputery użytkowników mają adresy lokalne i są widziane w Internecie
jako jeden z serwerów pośredniczących. Wadą tego rozwiązania jest brak
bezpośredniego połączenia pomiędzy komputerami w różnych podsieciach
(oddziałach firmy). Każdy ma dostęp do lokalnych serwerów ftp/www/e-
mail oraz do Internetu, ale nie mogą się łączyć bezpośrednio ze sobą np.
przez protokół smb lub lokalne serwery ftp, jeżeli są w różnych podsieciach.
Jak wspomniano wcześniej serwer NAT może rozdzielać ruch intraneto-
wy pomiędzy kilka routowalnych adresów IP oraz może kierować wywołania
zewnętrzne na konkretne maszyny w sieci lokalnej. Możliwości te wykorzy-
stano w sieci zaprezentowanej na rys. 9.4. Router lokalny łączy poszczególne
podsieci lokalne i kieruje odpowiednie pakiety do serwera NAT. Ruch można
rozdzielić równomiernie pomiędzy wszystkie dostępne internetowe adresy IP,
pomijając w tym rozdziale serwery konkretnych usług (www, ftp, ...). Serwe-
ry te można także podłączyć bezpośrednio do routera zewnętrznego, przed
serwerem NAT. Połączenie z nimi od strony Internetu będzie wtedy łatwiej-
sze a dla użytkowników sieci lokalnej będą kolejnymi komputerami światowej
pajęczyny.
Ćwiczenie 9 - Wstęp teoretyczny
14
R
R
PODSIEÆ A
PODSIEÆ C
PODSIEÆ B
S
S
FTP
S
WWW
S
NAT
Rysunek 9.4: Przykład sieci Intranet – kilka adresów IP, duża liczba kompu-
terów i jeden serwer NAT (oznaczenia jak na rys. 9.3)
Oprogramowanie serwerów pośredniczących
Odpowiednie oprogramowanie umożliwiające podłączenie do Internetu
sieci lokalnej istnieje na właściwie każdy system operacyjny. Użycie konkret-
nego rozwiązania zależy przede wszystkim od rozmiarów sieci.
Najbardziej obecnie popularne systemy z rodziny Windows, zaczynając
od wersji 98SE, poprzez systemy z rodziny 2000, XP czy Vista, mają funkcję
udostępniania połączenia internetowego (usługa ICS, ang. Internet Connec-
tion Sharing
). Usługa ta działa jako serwer NAT i w wersjach „domowych”
systemu Windows ma małe możliwości konfiguracji. Systemy serwerowe fir-
my Microsoft posiadają zaawansowane usługi służące do translacji adresów
i routingu. Ponadto istnieje wiele programów firm trzecich, różnej jakości
i w większości przypadków komercyjnych, które pomogą stworzyć serwer
NAT lub proxy. Odpowiednie programy można szybko wyszukać w sieci In-
ternet.
Systemy UNIX’owe mają obsługę sieci zazwyczaj „wbudowaną” w jądro
systemowe. Dotyczy to także funkcji związanych z routingiem i translacją
adresów. W systemach z rodziny Linux filtracją pakietów zajmuje się obec-
nie (jądro w wersji 2.6) moduł iptables (netfilter). Realizuje on funkcje
firewalla i translacji adresów. W systemach BSD funkcje te realizują ipnat
w połaczeniu z ipf (ipfilter) lub natd razem z ipfw (ipfirewall), opisywane
w „Handbooku” jak rozwiązanie dla systemu FreeBSD [5].
Wśród serwerów proxy najpopularniejszy jest obecnie program squid roz-
powszechniany wg zasad licencji GPL, który działa na systemach typu UNIX.
Jest to program typu http proxy. Używany jest przede wszystkim jako cache
stron internetowych, ale po odpowiedniej konfiguracji zyskujemy możliwość
Ćwiczenie 9 - Wstęp teoretyczny
15
bardzo precyzyjnego sterownia dostępem do sieci.
9.1.6
Zarządzanie siecią Intranet
Sieć intranetowa to odrębny blok sieci, który nie podlega administracji
organizacji międzynarodowych (jak IANA), ale rządzą nią podobne reguły.
W zakresie Intranetu lokalny administrator powinien dbać o przydział ad-
resów IP, routing (przy dużych sieciach), przydział pasma oraz dostęp tylko
dla autoryzowanych użytkowników i urządzeń.
Wybór używanej puli adresowej zależy od wielkości sieci oraz od typu
i ilości klientów korporacyjnych – duża sieć może wymagać wyraźnego roz-
działu grup użytkowników, a routery zapewnią łączność pomiędzy segmen-
tami. Przydział numerów IP można zautomatyzować uruchamiając serwer
DHCP (ang. Dynamic Host Configuration Protocol), który na żądanie klien-
ta przydziela mu adres IP i dba o to, żeby adresy się nie dublowały.
Serwer DHCP przydziela oprócz adresu IP i maski także numer bramy
internetowej, adresy serwerów DNS, nazwe domenową. Może wysyłać także
inne informacje, np. o systemie plików dla stacji bezdyskowych, co jest wy-
korzystywane w szczególnych sytuacjach. Parametry są „wypożyczane” na
określony czas (ang. lease-time), po którym stacja klienta ponownie prosi
o przydział numeru. Możliwe jest przydzielenie za każdym razem innego nu-
meru, ale zazwyczaj serwer nadaje klientowi ten sam numer, kiedy ten o to
prosi, jeżeli tylko pula adresowa jest wystarczająco duża. Aktualna lista ad-
resów MAC i odpowiadających im numerów IP jest przechowywana w bazie.
Działanie automatyczne jest bardzo wygodne, ale rodzi pewne niebezpieczeń-
stwa, kiedy chcemy się zabezpieczyć przed nieautoryzowanym dostępem do
zasobów sieci Intranet. Każdy może poprosić o numer IP i korzystać z zaso-
bów sieci lokalnej, a także globalnej.
Można tak skonfigurować serwer DHCP, żeby przydzielał numery tyl-
ko wybranym klientom – na podstawie adresu fizycznego karty sieciowej.
Spowoduje to, że identyfikacja komputera w sieci na podstawie numeru IP
będzie równie łatwa jak na podstawie unikalnego adresu MAC. Stosując na-
rzędzia takie jak arpwatch (http://www-nrg.ee.lbl.gov/ – LBNL’s Network
Research Group) można wykrywać zmiany przypisania par IP/MAC. Po-
nadto za pomocą firewalla (obecna wersja ipfw2 z 2002 roku, która pojawiła
się w FreeBSD 4.7, posiada opcje filtrowania pakietów w warstwie drugiej)
można odciąć nieznane urządzenia.
Wiele urządzeń sieciowych, takich jak switche i routery, pozwala na kon-
trolowanie dostępu do zasobów sieci na poziomie warstwy drugiej i trzeciej
stosu protokołów modelu OSI. Obecnie programy konfiguracyjne tych urzą-
dzeń wyposażony jest często w interfejs www, co pozwala na szybką i łatwą
Ćwiczenie 9 - Problemy do rozwiązania przed ćwiczeniem
16
zmianę ustawień – mimo dużej liczby opcji urządzenie spełnia swoje podsta-
wowe funkcje natychmiast po podłączeniu. W dużych sieciach, gdzie użyt-
kownicy mogą często zmieniać punkt podłączenia przydaje się zarządzanie
centralne. Można wykorzystać protokół 802.1Q do podziału na podsieci i za-
rządzanie z wykorzystaniem protokołu 802.1X i serwera RADIUS – więcej
szczegółów w rozdziale dotyczącym bezpieczeństwa w sieciach bezprzewodo-
wych.
Literatura
1. Douglas E. Comer Sieci komputerowe i intersieci, Wydawnictwa Naukowo
– Techniczne 2000
2. Craig Hunt TCP/IP Administracja sieci, Wydawnictwo RM 1998
3. Krzysztof Nowicki, Józef Woźniak, Sieci LAN, MAN i WAN – protokoły
komunikacyjne
, Wydawnictwo Fundacji Postępu Telekomunikacji 1998
4. Mark Sportack Sieci komputerowe – Księga eksperta, Helion 1999
5. FreeBSD Handbook: The FreeBSD Documentation Project, http://www.freebsd.org/
doc/en US.ISO8859-1/books/handbook/index.html
6. FreeBSD Hypertext Man Pages, http://www.freebsd.org/cgi/man.cgi
7. FreeBSD HOWTO, http://www.freebsd-howto.com/HOWTO/
9.2 Problemy do rozwiązania przed ćwicze-
niem
a) Jak wygląda procedura przyznawania adresów IP globalnej sieci Inter-
net? Kto zajmuje się rozdziałem adresów na świecie, a kto w Polsce?
Czy można zlokalizować geograficznie komputer tylko po numerze IP
(nie posiadający nazwy domenowej)?
b) Zastanów się nad regułami przydziału adresów IP w sieci Intranet. Jak
podzielić sieć aby poprawić jej wydajność?
c) Jakie są sposoby oznaczania maski podsieci? Co oznacza zapis nu-
mer IP/24? Jaki zakres adresów obejmuje maska /24? Ile komputerów
może zawierać taka podsieć?
Ćwiczenie 9 - Program ćwiczenia
17
d) Co to jest adres sieci (ang. network address) i adres rozgłoszeniowy
(ang. broadcast address)? Jak sprawdzić czy dwa komputery należą do
tej samej podsieci IPv4? [podpowiedź: wykorzystaj adresy IP i maskę]
e) Przeczytaj rozdział 19.11 “Network Address Translation” z “FreeBSD
Handbook”. Zapoznaj się z dołączoną do systemu dokumentacją
3
do-
tyczącą: natd(8), ipfw(8) i rc.conf(5).
f) Przeczytaj rozdział 10 “Access Controls” z “SQUID Frequently Asked
Questions” (http://www.squid-cache.org/Doc/FAQ/FAQ.html).
9.3 Program ćwiczenia
Celem ćwiczenia jest zintegrowanie sieci Intranet z siecią globalną In-
ternet. Jako platforma sprzętowo-programowa do ćwiczeń używany będzie
system FreeBSD oraz router D-Link DI-714P+. Urządzenie to jest tylko ser-
werem NAT i pozwala na podłączenie małej sieci na jednym zewnętrznym
numerze IP – nie jest to przełącznik warstwy 3 jak wskazuje nazwa. Część
pierwsza obejmuje budowę sieci Intranet, konfigurację serwera świadczącego
usługę translacji adresów i udostępnianie serwisów internetowych.
9.3.1
Część 1: Budowa sieci intranetowej
Ćwiczenie obejmuje następujące etapy:
• konfiguracja sieci na serwerze i stacjach roboczych;
• konfiguracja usługi NAT na serwerze z systemem FreeBSD;
• włączenia usługi przekierowania portów w systemie FreeBSD;
• udostępnienie Internetu i przekierowanie portów na „routerze”.
Budowa i konfiguracja sieci Intranet
Zbuduj prostą sieć intranetową: serwer + dwie stacje robocze, jak na
rys. 9.5. Serwer posiada dwa interfejsy sieciowe - zewnętrzny, połączony z In-
ternetem i lokalny, połączony ze stacjami roboczymi. Adres IP, maskę, bramę
i adresy serwerów nazw interfejsu zewnętrznego serwera podano na rysunku,
jeżeli prowadzący ćwiczenie nie poda innych ustawień można je zastosować.
3
tzw. “man pages”, wyświetlana po wpisaniu polecenia man [nr] <nazwa komendy>,
dostępne także pod adresem [6]
Ćwiczenie 9 - Program ćwiczenia
18
Internet
adres IP: ......................
maska: .........................
brama: .........................
adres IP: ......................
maska: .........................
brama: .........................
adres IP: ......................
maska: .........................
adres IP:
maska:
brama:
DNS:
157.158.24.67
255.255.255.0
157.158.24.1
157.158.24.1
Rysunek 9.5: Konfiguracja laboratoryjnej sieci Intranet
W zakresie Intranetu użyj adresów z zakresów przeznaczonych dla sie-
ci prywatnych, np. z sieci 192.168.0.0 z maską 255.255.255.0. Na interfejsie
wewnętrznym serwera ustaw adres IP i maskę, komputerom klientów przy-
pisz adres IP, maskę, bramę i adresy serwerów nazw. Adres lokalny serwera
stanowi bramę dla komputera klienta, serwery nazw mogą być takie same
dla urządzeń w sieci wewnętrznej jak dla serwera. Za pomocą polecenia ping
sprawdź czy komputery są ze sobą połączone. UWAGA: mimo poprawnej
konfiguracji interfejsów sieciowych komunikacja może być zakłócona z powo-
du blokady ruchu przez firewall.
Serwer
Do konfiguracji i wyświetlania informacji o stanie interfejsów sieciowych
w systemach UNIXowych służy polecenie ifconfig. System FreeBSD konfi-
guruje karty sieciowe po starcie na podstawie wpisów w pliku /etc/rc.conf,
które mają przykładowo postać (przykład zakłada istnienie karta sieciowej
o nazwie xl0 w systemie):
ifconfig_xl0="inet 192.168.0.1 netmask 255.255.255.0
media 100baseTX mediaopt full-duplex"
Ćwiczenie 9 - Program ćwiczenia
19
Listę wszystkich interfejsów sieciowych w systemie wraz z informacją o ak-
tywności wyświetla polecenie ifconfig, karty sieciowe identyfikuje obecność
adresu ethernetowego (MAC) w opisie. Nazwa interfejsu składa się z nazwy
sterownika (przykładowo xl to karty 3Com serii 3c90x) oraz liczby określa-
jącej kolejną kartę tego typu w systemie, zaczynając od 0. W czasie pracy
systemu także można zmieniać adres interfejsu sieciowego (o ile sterownik na
to pozwala), a służy do tego polecenie:
ifconfig xl0 inet 192.168.0.1 netmask 255.255.255.0
media 100baseTX mediaopt full-duplex
Zazwyczaj nie jest konieczne definiowanie trybu pracy karty sieciowej (w przy-
kładzie opcja: media 100baseTX mediaopt full-duplex), jeżeli jednak sys-
tem automatycznie wybiera nieprawidłowe ustawienia można je zmienić. Li-
stę dostępnych dla danej karty trybów pracy można wyświetlić poleceniem
ifconfig -m
.
Interfejs zewnętrzny, połączony z Internetem powinien być skonfigurowa-
ny automatycznie dzięki usłudze DHCP, jeżeli tak nie jest należy ustawić
poza odpowiednim adresem IP i maską tej karty sieciowej (powyższymi po-
leceniami) a także:
• bramę internetową: można użyć polecenia /sbin/route add default
157.158.24.1
lub dopisać linię defaultrouter="157.158.24.1" w pli-
ku /etc/rc.conf, aby brama była ustawiana przy starcie systemu,
• adresy serwerów DNS, które ustawiamy dopisując każdy z używanych
serwerów nazw w postaci linii nameserver 157.158.24.1 do pliku
/etc/resolv.conf
.
Stacje klientów
Podłącz dwa komputery w sieci lokalnej jako stacje korzystające z usługi
NAT. Na jednym z komputerów powinien być uruchomiony system FreeBSD,
konfiguracja IP, maski, bramy i serwerów nazw przebiega zgodnie z opisem
dla serwera. Można też wykorzystać narzędzie systemowe, takie jak program
sysinstall
. Drugi komputer ma być skonfigurowany w systemie Windows.
Odpowiednie ustawienia sieci można znaleźć w Panelu sterowania, narzędzie
Sieć
lub Połączenia sieciowe, zależnie od wersji systemu.
Udostępnienie połączenia internetowego
Udostępnianie połączenia internetowego w systemie FreeBSD można zre-
alizować korzystając z demona natd, którego zadaniem jest translacja adre-
Ćwiczenie 9 - Program ćwiczenia
20
sów. Podstawowe działanie tego programu wymaga dodatkowo:
• skompilowania jądra systemowego z opcjami: IPFIREWALL i IPDIVERT
(domyślnie po włączeniu firewalla cały ruch IP jest blokowany) – ze
względu na czas kompilacji odpowiednio skonfigurowane i skompilowa-
ne jądro jest już przygotowane;
• skonfigurowania serwera do roli bramy internetowej, czyli załączenia
przesyłania pakietów IP pomiędzy interfejsami sieciowymi – w trakcie
pracy systemu należy ustawić odpowiednią zmienną systemową pole-
ceniem /sbin/sysctl net.inet.ip.forwarding=1 – natomiast opcja
gateway enable="YES"
w pliku /etc/rc.conf powoduje uaktywnienie
trybu bramy przy starcie serwera;
• konfiguracji i odblokowania firewalla (ipfw) – w wersji podstawowej wy-
magane jest przekierowanie pakietów do demona natd na odpowiedni
interfejs sieciowy (zewnętrzny, w przykładzie fxp0) za pomocą polece-
nia divert oraz odblokowanie ruchu, jeżeli jądro zostało skompilowane
z opcją domyślnego blokowania wszystkich połączeń IP (a tak jest przy
podanej wyżej konfiguracji). Przykładowo należy użyć poleceń:
/sbin/ipfw -f flush
/sbin/ipfw add divert natd all from any to any via fxp0
/sbin/ipfw add pass all from any to any
Aby system startował z takimi ustawieniami należy ustawić następujące
opcje w pliku /etc/rc.conf, czyli dopisać: firewall enable="YES"
i firewall type="OPEN".
Następnie należy uruchomić program natd podając informację o interfej-
sie na którym ma być przeprowadzana translacja adresów – jest to interfejs
sieciowy podłączony do sieci zewnętrznej (przy powyższej konfiguracji
firewalla należy użyć polecenia /sbin/natd -interface fxp0) – inne opcje
można znaleźć w dokumentacji. Gdy konfiguracja usługi NAT jest bardziej
rozbudowana warto wszystkie opcje zapisać w pliku i uruchomić program
z następującymi parametrami:
/sbin/natd -interface fxp0 -config /etc/natd.conf
Dyrektywy (które odpowiadają powyższej komendzie): natd enable="YES",
natd interface="fxp0"
i natd flags="-config /etc/natd.conf" dopi-
sane w pliku /etc/rc.conf włączą translację adresów przy starcie systemu
Ćwiczenie 9 - Program ćwiczenia
21
i spowodują jednocześnie dodanie do konfiguracji firewalla opcji kierowania
ruchu przez proces natd (polecenie divert).
Skonfiguruj serwer tak, aby translacja adresów i udostępnia-
nia Internetu było uruchamiane przy starcie systemu
. Zgodnie z po-
danymi wcześniej wyjaśnieniami przykładowy plik startowy /etc/rc.conf
powinien zawierać następujące linie (pozostałe opcje nie są konieczne, ale
można je pozostawić):
ifconfig_fxp0="DHCP"
ifconfig_xl0="inet 192.168.0.1 netmask 255.255.255.0"
gateway_enable="YES"
natd_enable="YES"
natd_interface="fxp0"
natd_flags="-config /etc/natd.conf"
firewall_enable="YES"
firewall_type="OPEN"
W pliku /etc/defaults/rc.conf, którego nie należy zmieniać, znajdują
się wartości domyślne dla powyższych opcji wraz z krótkimi komentarzami.
Zmiany w pliku /etc/rc.conf NIE SĄ odczytywane i ustawiane
przez system automatycznie w czasie pracy
. Ustawienia te można za-
ładować restartując serwer (polecenie reboot) lub „zabijając” proces init
(polecenie: kill 1, ponieważ init uruchamiany jest jako pierwszy) co spo-
woduje przejście do trybu Single Mode. System pyta o domyślną powłokę
proponując /bin/sh – należy zatwierdzić klawiszem Enter a następnie uży-
wając polecenia exit wrócić do normalnej pracy systemu – pliki startowe
zostaną powtórnie odczytane, a system przekonfigurowany.
Można również zmieniać konfigurację serwera zgodnie z ustawieniami za-
wartymi w pliku rc.conf restartując pojedyncze usługi. Zmiany powyższych
ustawień można dokonać następującymi poleceniami:
/etc/rc.d/netif restart
– zmienia konfigurację interfejsów sieciowych
(ustawia adres IP i maskę);
/etc/rc.d/routing restart
– ustawia bramę domyślną i uruchamia funk-
cjonalność bramy na serwerze;
/etc/rc.d/ipfw restart
– konfiguruje firewall;
/etc/rc.d/natd restart
– restartuje usługę NAT.
Ćwiczenie 9 - Program ćwiczenia
22
Używając ponownie polecenia ping oraz przeglądarki sprawdź, czy kom-
putery w sieci intranetowej mają połączenie pomiędzy sobą oraz z Interne-
tem. Sprawdź połączenia klienta z wybranym lokalnym i zewnętrznym adre-
sem IP oraz z dowolnym adresem podanym za pomocą nazwy domenowej.
Udostępnienie serwisów internetowych
Na jednym z komputerów w sieci wewnętrznej (w Intranecie) uruchomio-
no serwisy internetowe (http, ftp, ssh). Sprawdź z serwera udostępniającego
Internet poleceniem nmap -T5 xxx.xxx.xxx.xxx parametry udostępnionych
serwisów, xxx.xxx.xxx.xxx to numer IP komputera klienta, na którym uru-
chomiono system FreeBSD. Polecenie to służy do skanowania portów i wy-
świetlenia informacji o dostępnych usługach. Na drugim komputerze w sieci
wewnętrznej sprawdź jaką stronę wyświetla uruchomiony w Intranecie serwer
WWW (http://xxx.xxx.xxx.xxx).
Udostępnienie serwisów lokalnych w Internecie wykonuje się na serwe-
rze udostępniającym połączenie ze światem. Do włączenia tej usługi w sys-
temie FreeBSD służy opcja przekierowania portów programu natd, czyli
redirect port
. Szczegóły użycia można znaleźć w dokumentacji wywoły-
wanej poleceniem man natd), która podaje że wymagane parametry opcji są
następujące:
-redirect_port proto targetIP:targetPORT aliasPORT
gdzie: proto, targetIP i targetPORT to parametry uruchomionego w Intra-
necie serwisu, odpowiednio protokół, adres i port, a aliasPORT to port na
którym serwis ten będzie udostępniony w Internecie.
Zmiany w konfiguracji NATa wymagają wyłączenia programu natd (po-
leceniem kill numer procesu) i ponownego uruchomienia go z aktualnymi
(wymaganymi) i dodatkowymi (dotyczącymi przekierowania) parametrami.
Numer procesu oraz aktualne parametry można uzyskać wydając polecenie
ps -ax | grep natd
. Odpowiednie opcje dodatkowe można zapisać w pliku
/etc/natd.conf
lub w wierszu poleceń. W przypadku użycia pliku należy
dopisać do parametrów uruchamiania opcję: -config /etc/natd.conf, a
wszystkie opcje w pliku należy umieścić w kolejnych liniach wraz z parame-
trami bez znaku „-” przed nazwą opcji. Przy uruchamianiu wszystkich opcji
z linii poleceń należy użyć wspomnianej wcześniej składni -redirect port
proto targetIP:targetPORT aliasPORT
wielokrotnie, zapisując kolejno pa-
rametry przekierowań.
Przekierowania portu można dokonać blokując domyślny port usługi na
serwerze (np: 80 → 80 dla http) lub używając dla danej usługi zupełnie in-
nego portu, dzięki czemu domyślny port serwera zostanie wolny (np: 22 →
Ćwiczenie 9 - Program ćwiczenia
23
20022 dla ssh). Udostępnij usługi http i ssh wg schematu podanego w przy-
kładach. Sprawdź działanie przekierowania serwisów używając wyznaczonego
komputera podłaczonego do Internetu.
Wykorzystanie sprzętowego routera do translacji adresów
Użycie systemu operacyjnego takiego jak FreeBSD, Linux czy Windows
pozwala na dużą elastyczność przy konfiguracji Intranetu a poza tym możliwe
jest uruchomienie wybranych serwerów internetowych, np.: poczty, serwisu
www, ftp, itp. oraz zarządzanie pasmem czy rozbudowane filtrowanie pa-
kietów. Często jednak nie są potrzebne dodatkowe usługi, a istnieje jedynie
potrzeba podzielenia łącza i ewentualnego przekierowania portu dla użytkow-
nika. Takie proste funkcje spełniają dostępne na rynku proste routery (czy
też: rutery), jak przykładowo dostępny w laboratorium D-Link DI-714P+.
Do konfiguracji wymagany jest komputer w sieci wewnętrznej z dzia-
łająca przeglądarka www, gdyż cała konfiguracja odbywa się przez prosty
w obsłudze interfejs stworzony w html i javascript. Laboratoryjny egzem-
plarz urządzenia DI-714+ jest dostępny od strony sieci LAN pod adresem
192.168.0.1
. Domyślne parametry logowania to: użytkownik admin i brak
hasła.
Zastąp serwer FreeBSD wcześniej wspomnianym routerem i korzystając
z tego urządzenia udostępnij połączenie z Internetem komputerom w sieci
wewnętrznej oraz dokonaj przekierowania portów.
• Ustaw adres IP od strony Internetu (sekcja WAN w zakładce Home),
adres w sieci lokalnej zostaw bez zmian i dopasuj w razie potrzeby
komputery w Intranecie do ustawień routera, lub dopasuj adres lokalny
routera do swojej sieci. Translacja adresów jest domyślnie włączona.
Sprawdź czy komputery w sieci lokalnej mają dostęp do Internetu.
• Operację przekierowania portów można zrealizować za pomocą opcji
dostępnych w sekcji Virtual Server w grupie Advanced – ustaw opcje
przekierowania serwisów tak jak poprzednio z użyciem FreeBSD (80 →
80 i 22 → 20022). Sprawdź czy wybrane serwisy są dostępne z poziomu
sieci Internet.