background image

Wydział Informatyki 
Laboratorium Sieci Komputerowych 

Data: 
24.04.2014r. 
PS 2 

Temat:  7. Maskarada i Firewall w 
Linuxie. 
Zespół:  

1.  Patrycja Manias 
2.  Eryk Rutkowski 
3.  Michał Gołdych 

Prowadzący: 
dr Walenty Oniszczuk 

 

 

1.  Treść zadania do wykonania 

Aby wykonać zadanie należało:  
1. Podłączyć trzy komputery do switcha, gdzie jeden z nich pełnił rolę bramy 
dostępowej, a dwa pozostałe klientów. 
2. Skonfigurować ustawienia IP dla bramy oraz klientów. 
3. Utworzyć plik "maskarada" na bramie oraz nadać mu prawa do wykonania. 
4. Sprawdzić łączność klientów i bramy między sobą. 
5. Sprawdzić działanie sieci z różnymi ustawieniami (blokowanie całego ruchu lub 
dostępu do wybranych witryn) 

 

2.  Teoria 

 

NAT (skr. od ang. Network Address Translation, tłumaczenie adresów sieciowych; 

czasem Native Address Translation, tłumaczenie adresów rodzimych), znane również jako 
maskarada sieci lub IP (od ang. network/IP masquerading) – technika przesyłania ruchu 
sieciowego poprzez router, która wiąże się ze zmianą źródłowych lub docelowych adresów 
IP, zwykle również numerów portów TCP/UDP pakietów IP podczas ich przepływu. 
Zmieniane są także sumy kontrolne (tak IP jak i TCP/UDP), aby potwierdzić wprowadzone 
zmiany. 
 

Większość systemów korzystających z NAT ma na celu umożliwienie dostępu wielu 

hostom w sieci prywatnej do Internetu przy wykorzystaniu pojedynczego publicznego 
adresu IP. Niemniej NAT może spowodować komplikacje w komunikacji między hostami i 
może mieć pewien wpływ na osiągi. 
 

Wraz ze wzrostem liczby komputerów w Internecie, zaczęła zbliżać się groźba 

wyczerpania puli dostępnych adresów internetowych IPv4. Aby temu zaradzić, lokalne sieci 
komputerowe, korzystające z tzw. adresów prywatnych (specjalna pula adresów tylko dla sieci 
lokalnych), mogą zostać podłączone do Internetu przez jeden komputer (lub router), 
posiadający mniej adresów internetowych niż komputerów w tej sieci. 
 

Router ten, gdy komputery z sieci lokalnej komunikują się ze światem, dynamicznie 

tłumaczy adresy prywatne na adresy zewnętrzne, umożliwiając użytkowanie Internetu przez 
większą liczbę komputerów niż posiadana liczba adresów zewnętrznych. NAT jest często 
stosowany w sieciach korporacyjnych (w połączeniu z proxy) oraz sieciach osiedlowych. 
 

Zapora sieciowa (ang. firewall) – jeden ze sposobów zabezpieczania sieci i systemów 

przed intruzami. Termin ten może odnosić się zarówno do dedykowanego sprzętu 
komputerowego wraz ze specjalnym oprogramowaniem, jak i do samego oprogramowania 
blokującego niepowołany dostęp do komputera, na którego straży stoi. Pełni rolę połączenia 
ochrony sprzętowej i programowej sieci wewnętrznej LAN przed dostępem z zewnątrz tzn. 

background image

sieci publicznych, Internetu, chroni też przed nieuprawnionym wypływem danych z sieci 
lokalnej na zewnątrz. Często jest to komputer wyposażony w system operacyjny z 
odpowiednim oprogramowaniem. Do jego podstawowych zadań należy filtrowanie 
połączeń wchodzących i wychodzących oraz tym samym odmawianie żądań dostępu 
uznanych za niebezpieczne. 

3.  Realizacja zadania 

 

 

Po podłączeniu komputerów do switch’a, dwóch komputerów jako klientów i 
jednego jako bramy dostępowej, przystąpiliśmy do konfiguracji adresów IP. 
 
Brama zewnętrzna: ifconfig eth0 10.64.104.6/24  
Brama wewnętrzna: ifconfig eth1 192.168.10.10/24  
Klient I: ifconfig eth1 192.168.10.20/24  
Klient II: ifconfig eth1 192.168.10.30/24 
 
Wszystkie urządzenia widziały się nawzajem i pingowały. Poniżej przedstawiamy 
odczyt pingowania jednego z klientów: 
 

 

 
Następnym naszym krokiem, było utworzenie pliku maskarady (nazwaliśmy go 
„masq”) oraz zmiana jego zawartości przy użyciu odpowiednich poleceń: 
 

Włączenie forwardowania pakietów: 

 

echo 1 > /proc/sys/net/ipv4/ip_forward

  

 

background image

 

Wyzerowanie tablic iptables odpowiedzialnych za NAT i za filtrowanie pakietów: 

 

/sbin/iptables -F -t nat 

 

/sbin/iptables -X -t nat 

 

/sbin/iptables -F -t filter 

 

/sbin/iptables -X -t filter 

 
 

Domyślnie odrzucamy i nie zezwalany na forwardowanie pakietów: 

 

/sbin/iptables -t filter -P FORWARD DROP 

 
 

Zezwalamy na by serwer przepuszczał pakiety które pochodzą z naszej  sieci  

lokalnej lub są dla niej przeznaczone: 

 

/sbin/iptables -t filter -A FORWARD -s 192.168.10.0/255.255.255.0 -d   0/0 -j ACCEPT 

 
 

/sbin/iptables -t filter -A FORWARD -s 0/0 -d  192.168.10.0/255.255.255.0 -j ACCEPT 

 

 

 

Teraz nakazujemy by wszystkie pakiety pochodzące z LAN-u były  maskowane: 

 

 

/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -d 0/0 -j  

MASQUERADE 

 

 

 

Odblokowujemy port, który używany jest przez serwery DNS: 

 

 

/sbin/iptables -A OUTPUT -p udp --dport 53 -j ACCEPT 

 

/sbin/iptables -A INPUT -p udp --sport 53 -j ACCEPT 

 
 

Następnym krokiem była konfiguracja Firewalle’a: 

Na początku zablokowaliśmy cały ruch w sieci: 

/sbin/iptables –P FORWARD ACCEPT  
iptables –A INPUT DROP  
iptables –A OUTPUT DROP 
 
Następnie odblokowaliśmy ruch dla serwera  www.onet.pl: 

 

 
Wszystkie komputery mogły łączyć się tylko z tą witryną. 
 
Kolejnym krokiem było zablokowanie tylko serwera  www.onet.pl: 
 

 

 

background image

Następnie zablokowaliśmy cały ruch dla klientów: 
 

 

 
Odblokowaliśmy pingi: 
 

 

 
Odblokowaliśmy przeglądanie stron dla klientów: 

 

 
Spingowaliśmy stronę www.wp.pl: 
 

 

 
Odblokowaliśmy onet.pl dla drugiego klienta: 

 

 
4. Podsumowanie 
  
 Po wykonaniu wszystkich zadań uzyskaliśmy skonfigurowaną maskaradę wraz z 
firewallem, która była w stanie przekierowywać ruch sieciowy oraz wybrane porty. Dzięki 
zajęciom zaznajomiliśmy również z ledwie niewielką częścią narzędzia iptables, które jest 
niezastąpione w przypadku budowy, konfiguracji sieci oraz oferuje nieskończenie wiele 
możliwości, które ułatwiają życie administratorom.