Firewalling laborka
- Nakonfigurujte paketový filtr
iptables
tak, aby:- POVOLOVAL ESTABLISHED a RELATED TCP SPOJENÍ, jinak vám nebude chodit na TCP vůbec nic
- (y) byly povoleny odchozí spojení ze všech (imaginárních) strojů (za vašim PC-routrem) na TCP port 80 do internetu
- (y) byly povoleny odchozí spojení na TCP porty 0-1024 do vnitřní sítě pro váš počítač (router)
- (y) uživatel www-data nemohl iniciovat žádné odchozí spojení mimo loopback interface
- (y) uživatel
misko
měl povoleno iniciovat pouze spojení na TCP port 80 a 443 do vnitřní sítě - (y) bylo povoleno spojení na TCP port 22 z vámi zvoleného počítače, nejvýše však 2 za minutu
- (y) logovaly se odchozí spojení na UDP port 12345
- (y) logovaly se příchozí spojení na TCP port 54321 z počítače ve vnitřní síti
- (y blbě, ale šlo by) alespoň triviálním způsobem bránil SYN floodu
- (n) fungoval překlad adres do světa (NAT)
- (y) bylo povoleno spojení ze světa na TCP port 80 zvoleného vnitřního počítače
- nezapomeňte nastavit port forwarding ve Virtual Boxu a paketovém filtru
- (?) fungovalo aktivní FTP pro odchozí i příchozí spojení z/do celého internetu
- (?) šlo by ověřit z lokální sítě
- Výchozí politika: co není povoleno, je zakázáno.
- Vymyslete, jak spolehlivě otestovat funkčnost filtru.
- internetem se rozumí rozsah 0/0
- pravidla označené (y) se dají ověřit přímo v laborce
- pravidla označené (n) se nedají ověřit přímo v laborce
- cvičící si nepotrpí na konkrétní hodnoty, tzn. pokud místo 80 záměrně povolíte 3128 aby vám to fungovalo, jen do toho
- u (y) pravidel musíte umět předvést funkčnost
- odevzdáváte funkční pravidla ve firewallu (
iptables -L -n
)
Bodování
- splněno, pokud jste schopni demonstrovat funkčnost alespoň jednoho pravidla
Pomůcky
FTP démon
FTP démon nainstalujete příkazem apt-get install proftpd. Chodí out-of-box. Uživatele přidáte do systému příkazem adduser.
iptables pomůcky v češtině
Testování funkčnosti
- Příkaz telnet
- Tento příklad demonstruje úspěšné otevření TCP spojení na port 3128
student@student-desktop:~$ telnet 192.168.9.2 3128 Trying 192.168.9.2... Connected to 192.168.9.2. Escape character is '^]'. ^]quit telnet> quit Connection closed.
- Tento příkaz demonstruje neúspěšný pokus o spojení na port 3123 (timeout):
student@student-desktop:~$ telnet 192.168.9.2 3123 Trying 192.168.9.2... telnet: Unable to connect to remote host: Connection timed out
- Tento příkaz demonstruje pokus o otevření TCP spojení na zavřený port:
student@student-desktop:~$ telnet localhost 23 Trying 127.0.0.1... telnet: Unable to connect to remote host: Connection refused
- Webový prohlížeč