GNU/Linux >> Znalost Linux >  >> Linux

Linux Firewall Tutorial:IPTtables tabulky, řetězce, základy pravidel

iptables firewall se používá ke správě filtrování paketů a pravidel NAT. IPTables je dodáván se všemi distribucemi Linuxu. Pochopení toho, jak nastavit a nakonfigurovat iptables, vám pomůže efektivně spravovat váš linuxový firewall.

Nástroj iptables se používá ke správě pravidel brány firewall systému Linux. Na první pohled mohou iptables vypadat složitě (nebo dokonce matoucí). Jakmile však pochopíte základy toho, jak iptables funguje a jak je strukturován, bude čtení a psaní pravidel brány iptables snadné.

Tento článek je součástí probíhající série výukových programů iptables. Toto je první článek v této sérii.

Tento článek vysvětluje, jak je iptables strukturován, a vysvětluje základy tabulek, řetězců a pravidel iptables.

Na vysoké úrovni může iptables obsahovat více tabulek. Tabulky mohou obsahovat více řetězců. Řetězce mohou být vestavěné nebo uživatelsky definované. Řetězce mohou obsahovat více pravidel. Pro pakety jsou definována pravidla.

Takže struktura je:iptables -> Tables -> Chains -> Rules. To je definováno v následujícím diagramu.


Obr :IPTables Table, Chain a Rule Structure

Jen pro zopakování, tabulky jsou shluk řetězců a řetězce jsou shluky pravidel brány firewall.

I. IPTABLES STOLY A ŘETĚZY

IPTables má následující 4 vestavěné tabulky.

1. Tabulka filtrů

Filtr je výchozí tabulka pro iptables. Pokud tedy nedefinujete svou vlastní tabulku, budete používat tabulku filtrů. Tabulka filtrů Iptables má následující vestavěné řetězce.

  • řetěz INPUT – Příchozí do firewallu. Pro pakety přicházející na místní server.
  • VÝSTUPNÍ řetězec – Odchozí z firewallu. Pro pakety generované lokálně a odcházející z místního serveru.
  • ŘETĚZ FORWARD – Paket pro jinou síťovou kartu na místním serveru. Pro pakety směrované přes místní server.

2. NAT tabulka

Tabulka NAT v IPtable má následující vestavěné řetězce.

  • Řetěz PREROUTING – Změní pakety před směrováním. tj. k překladu paketů dochází ihned poté, co paket přijde do systému (a před směrováním). To pomáhá přeložit cílovou IP adresu paketů na něco, co odpovídá směrování na místním serveru. To se používá pro DNAT (destination NAT).
  • řetěz POSTROUTING – Mění pakety po směrování. tj. k překladu paketů dochází, když pakety opouštějí systém. To pomáhá přeložit zdrojovou IP adresu paketů na něco, co by mohlo odpovídat směrování na cílovém serveru. To se používá pro SNAT (zdrojový NAT).
  • OUTPUT chain – NAT pro lokálně generované pakety na bráně firewall.

3. Mangle stůl

Mangle tabulka Iptables je určena pro specializované úpravy paketů. Tím se změní bity QOS v hlavičce TCP. Mangle tabulka má následující vestavěné řetězce.

  • řetězec PREEROUTING
  • VÝSTUPNÍ řetězec
  • řetěz FORWARD
  • řetěz INPUT
  • řetězec POSTROUTING

4. Raw tabulka

Raw tabulka Iptable slouží pro výjimky z konfigurace. Raw tabulka má následující vestavěné řetězce.

  • řetězec PREEROUTING
  • VÝSTUPNÍ řetězec

Následující diagram ukazuje tři důležité tabulky v iptables.

Obr :Vestavěné tabulky IPTables

II. PRAVIDLA IPTABLES

Níže jsou uvedeny klíčové body, které je třeba pamatovat pro pravidla iptables.

  • Pravidla obsahují kritéria a cíl.
  • Pokud jsou kritéria splněna, přejde na pravidla určená v cíli (nebo) provede speciální hodnoty uvedené v cíli.
  • Pokud se kritéria neshodují, přejde k dalšímu pravidlu.

Cílové hodnoty

Níže jsou uvedeny možné speciální hodnoty, které můžete zadat v cíli.

  • AKCEPTOVAT – Firewall paket přijme.
  • DROP – Firewall paket zahodí.
  • FRONTA – Firewall předá paket do uživatelského prostoru.
  • RETURN – Firewall přestane provádět další sadu pravidel v aktuálním řetězci pro tento paket. Ovládací prvek bude vrácen volajícímu řetězci.

Pokud provedete iptables – seznam (nebo) stav iptables, uvidíte všechna dostupná pravidla brány firewall ve vašem systému. Následující příklad iptable ukazuje, že v tomto systému nejsou definována žádná pravidla brány firewall. Jak vidíte, zobrazuje výchozí vstupní tabulku s výchozím vstupním řetězcem, dopředným řetězcem a výstupním řetězcem.

# iptables -t filter --list
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chcete-li zobrazit tabulku mandlu, postupujte takto.

# iptables -t mangle --list

Chcete-li zobrazit tabulku nat, postupujte takto.

# iptables -t nat --list

Chcete-li zobrazit nezpracovanou tabulku, postupujte takto.

# iptables -t raw --list

Poznámka:Pokud nezadáte volbu -t, zobrazí se výchozí tabulka filtrů. Oba následující příkazy jsou tedy stejné.

# iptables -t filter --list
(or)
# iptables --list

Následující příklad iptable ukazuje, že ve vstupním, dopředném a výstupním řetězci tabulky filtrů jsou definována některá pravidla.

# iptables --list
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Chain RH-Firewall-1-INPUT (2 references)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255
3    ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0
4    ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0
5    ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631
8    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
10   REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Pravidla ve výstupu příkazu iptables –list obsahují následující pole:

  • num – číslo pravidla v rámci konkrétního řetězce
  • target – Speciální cílová proměnná, o které jsme hovořili výše
  • prot – Protokoly. tcp, udp, icmp atd.
  • opt – Zvláštní možnosti pro toto konkrétní pravidlo.
  • zdroj – zdrojová IP adresa paketu
  • destination – Cílová IP adresa pro paket

Linux
  1. Jak blokovat místní podvržené adresy pomocí firewallu Linux

  2. Jak přidat vlastní pravidla iptables v CSF Firewallu

  3. 25 Nejčastěji používané příklady pravidel Linux IPTables

  1. Jak protokolovat Linux IPTables Firewall zahozené pakety do souboru protokolu

  2. Linux OS Service „iptables“

  3. Jak ověřit, zda běží iptables nebo je aktivován firewall

  1. Jak zajistit, aby pravidla brány firewall iptables trvala na Debianu/Ubuntu

  2. Docker Firewall skript pro DOCKER-USER iptables Chain

  3. Jak spravujete konfiguraci Linuxu iptables na počítači fungujícím jako router?