===== NAT w systemie Linux - ćwiczenia =====
==== Przygotowanie sieci do zajęć ====
++++ Ustawienia dla zajęć w salach laboratoryjnych |
Ćwiczenia mają sens jeśli są wykonywane w grupach 3 osobowych.
.------.
. · · · ·(internet)
· `--+---'
· |
· | S3 (150.254.32.…)
_____ __|__ _____
| | S1 | | S2 | |
| PC1 |---------| PC2 |---------| PC3 |
|_____| |_____| |_____|
Skonfiguruj sieci i komputery jak na powyższym rysunku:
- S1, S2 i S3 to trzy osobne sieci IP. S1 i S2 mają mieć adresy z bloków prywatnych, S3 to sieć lab.
- Wyłącz urządzenie ''br0'' na PC3
- PC1 może mieć dostęp do internetu, PC3 – nie
- Ustaw //ip forwarding// na PC2 (np. ''sysctl net.ipv4.conf.all.forwarding=1'')
- Dodaj na PC3 bramę domyślną przez PC2. Nie zmieniaj trasowania na PC1.
- Przeczytaj jeszcze raz ze zrozumieniem powyższe polecenia i upewnij się, że wykonałeś je poprawnie.
++++
++++ Ustawienia dla zajęć zdalnych |
.------.
(internet)
`------'
/ \
/ \
_____/ \_____ _____
| | | | S1 | |
| PC1 | | PC2 |--------| PC3 |
|_____| |_____| |_____|
Skonfiguruj sieci i komputery jak na powyższym rysunku. PC1 i PC2 powinny być podłączone do internetu. PC3 nie jest podłączony do internetu.
- Sieć S1 między PC2 i PC3 ma adresy z bloków prywatnych.
- Ustaw //ip forwarding// na PC2 (np. ''sysctl net.ipv4.conf.all.forwarding=1'')
- Dodaj na PC3 bramę domyślną przez PC2. (Nie zmieniaj trasowania na PC1 i PC2).
- Nadaj każdemu komputerowi unikalną nazwę (poleceniem ''hostname '').
- Przeczytaj jeszcze raz ze zrozumieniem powyższe polecenia i upewnij się, że wykonałeś je poprawnie.
++++
==== Zadania ====
- Ustaw na PC2 maskaradę adresów tak, żeby PC3 mógł korzystać z internetu
- (wersja w sali lab.) Sprawdź czy PC3 może łączyć się z PC1. Dodaj regułę korzystającą z celu SNAT która na to pozwoli \\ (wersja zdalna) Usuń maskaradę adresów, zamiast niej dodaj regułę korzystającą z celu SNAT która pozwoli komputerowi PC3 komunikować się z PC1
- Używając wiresharka lub tcpdumpa((przykładowa komenda: ''tcpdump -s0 -vv -i '')) zobacz na każdym kolejnym komputerze jakie adresy ma ustawiony pakiet wysłany z PC3 do PC1
- Włącz na PC3 program nasłuchujący na wybranym porcie \\ Przykładowe polecenie #1: ''socat tcp-l:,fork,reuseaddr system:'lsof -i -a -Pnp `ps -o ppid= -p $$`'%%%%'' \\ Przykładowe polecenie #2: ''socat tcp-l:,fork,reuseaddr system:"hostname; date; fortune"''
- Przetestuj połączenie się (np. przeglądarką internetową((Inną niż google chrome!))) do tego programu z PC2 i PC3.
- Skonfiguruj PC2 tak, by PC1 mógł połączyć się z programem działającym na PC3 łącząc się na adres PC2
- Skonfiguruj PC2 tak, by PC1 mógł połączyć się z serwerem SSH działającym na PC3 używając adresu PC2 i portu innego niż 22.
- Używając wiresharka zobacz jak modyfikowane są pakiety z powyższych poleceń
- Zmień TTL pakietów przechodzących przez PC2 z PC3 do PC1 na 1, zaobserwuj (w wiresharku) co się dzieje
- Skonfiguruj PC2 tak, by ruch z wybranego zakresu portów trafiał do PC3