iptables

Ubuntu Iptables Ako riadiť sieťový prenos pomocou iptables?

Ubuntu Iptables Ako riadiť sieťový prenos pomocou iptables?
"... A." utilita Unix v užívateľskom priestore, ktorá dáva správcom systému možnosť konfigurovať pravidlá filtrovania paketov IP implementované modulom sieťového filtra jadra.“ Iptables fungujú ako brána firewall pomocou pravidiel filtrovania paketov na základe rôznych kritérií, ako je IP adresa, port a protokoly.

Táto príručka bude diskutovať o tom, ako nakonfigurovať a používať pravidlá iptables v systéme Ubuntu na zabezpečenie vašej siete. Či už ste začínajúcim používateľom systému Linux alebo ostrieľaným správcom systému, z tejto príručky a v každom ohľade sa dozviete niečo užitočné o iptables.

Iptables sú predinštalované na Ubuntu a väčšine distribúcií založených na Debiane. Ubuntu tiež balí firewall GUFW, grafickú alternatívu, ktorú môžete použiť na prácu s iptables.

POZNÁMKA: Ak chcete používať a konfigurovať tabuľky iptables, vo svojom systéme budete potrebovať oprávnenie sudo. Viac sa o sudo dozviete z nasledujúceho tutoriálu.

Teraz, keď viete, čo je Iptables, sa ponoríme priamo do toho!

Ako používať iptables na správu prenosu IPv4?

Ak chcete použiť Iptables na správu siete a prenosu IPv4, musíte porozumieť nasledujúcemu:

Príkaz Iptables

Iptables ponúka výber možností, ktoré vám umožňujú prispôsobiť a vyladiť vaše pravidlá iptables. Poďme diskutovať o niektorých z týchto parametrov a pozrime sa, čo robia.

POZNÁMKA: Môžete nakonfigurovať skupinu pravidiel, ktorá spravuje konkrétnu podmnožinu, známu ako reťazce iptables.

Parametre Iptables

Predtým, ako začneme vytvárať a konfigurovať pravidlá iptables, pochopíme najskôr základné informácie o iptables, ako je všeobecná syntax a predvolené argumenty.

Zvážte príkaz uvedený nižšie:

sudo iptables -I VSTUP -s 192.168.0.24 -j KAPKA

Vyššie uvedený príkaz povie iptables, aby vytvorili pravidlo v reťazci. Pravidlo zruší všetky pakety z adresy IP 192.168.0.24.

Preskúmajme príkaz, riadok po riadku, aby sme ho lepšie pochopili.

Iptables ponúka výber parametrov, ktoré môžete použiť na konfiguráciu rôznych pravidiel. Medzi rôzne parametre, ktoré môžete použiť na konfiguráciu pravidiel iptables, patria:

Parameter pravidla Iptables Popis
-s -zdroj Zadajte zdroj, ktorým môže byť adresa, názov hostiteľa alebo názov siete.
-p -protokol Určuje protokol pripojenia; napríklad TCP, UDP atď.
-d - cieľ Určuje cieľ, ktorým môže byť adresa, názov siete alebo názov hostiteľa.
-j -skok Nastaví činnosť tabuľky iptables, ktoré sa majú vykonať po nájdení paketu.
-o-out-interface Nastavuje rozhranie, cez ktoré iptable odosiela paket.
-i -v-rozhraní Nastavuje rozhranie používané na vytvorenie sieťových paketov.
-c-počítadlá množín Umožňuje správcovi nastaviť počítadlá bajtov a paketov pre konkrétne pravidlo.
-g -goto reťaz Parameter určuje, že spracovanie by malo po návrate pokračovať v reťazci nastavenom používateľom.
-f -fragment Hovorí iptables, aby aplikovali pravidlo iba na druhý a nasledujúce fragmenty fragmentovaných paketov.

Možnosti rozpoznávania

Príkaz iptables podporuje širokú škálu možností. Medzi bežné patria:

