Linux/Firewall a routování v Linuxu
Routování
editovatRoutování, takto je označováno hledání cest v počítačových sítích. Hlavním úkolem je doručit určenému adresátovi paket, nejlépe by to mělo být nejefektivnější cestou. Nezabývá se cestou paketu, ale řeší jen jeden krok a to komu data předat jako dalšímu.
Základní příkazy pro routování v linuxu
editovat- route - vypíše aktuální routovací tabulku ( eth0 je automaticky zapsáno do tabulky)
- route add IP - přidání IP adresy do routovací tabulky
- route del IP - vymazání IP adresy z routovací tabulky
- man route – manuálové stránky k příkazu route
- route add default gw IP – nastavení výchozí brány
- echo 1 > cnet/ipv4/ip_forward – zapnutí routování
Aby se routování spouštělo automaticky, je nutné zapsat předchozí příkaz do /etc/rc.d/rc.local
Firewall
editovatFirewall je jakousi bránou, která chrání počítač před internetovým nebezpečím, tvoří tedy bariéru před veřejnou sítí internetu a soukromým počítačovým systémem.
Internetové nebezpečí může být tohoto druhu:
- viry („červy“), jež se šíří přes internet od jednoho počítače k druhému
- hackeři, kteří by chtěli proniknout do počítače
Firewall není dostatečnou zárukou bezpečnosti. Je však první obrannou linií.
Schéma firewallu
editovatTypy firewallů
editovatPersonální firewall
editovatJe nainstalován v každém počítači, jež je připojen k internetu. Za úkol má monitorovat internetový provoz a v případě potřeby ho blokuje. Někdy je označován jako softwarový firewall. Základním typem firewallu je Windows Firewall.
Výhody:
- obvykle se dobře doplňují s dalšími zabezpečovacími produkty
- jsou snadno nastavitelné
- jestliže se jedná o laptop, tak ho personální firewall chrání bez ohledu na místo, kde se připojí na internet
Hardwarový firewall
editovatČasto bývají zabudovány do vysokorychlostních internetových směrovačů. Ochrání všechny počítače, které sdílí internetové připojení. Konfigurace bývá složitější než u softwarového firewallu.
Příkazy pro tvorbu firewallu v Linuxu
editovatJednou z možností je použití příkazu iptables
- iptables -P INPUT DROP – zakáže(zahodí) pakety ve vstupním řetězci input
- iptables -P INPUT ACCEPT – povolí(pustí) pakety ve vstupním řetězci input
- iptables -P INPUT REJECT – zakáže(zahodí) pakety ve vstupním řetězci input a dá o tom zprávu odesilateli chybovým hlášením ICMP
- iptables -P OUTPUT DROP – zakáže(zahodí) pakety ve výstupním řetězci output
- iptables -P OUTPUT ACCEPT – povolí(pustí) pakety ve výstupním řetězci output
- iptables -P OUTPUT REJECT – zakáže(zahodí) pakety ve výstupním řetězci output a dá o tom zprávu odesilateli chybovým hlášením ICMP
- iptables -P FORWARD DROP – zakáže(zahodí) pakety na rourování
- iptables -P FORWARD ACCEPT – povolí(pustí) pakety na rourování
- iptables -P FORWARD REJECT – zakáže(zahodí) pakety na rourování a dá o tom zprávu odesilateli chybovým hlášením ICMP
- iptables –F – vymaže všechna pravidla z tabulek
- iptables -N tcp_segmenty
- iptables -A INPUT -p TCP -i eth0 -j tcp_segmenty – vytvoření řetězce, co zpracuje všechny TCP segmenty,které přijdou přes eth0
- iptables -A tcp_segmenty -p TCP --dport 80 -j ACCEPT – přidání pravidla pro předchozí řetězec, které říká, že pokud přijde segment adresovaný na port 80, což je port využívaný pro http, tak bude propuštěn. Podobně je možné napsat řetězec pro udp pakety, pouze zaměníme v příkazech TCP za UDP, dále je možné zaměnit input za output, nebo forward , použít jiná čísla portů (třeba místo 80 použít port 21 pro FTP server) a ještě se můžeme rozhodnout co s paketem uděláme (akcept, drop, reject)
- iptables -A INPUT -p ICMP -i eth0 --icmp-type 0 -j ACCEPT – povolení příchozích icmp diagnostických a chybových zpráv typu „0“ což je “echo reply“, dále ještě doporučuji povolit typy 3, 8 a 11, protože je používají programy ping a traceroute. Zbytek icmp paketů můžete s klidem zahodit.