Bridge+Firewall: Firewall.
Następna strona
Poprzednia strona
Spis treści
3. Firewall.
3.1 Oprogramowanie i czytanie.
Powinieneś przeczytaæ
Firewall-HOWTO.
Dowiesz siê stamtąd skąd wziąæ ipfwadm jeśli jeszcze go nie
masz. Są jeszcze inne narzêdzia, które możesz ściągnąæ, ale ja nie
zrobiłem nic dalej bez ipfwadm. Jest on dośæ przyjazny i
niskopoziomowy ! Widzisz dokładnie co siê dzieje.
3.2 Sprawdzenie wstêpne.
Wkompilowałeś IP-forwarding i -masquerading w jądro, wiêc możesz
sprawdziæ czy firewall jest w swoim domyślnym (akceptującym) stanie
poleceniami:
ipfwadm -I -l
ipfwadm -O -l
ipfwadm -F -l
I tak odpowiednio wyświetlane są zasady dotyczące wchodzących,
wychodzących i przekazywanych (masquerading) pakietów. -l
oznacza "list".
Możliwe, że wkompilowałeś także zliczanie (accounting):
ipfwadm -A -l
Powinieneś zobaczyæ, że nie ma zdefiniowanych żadnych zasad i że
domyślnym stanem jest akceptacja wszystkich pakietów. Możesz wróciæ
do tego stanu w każdej chwili pisząc:
ipfwadm -I -f
ipfwadm -O -f
ipfwadm -F -f
-f oznacza "flush". Możliwe, że musisz tego użyæ.
3.3 Zasady domyślne.
Chcê po prostu odciąæ resztê świata od swojej sieci wewnêtrznej i
nic wiêcej, tak wiêc ostatnią (domyślną) zasadą bêdzie ignorowanie
wszelkich pakietów pochodzących z wnêtrza sieci i zaadresowanych na
zewnątrz. Umieściłem wszystkie te zasady (w takiej kolejności) w
/etc/rc.d/rc.firewall i wykonujê ten skrypt z
rc.local podczas startu.
ipfwadm -I -a reject -S 192.168.2.0/255.255.255.128 -D 0.0.0.0/0.0.0.0
-S oznacza źródłowy (source) adres/maskê. -D to
adres/maska przeznaczenia (destination).
Ten format dla ipfwadm-a jest trochê długi. Program ten jest
inteligentny jeśli chodzi o nazwy sieciowe i niektóre popularne
skróty. Zajrzyj do podrêcznika systemowego.
Przypuszczalnie bardziej wygodnie jest określaæ niektóre lub
wszystkie zasady dla wychodzącej połowy firewall-a używając opcji
-O zamiast -I, ale ja określê je dla czêści wchodzącej.
3.4 Dziury na adres.
Przed zasadami domyślnymi muszê umieściæ kilka zasad, które służą
jako wyjątek od ogólnego zabronienia dostêpu do serwisów
zewnêtrznych dla klientów wewnêtrznych.
Chcê traktowaæ adres firewall-a w sieci wewnêtrznej
specjalnie. Zabroniê logowania siê na tê maszynê o ile ktoś nie ma
specjalnego pozwolenia, ale jak już siê tam zalogują, to powinni
mieæ możliwośæ kontaktu ze światem.
ipfwadm -I -i accept -S 192.168.2.100/255.255.255.255 \
-D 0.0.0.0/0.0.0.0
Chcê także, aby klienci wewnątrz sieci mogli siê komunikowaæ z
firewall-em. Może mogą go zmusiæ, aby wypuścił ich na zewnątrz !
ipfwadm -I -i accept -S 192.168.2.0/255.255.255.128 \
-D 192.168.2.100/255.255.255.255
W tym momencie sprawdź czy możesz siê dostaæ do klientów wewnątrz
sieci z zewnątrz poprzez telnet i nie możesz siê wydostaæ. Oznacza
to, że możesz siê kontaktowaæ, ale klienci nie mogą ci
odpowiedzieæ. Powinieneś móc siê dostaæ wszystkimi drogami jeśli
używasz firewall-a jako maszyny przejściowej. Spróbuj także
rlogin i ping z uruchomionym tcpdump na jednej z
kart. Powinieneś umieæ odpowiednio wykorzystaæ to co robisz.
3.5 Dziury na protokół.
W nastêpnym kroku poluźniłem trochê zasady protokół po
protokole. Chcê, na przykład, wpuszczaæ ping-i, żeby dostaæ
odpowiedź.
ipfwadm -I -i accept -P icmp -S 192.168.2.0/255.255.255.128 \
-D 0.0.0.0/0.0.0.0
-P icmp to magiczne zaklêcie dla konkretnego protokołu.
Dopóki trzymam ftp-proxy pozwalam także na odwołania ftp na
zewnątrz przez konkretne porty. Te docelowe porty na odległej
maszynie to: 20, 21, 115
ipfwadm -I -i accept -P tcp -S 192.168.2.0/255.255.255.128 \
-D 0.0.0.0/0.0.0.0 20 21 115
Bez działającego serwera nazw nie mógłbym mieæ działającego
sendmail-a. Zamiast ustawiæ serwer nazw na firewall-u, pozwoliłem
mu przepuszczaæ zapytania skierowane do najbliższego serwera nazw i
umieściłem jego adres w plikach /etc/resolv.conf u
klientów - nameserver 123.456.789.31 - w osobnej linijce.
ipfwadm -I -i accept -P tcp -S 192.168.2.0/255.255.255.128 \
-D 123.456.789.31/255.255.255.255 54
To, którego portu używa dany serwis możesz dowiedzieæ siê z
programu tcpdump. Po prostu uruchom dany serwis przez ftp,
albo telnet na danym kliencie i szukaj go na portach wejściowych
albo wyjściowych na danym kliencie:
tcpdump -i eth1 -e host client04
Plik /etc/services jest drugim ważnym źródłem.
Aby pozwoliæ na dostêp poprzez telnet do firewall-a z zewnątrz,
musisz pozwoliæ klientom na wołanie na konkretnym porcie. Rozumiem
dlaczego jest to potrzebne dla ftp - z powodu serwera, który
ustawia strumieñ danych na koñcu - ale nie jestem pewien dlaczego
telnet także tego potrzebuje.
ipfwadm -I -i accept -P tcp -S 192.168.2.0/255.255.255.128 ftp telnet \
-D 0.0.0.0/0.0.0.0
Są problemy z pewnymi demonami, które sprawdzają nazwê firewall-a,
żeby zdecydowaæ jaki jest ich adres sieciowy. rpc.yppasswdd to
jeden, z którym miałem problemy. Nalegał na rozsyłanie informacji,
że jest on poza firewall-em (na drugiej karcie). To znaczy, że
klient wewnątrz nie może siê z nim porozumieæ.
Zamiast uruchamiania IP-aliasing-u, albo zmiany kodu demona,
odwzorowałem nazwê dla karty wewnêtrznej u klientów w ich plikach
/etc/hosts.
3.6 Sprawdzenia.
Teraz chcesz sprawdziæ czy wciąż możesz połączyæ siê telnet-em,
rlogin-em lub ping-owaæ z zewnątrz. Z wewnątrz powinieneś móc
ping-owaæ na zewnątrz. Powinieneś móc także połączyæ siê telnet-em
z firewall-em z wewnątrz a później móc robiæ wszystko.
To tyle. W tym momencie możesz siê pouczyæ o rpc/Yellow Pages i
interakcji z plikiem haseł. Sieæ chroniona firewall-em powinna
działaæ tak, aby nie pozwalaæ nieuprzywilejowanym użytkownikom na
logowanie siê na firewall-u i przez to na wychodzenie na
zewnątrz.. A to już historia na inne HOWTO.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
Bridge Firewall pl (3)Bridge Firewall plbridge firewall pl 2bridge firewall pl 4bridge firewall pl 1Bridge Firewall pl (2)Bridge Firewall BMLIRPHVO6TAYSAHXGBLX25LJMGT5Q5CGAUDL7Abridge firewall 4 mtsaojjvb6byx7o2nmmymrg4lhmsgs76gvki57q mtsaojjvb6byx7o2nmmymrg4lhmsgs76gvki57qbridge firewall 1 6h2f4rsc5vybryppio2my5blgmhw7qq7fekqu5i 6h2f4rsc5vybryppio2my5blgmhw7qq7fekqu5ibridge firewall 3 vm7lhvynp4zcwspmhhodznfas5gknxcng67ppmy vm7lhvynp4zcwspmhhodznfas5gknxcng67ppmyBridge Firewall DSLBridge Firewallbridge firewall 2 v4tmziif5r3fuzczoe4hojl225bpsoyuoe2xr4i v4tmziif5r3fuzczoe4hojl225bpsoyuoe2xr4iBridge pl (4)Bridge plfirewall howto plfirewall howto pl 8firewall howto plfirewall howto pl 9więcej podobnych podstron