Možnosť Popis
-A -príspevok Pridá pravidlo na koniec zadaného reťazca
-D - vymazať Odstráni pravidlo zo zadaného reťazca
-F -červenanie Odstráni všetky pravidlá, jedno po druhom
-L-zoznam Zobrazí všetky pravidlá v určenom reťazci
-Vložím Vloží pravidlo do zadaného reťazca (odovzdané ako číslo, ak nie je zadané žiadne číslo; pravidlo sa pridá v hornej časti)
-C -kontrola Dopyty na priradenie pravidla; požiadavka v stanovenom pravidle
-v -verbose Pri použití s ​​parametrom -L zobrazí ďalšie podrobnosti
-N-nový reťazec Pridá nový používateľom definovaný reťazec
-X - vymazať reťazec Odstráni konkrétny používateľom definovaný reťazec

Iptables Tabuľky

Jadro Linuxu má predvolené tabuľky, ktoré obsahujú súbor súvisiacich pravidiel. Tieto predvolené tabuľky majú sadu predvolených reťazcov, ale používatelia si môžu pravidlá prispôsobiť pridaním používateľom definovaných pravidiel.

POZNÁMKA: Predvolené tabuľky budú veľmi závisieť od vašej konfigurácie jadra a nainštalovaných modulov.

Tu sú predvolené tabuľky iptables:

1: Filtračné tabuľky

Tabuľka filtra je predvolená tabuľka, ktorá obsahuje reťazce používané na filtrovanie sieťových paketov. Niektoré z predvolených reťazcov v tejto tabuľke zahŕňajú:

Reťaz Popis
Vstup Iptables používajú tento reťazec pre všetky prichádzajúce pakety do systému, t.j.e., pakety smerujúce do zásuviek miestnej siete.
Výkon Iptables používajú výstupný reťazec pre lokálne generované pakety, t.j.e., pakety idúce zo systému.
Vpred Tento reťazec používa Iptables pre pakety smerované alebo posielané ďalej cez systém.

2: Tabuľky NAT

Tabuľka NAT alebo Network Address Table je smerovacie zariadenie používané na úpravu zdrojovej a cieľovej adresy IP v sieťovom pakete. Hlavným využitím tabuľky NAT je spojenie dvoch sietí v rozsahu súkromných adries s verejnou sieťou.

NAT bol vyvinutý na podporu maskovania skutočných IP adries, čo umožňuje rozsahom súkromných IP adries dosiahnuť vonkajšiu sieť. To pomáha chrániť podrobnosti o interných sieťach pred odhalením vo verejných sieťach.

Keď paket inicializuje nové pripojenie, použije sa tabuľka NAT.

Iptables majú predvolenú tabuľku pre adresovanie NAT. Táto tabuľka má tri hlavné reťazce:

Reťaz Popis
OBRÁZKOVANIE Umožňuje úpravu informácií o paketoch pred príchodom do reťazca INPUT, ktorý sa používa pre prichádzajúce pakety
VÝKON Vyhradené pre pakety vytvorené lokálne, t.j.e., predtým, ako dôjde k smerovaniu v sieti
POSTROUTING Umožňuje úpravu odchádzajúcich paketov - Pakety opúšťajúce reťazec OUTPUT

Nasledujúci diagram zobrazuje prehľad tohto procesu na vysokej úrovni.

Pomocou nasledujúceho príkazu môžete zobraziť svoje tabuľky smerovania NAT.

iptables -t nat -n -v -L

3: Mangle Tables

Manglová tabuľka sa používa hlavne na špeciálnu úpravu paketov. Zjednodušene sa používa na úpravu hlavičiek IP sieťového paketu. Modifikácia paketov môže zahŕňať zmenu hodnoty TTL paketu, zmenu platného sieťového skoku pre paket atď.

Tabuľka obsahuje nasledujúce predvolené reťazce:

Reťaz Popis
OBRÁZKOVANIE Vyhradené pre prichádzajúce pakety
POSTROUTING Používa sa pre odchádzajúce pakety
VSTUP Používa sa pre pakety prichádzajúce priamo na server
VÝKON Používa sa pre miestne pakety
Vpred Vyhradené pre pakety smerované cez systém

4: Surové tabuľky

