Můžeme zkusit začít s definicí firewallu, která je nutná pro pochopení „slovníku portů“. Firewall je software nebo firmware, který vynucuje soubor pravidel o tom, jaké datové pakety budou moci vstoupit do sítě nebo ji opustit. Má na starosti správu pravidel Allow a Deny pro porty.
V souladu s tématem této příručky bychom chtěli otevřít porty v distribucích Linuxu, jako je Ubuntu nebo CentOS. Obě distribuce umožňují konfiguraci pomocí různých sad nástrojů (balíčků firewallů), ale se stejným výsledkem.
Nástroje, které budeme používat:
– UFW
– Firewalld
Nejprve se podíváme na scénář Ubuntu:
Tato distribuce obsahuje ve výchozím nastavení předinstalovanou službu UFW (Uncomplicated Firewall). Zjednodušuje celou konfiguraci a je uživatelsky přívětivá pro každého člověka.
Zkontrolujte stav služby pomocí standardního příkazu systemctl:
$ sudo systemctl status ufw
Zapněte UFW příkazem enable:
$ sudo ufw enable
Syntaxe pro otevření konkrétního portu TCP:
$ sudo ufw allow (port)/tcp
například:
$ sudo ufw allow 53/tcp
Syntaxe podporuje také názvy, které se vztahují ke konkrétním portům:
$ sudo ufw allow https
Chcete-li povolit příchozí tcp a udp paket na portu 21, zadejte:
$ sudo ufw allow 21
Příklad pro konkrétní IP adresu:
$ sudo ufw allow from 190.34.21.113 to any port
Zkontrolujme konfiguraci:
$ sudo ufw status verbose
Příkaz zobrazí předběžnou tabulku se třemi sloupci:
Vysvětlivky:
– To – popisuje konkrétní protokol
– Akce – říká nám, zda je povolen nebo zakázán
– Od – říká o zdroji např.G kdekoliv nebo o jedné ip adrese, jak je prezentováno výše
Už je čas na CentOS:
Firewalld je pokročilejší nástroj, který ve své konfiguraci používá zóny. Ty mají na starosti péči o nějakou oblast nebo jedno „připojené“ síťové rozhraní.
Firewalld je frontendový řadič pro iptables, který slouží k implementaci pravidel pro trvalý síťový provoz.
Podívejme se na několik příkazů, které se s firewalldem podrobněji zabývají.
1. Příkazy pro firewalld. Spusťte naši službu pomocí příkazu stardand systemctl:
$ sudo systemctl start firewalld
Zapněte ji:
$ sudo systemctl enable firewalld
Tento příkaz nás informuje o stavu služby. Může zobrazit pouze dvě věty: „
$ sudo firewall-cmd --state
Výchozí zóna je veřejná. V tomto krátkém návodu ji nebudeme měnit, ale pokud byste chtěli, pak použijte tyto příkazy:
$ sudo firewall-cmd --set-default-zone=work
Zkusíme přidat provoz tcp na portu 1112:
$ sudo firewall-cmd --zone=public --add-port=1112/tcp --permanent
Pro opětovné načtení a okamžitou aplikaci těchto změn musíme znovu načíst stav firewaldu.
$ sudo firewall-cmd --reload
Příkazem pro výpis můžeme získat čitelný přehled našeho nového pravidla:
Pro povolení ssh spojení na konkrétním Ipv4 musíme použít syntaxi s „rich rule“
.