Subsystém pro zpracování síťových paketů linuxového jádra se nazývá Netfilter a iptables je příkaz používaný k jeho konfiguraci. Až donedávna byl výchozím správcem brány firewall v každé distribuci Linuxu obyčejný iptables. Stále je ve většině distribucí, ale Red Hat Enterprise Linux 7 a všichni jeho potomci nyní používají nový firewalld jako snáze použitelný frontend pro konfiguraci pravidel iptables. Ubuntu přichází s Uncomplicated Firewall (ufw), což je také snadno použitelný frontend pro iptables. iptables se skládá z pěti tabulek pravidel, z nichž každá má svůj vlastní odlišný účel:
- Tabulku filtrů :Pro základní ochranu našich serverů a klientů to může být jediná tabulka, kterou používáme.
- Tabulka překladu síťových adres (NAT) :NAT se používá k připojení veřejného internetu k privátním sítím.
- Mangle table :Používá se ke změně síťových paketů, když procházejí bránou firewall.
- Nezpracovaná tabulka :Toto je pro pakety, které nevyžadují sledování připojení.
- Tabulka zabezpečení :Tabulka zabezpečení se používá pouze pro systémy, které mají nainstalovaný SELinux.
Zde je ukázkový příkaz iptables:
# iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.3:8080
Tady,
- -t nat :Operujte na stole nat…
- -Předběžná trasa :… připojením následujícího pravidla k jeho řetězci PREROUTING.
- -i eth1 :Porovnává pakety přicházející na síťovém rozhraní eth1…
- -p tcp :… které používají protokol tcp (TCP/IP)
- –dport 80 :… a jsou určeny pro místní port 80.
- -j DNAT :Skok na cíl DNAT…
- –na místo určení 192.168.1.3:8080 :… a změňte cílovou adresu na 192.168.1.3 a cílový port na 8080.
Pokud se při spuštění příkazu iptables zobrazí chyba:
iptables: command not found
můžete zkusit nainstalovat balíček iptables, jak je uvedeno níže, podle vaší volby distribuce.
Distribuce | Příkaz |
---|---|
Debian | apt-get install iptables |
Ubuntu | apt-get install iptables |
Alpine | apk add iptables |
Arch Linux | pacman -S iptables |
Kali Linux | apt-get install iptables |
CentOS | yum install iptables |
Fedora | dnf install iptables |
Raspbian | apt-get install iptables |