Hlavným účelom tabuľky raw je konfigurácia výnimiek pre pakety, ktoré nemá sledovať systém sledovania. Surová tabuľka nastaví na paketoch značku NOTRACK, čo vyzve funkciu conntrack na ignorovanie paketu.

Conntrack je sieťová funkcia jadra systému Linux, ktorá umožňuje jadru systému Linux sledovať všetky sieťové pripojenia a umožňuje jadru identifikovať pakety tvoriace sieťový tok.

Surový stôl má dva hlavné reťazce:

Reťaz Popis
OBRÁZKOVANIE Vyhradené pre pakety prijaté sieťovými rozhraniami
VÝKON Vyhradené pre pakety iniciované miestnymi procesmi

5: Tabuľka zabezpečenia

Primárne použitie tejto tabuľky je nastavenie interného bezpečnostného mechanizmu vylepšenia zabezpečenia pre Linux (SELinux), ktorý označuje na paketoch. Ochrannú známku je možné aplikovať na každé pripojenie alebo paket.

Používa sa pre povinné pravidlá kontroly prístupu a je druhou tabuľkou prístupnou za tabuľkou filtra. Ponúka nasledujúce predvolené reťazce:

Reťaz Popis
VSTUP Vyhradené pre prichádzajúce pakety do systému
VÝKON Používa sa pre lokálne vytvorené pakety
VPRED Používa sa na pakety smerované cez systém

Po prezeraní predvolených položiek Iptables poďme o krok ďalej a prediskutujeme, ako pracovať s pravidlami iptables.

Ako pracovať s pravidlami iptables?

Pravidlá Iptables sa uplatňujú vzostupne. To znamená, že sa najskôr použije prvé pravidlo v konkrétnej množine, potom nasleduje druhé, potom tretie atď., Až do posledného.

Kvôli tejto funkcii vám iptables bránia v pridávaní pravidiel do množiny pomocou parametra -A; musíte použiť -I, za ktorým nasleduje číslo alebo jeho vyprázdnenie, aby ste sa dostali na začiatok zoznamu.

Zobrazujú sa rozpoznateľné položky

Ak chcete zobraziť svoje tabuľky iptables, použite príkaz iptables -L -v pre IPv4 a ip6tables -L -v pre IPv6.

Pravidlá vkladania

Ak chcete vložiť pravidlá do sady, musíte ich umiestniť v presnom poradí a rešpektovať pravidlá, ktoré používa ten istý reťazec. Zoznam vašich pravidiel iptables si môžete zobraziť pomocou príkazu, ako je uvedené vyššie:

sudo iptables -L -v

Napríklad ak chcete vložiť pravidlo umožňujúce prichádzajúce pripojenia na port 9001 cez TCP, musíme zadať číslo pravidla do reťazca INPUT, ktorý dodržiava pravidlá cestnej premávky pre web.

sudo iptables -I VSTUP 1 -p TCP --dport 9001 -m stav --state NOVÝ -j PRIJAŤ

Po zobrazení aktuálnych tabuliek iptables by sa malo v sade zobraziť nové pravidlo.

sudo iptables -L -v

Výmena pravidiel

Funkcia nahradenia funguje podobne ako pri vkladaní, ale používa príkaz iptables -R. Napríklad pre úpravu vyššie uvedeného pravidla a nastavenie odmietnutia portu 9001:

sudo iptables -R VSTUP 1 -p TCP --dport 9001 -m stav --state NOVÝ -j ODMIETNUTIE

Vymazanie pravidla

Ak chcete pravidlo odstrániť, odovzdáme číslo pravidla. Napríklad na odstránenie vyššie uvedeného pravidla môžeme určiť ako:

sudo iptables -D VSTUP 1

Vo väčšine distribúcií systému Linux sú tabuľky iptable prázdne pre protokoly IPv4 a IPv6. Ak ste teda nepridali žiadne nové pravidlo, dostanete výstup podobný tomu, ktorý je zobrazený nižšie. To je riskantné, pretože to znamená, že systém povoľuje všetku prichádzajúcu, odchádzajúcu a smerovanú komunikáciu.

Poďme na to, ako nakonfigurovať tabuľky iptables:

Ako konfigurovať tabuľky iptables?

Existuje mnoho spôsobov, ako nakonfigurovať pravidlá iptables. V tejto časti sú uvedené príklady, ktoré vám ukážu, ako nastaviť pravidlá pomocou adries IP a portov.

Blokovanie a povolenie prenosu podľa portov

Ak chcete zablokovať alebo povoliť všetku komunikáciu v sieťovom rozhraní, môžete použiť konkrétny port. Zvážte nasledujúce príklady:

sudo iptables -A INPUT -j ACCEPT -p TCP - cieľový port 1001 -i wlan0

Vyššie uvedené príkazy umožňujú prenos na porte 1001 TCP na rozhraní wlan0.

sudo iptables -A INPUT -j DROP -p TCP - cieľový port 1001 -i wlan0

Tento príkaz robí opak vyššie uvedeného príkazu, pretože blokuje všetku komunikáciu na porte 1001 na wlan0.

Tu je podrobná kontrola príkazu:

POZNÁMKA: Iptables nerozumejú aliasom sieťového rozhrania. V systéme s viac ako jedným virtuálnym rozhraním teda budete musieť definovať cieľovú adresu ručne a explicitne.

Napríklad:

sudo iptables -A VSTUP -j DROP -p TCP - cieľový port 1001 -i wlan0 -d 192.168.0.24

Biela listina a zoznam zakázaných adries IP

Pravidlá brány firewall môžete vytvoriť pomocou iptables. Jedným z príkladov je zastavenie všetkého prenosu a povolenie sieťového prenosu iba z explicitných adries IP.

Príklad:

iptables -A VSTUP -m stav --stát ZOSTAVENÝ, SÚVISIACE -j AKCEPTOVAŤ
iptables -A INPUT -i lo -m komentár - komentár "Povoliť spätné spojenie" -j AKCEPTOVAŤ
iptables -A INPUT -p icmp -m komentár - komentár „Povoliť Pingu pracovať podľa očakávaní“ -j

SÚHLASIŤ

iptables -A VSTUP -s 192.168.0.1/24 -j AKCEPTOVAŤ
iptables -A VSTUP -s 192.168.0.0 -j AKCEPTOVAŤ
iptables -P INPUT DROP
iptables -P FORWARD DROP

Prvý riadok nastavuje pravidlo povoľujúce všetky zdrojové IP adresy v 192.168.0.Podsieť 1/24. Môžete tiež použiť CIDR alebo jednotlivé adresy IP. V nasledujúcom príkaze sme nastavili pravidlo umožňujúce všetku komunikáciu spojenú s existujúcimi spojeniami. V záverečných príkazoch sme nastavili politiku pre INPUT a FORWARD na vypustenie všetkých.

Používanie tabuliek iptables na protokole IPv6

Príkaz Iptables funguje iba na IPv4. Ak chcete použiť iptables na IPv6, musíte použiť príkaz ip6tables. Ip6tables používa tabuľky raw, filter, security a mangle. Všeobecná syntax pre ip6tables je podobná iptables a podporuje tiež možnosti zhody iptables ako append, delete, atď.

Zvážte použitie manuálnych stránok ip6tables, kde nájdete ďalšie informácie.

Príklad súborov pravidiel iptables pre zabezpečenie siete

Vytvorenie vhodných pravidiel brány firewall bude závisieť hlavne od služby bežiacej v systéme a od použitých portov. Tu je však niekoľko základných pravidiel konfigurácie siete, ktoré môžete použiť na zabezpečenie svojho systému:

1: Povoliť prenos rozhrania Loopback a odmietnuť všetky spätné väzby pochádzajúce z iných rozhraní

iptables -A INPUT -i lo -j ACCEPT (Môžete tiež použiť ip6tables)
iptables -A VSTUP ! -i lo -s 127.0.0.0 -j ODMIETNUTIE (platia aj tabuľky ip6)

2: Odmietnuť všetky žiadosti o príkaz ping

iptables -A INPUT -p icmp -m state --state NEW --icmp-type 8 -j REJECT

3: Povoliť pripojenia SSH

iptables -A VSTUP -p tcp --dport 22 -m stav --stav NOVINKA -j PRIJAŤ

Toto sú príklady príkazov, ktoré môžete použiť na zabezpečenie vášho systému. Konfigurácia však bude veľmi závisieť od toho, ku komu alebo komu chcete získať prístup k rôznym službám.

POZOR: Ak chcete radšej úplne zakázať protokol IPv6, nezabudnite riadok odkomentovať, pretože to spomalí proces aktualizácie:

precedens :: ffff: 0: 0/96 100 nájdených v priečinku / etc / gai.konf .

Je to preto, že správca balíkov APT rieši zrkadlovú doménu v IPv6 kvôli aktualizácii apt-get.

Ako nasadiť pravidlá iptables?

Ak chcete nasadiť svoje tabuľky iptables na Ubuntu alebo iné systémy založené na Debiane, začnite vytvorením dvoch súborov, ip4 a ip6, pre ich príslušné adresy IP.

V obidvoch súboroch pridajte pravidlá, ktoré chcete vynútiť, do príslušných súborov - pravidlá IPv4 do súboru ip4 a pravidlá IPv6 do súboru ip6.

Ďalej musíme importovať pravidlá pomocou príkazu:

sudo iptables-restore < /tmp/ip4 (replace filename for IPv6)

Potom môžete pomocou príkazu skontrolovať, či sa pravidlá uplatnili:

sudo iptables -L -v

Stručný sprievodca pre trvalé použitie iptables

Ubuntu a bežné distribúcie založené na Debiane sa dodávajú s balíkom iptables-persistent, ktorý umožňuje jednoduché použitie pravidiel brány firewall po reštarte. Balík obsahuje súbory, ktoré môžete použiť na nastavenie pravidiel pre IPv4 alebo IPv6, a dajú sa automaticky použiť pri štarte.

Pravidlá brány firewall môžete tiež použiť pomocou UFW alebo GUFW. V nasledujúcom návode sa dozviete, ako používať UFW.

Ako nainštalovať iptables-persistent?

Uistite sa, že máte v systéme nainštalovaný program iptables-persistent. Pomocou dpkg skontrolujte, či máte nainštalovaný balík.

Ak nie, použite nasledujúci príkaz:

sudo apt-get install iptables-persistent

Dvakrát sa zobrazí výzva na uloženie vašich súčasných pravidiel IPv4 aj IPv6. Kliknutím na Áno uložíte obe pravidlá.

Kliknutím na áno uložte IPv6.

Po dokončení inštalácie skontrolujte, či máte podadresár iptables, ako je to znázornené na obrázku nižšie.

Teraz môžete použiť pravidlá.v4 a pravidlá.v6 na pridanie pravidiel iptables a automaticky sa použijú pomocou iptables-persistent. Súbory sú jednoduché textové súbory, ktoré môžete ľahko upravovať pomocou ľubovoľného textového editora podľa vášho výberu.

Záver

V tomto tutoriáli sme sa venovali základom iptables. Počnúc prácou s iptables, základnými príkazmi, predvolenými tabuľkami iptables a parametrami.

Z toho, čo ste sa dozvedeli, by ste mali byť schopní používať iptables na vytváranie pravidiel brány firewall, ktoré pomáhajú zabezpečiť váš systém.

Ako zmeniť nastavenie myši a touchpadu pomocou systému Xinput v systéme Linux
Väčšina distribúcií systému Linux sa štandardne dodáva s knižnicou „libinput“ na spracovanie vstupných udalostí v systéme. Dokáže spracovať vstupné ud...
S ovládaním pomocou myši X-Mouse môžete tlačidlá myši premapovať odlišne pre iný softvér
Možno budete potrebovať nástroj, ktorý by mohol zmeniť ovládanie myši pri každej aplikácii, ktorú používate. Ak je to váš prípad, môžete vyskúšať apli...
Recenzia bezdrôtovej myši Microsoft Sculpt Touch
Nedávno som čítal o Microsoft Sculpt Touch bezdrôtová myš a rozhodol sa ju kúpiť. Po chvíli používania som sa rozhodol s ním podeliť o svoje skúsenost...