Iptables mbele mifano. Mifano ya kutumia Iptables. Sheria Chaguomsingi

Iptables kimsingi inawajibika kwa uchujaji wa pakiti. Kusanidi Iptables kwa mikono ni sawa si kazi rahisi. Usitarajie kubaini hili "haraka." Kwa bahati nzuri, kuna zana nyingi ambazo zinaweza kukusaidia ikiwa bado haujafikiria iptables, lakini unahitaji haraka kuimarisha mfumo: fwbuilder, firestarter, guarddog, arno firewall - kimsingi hii ni GUI kwa iptables. Hakuna jibu wazi ambalo ni bora zaidi. Chaguo ni lako. Hata hivyo, makala ya leo imejitolea hasa kwa iptables na imegawanywa katika sehemu mbili: nadharia na mazoezi. Wale wasio na subira wanaweza kumaliza mara moja sehemu ya vitendo, ingawa njia hii haifai.

Makini! Vitendo vyote vilivyo na iptables vinafanywa kwa niaba ya mtumiaji aliyebahatika!

Nadharia

iptables za umbizo la iptables [-t table] [amri] [kitendo] Mfano: iptables -t filter -A INPUT KUBALI

Vitendo

  • KUBALI - Kubali kifurushi
  • DROP - Dondosha pakiti
  • DNAT - Badilisha Anwani Lengwa
  • SNAT - Badilisha anwani ya IP inayotoka kwenye kichwa cha pakiti
  • LOG - Kuingia kwa pakiti na matukio
  • MARK - Weka alama kwenye kifurushi
  • MASQUERADE - Badilisha anwani ya IP inayotoka kwenye kichwa cha pakiti (tofauti na SNAT - kufanya kazi na IPs zinazobadilika)
  • FOLENI - Weka foleni kwa pakiti ili kuchakatwa
  • REDIRECT - Elekeza upya pakiti/mtiririko kwenye mlango mwingine
  • KATAA - Dondosha pakiti + arifa mfumo wa mbali Kuhusu. kwamba kifurushi chake kilikataliwa
  • RUDISHA - Zuia pakiti kusogea kando ya mnyororo wa sasa na uirejeshe kwenye mnyororo wa kupiga simu

Timu

  • -A - Ongeza sheria kwenye mnyororo
  • -D - Ondoa sheria kutoka kwa mnyororo
  • -R - Badilisha sheria moja na nyingine
  • -I - Weka sheria mpya
  • -L - Orodhesha sheria zilizopo
  • -F - Weka upya sheria
  • -Z - Weka upya vihesabio katika mlolongo fulani
  • -N - Unda msururu mpya kwa jina ulilopewa
  • -X - Futa mnyororo
  • -P - Weka sera chaguo-msingi kwa msururu uliochaguliwa
  • -E - Badilisha jina la mnyororo wa mtumiaji

Vigezo (jumla)

  • -p - Bainisha aina ya itifaki
  • -s - anwani ya IP ya chanzo cha pakiti
  • -d - Anwani ya IP ya mpokeaji wa pakiti
  • -j - Bainisha kitendo cha sheria
  • -i - Kiolesura ambacho pakiti ilipokelewa
  • -o - Bainisha jina la kiolesura cha pato
  • -f - Kueneza sheria kwa vipande vyote vya pakiti

Vigezo vya TCP:

  • -tcp-bendera - Bainisha kinyago na bendera

Vigezo vya UDP:

  • -sport - Bandari ambayo pakiti ilitumwa
  • -dport - Bandari ambayo pakiti inashughulikiwa

Maelezo zaidi katika man iptables

Fanya mazoezi

Tazama usanidi wa sasa

$ sudo iptables -L INPUT Chain (sera KUBALI) lengwa la kuchagua mnyororo wa chanzo lengwa Mnyororo FORWARD (sera KUBALI) lengwa chaguo la chanzo lengwa la Mnyororo OUTPUT (sera KUBALI) lengwa la chaguo la chanzo lengwa

Ukiona kitu kama hiki, inamaanisha kuwa ngome yako bado haijasanidiwa na inaruhusu kila kitu. Wacha turekebishe hali hiyo.

Kuweka Sera Chaguomsingi

  • iptables -P INPUT DROP - kuzuia pakiti zinazoingia
  • iptables -P OUTPUT KUBALI - ruhusu pakiti zinazotoka
  • iptables -P FORWARD DROP - usindikaji wa pakiti ambazo zimefikia seva kutoka kwa mashine nyingine na zinasubiri kusambaza zaidi. Katika mfano imefungwa. Katika kesi hii, italazimika kuongeza sheria kwa mashine zinazoaminika.

Kwa kuwa pakiti zinazoingia za INPUT zimezuiwa, tutaandika sheria ifuatayo:

$ sudo iptables -A INPUT -m jimbo --jimbo INAYOHUSIANA, IMEANZISHWA -j KUBALI

Hii itaruhusu kukubali pakiti kutoka kwa muunganisho ulioanzishwa hapo awali na kukubali pakiti mpya zinazozalishwa na muunganisho huu.

Au kuonyesha aina ya itifaki:

$ sudo iptables -A INPUT -p TCP -m hali --hali IMEANZISHWA,INAYOHUSIANA -j KUBALI $ sudo iptables -A INPUT -p UDP -m state --state IMEANZISHWA,INAHUSIANA -j KUBALI

Sasa kiolesura cha ndani:

$ sudo iptables -A INPUT -i lo -j KUBALI

  • MPYA - data inayoanzisha muunganisho mpya.
  • IMEANZISHWA - pakiti inayotoka kwa muunganisho ambao tayari umeanzishwa.
  • INAYOHUSIANA - pakiti mpya ya data, lakini inayotokana na muunganisho wa zamani ulioanzishwa
  • BATILI - kwa hivyo ni wazi

$ sudo iptables-save > /etc/iptables.up.rules

Wezesha sheria hizi:

$sudo iptables-rejesha< /etc/iptables.up.rules

Na tazama tofauti:

$sudo iptables -L

Zindua iptables wakati wa kuanzisha mfumo:

Katika saraka ya /etc/init.d, unda faili inayoitwa iptables

$ sudo touch /etc/init.d/iptables

Tunaandika yafuatayo ndani yake:

#!/bin/sh /sbin/iptables-restore< /etc/iptables.up.rules

Kufanya faili ya iptables kutekelezwa:

$ sudo chmod +x /etc/init.d/iptables

Iongeze kwa autorun

$ sudo update-rc.d -n iptables chaguo-msingi

Zindua iptables wakati umeunganishwa kwenye mtandao:

$ sudo echo "#! /sbin/iptables-restore" > /etc/network/if-up.d/iptables.up.rules $ sudo iptables-save >> /etc/network/if-up.d/iptables. up.rules $ sudo chmod +x /etc/network/if-up.d/iptables.up.rules

Kumbuka: wakati wowote unaweza kuangalia ikiwa sheria zako zimepakiwa kwa kuingiza tu iptables-save kama mzizi

Kwa archlinux, kuokoa sheria za iptables hufanywa kwa amri:

$ sudo rc.d hifadhi iptables

Kanuni ya kuweka

Syntax ya jumla ya kutumia iptables ni:

iptables -t<таблица> <команда> <цепочка>[nambari]<условие> <действие>

<таблица>

sheria za netfilter zinasambazwa katika majedwali 4, ambayo kila moja ina madhumuni yake (maelezo zaidi hapa chini). Imeelezwa na -t kubadili, lakini ikiwa parameter hii haijainishwa, hatua itafanyika kwa meza ya default - chujio.

<команда>

Amri zinaonyesha ni aina gani ya hatua tunayofanya kwenye netfilter, kwa mfano, kuunda au kufuta sheria.

<цепочка>

Kila meza ina minyororo, kwa kila ambayo sheria wenyewe huundwa. Kwa mfano, kwa jedwali la kichungi hapo juu kuna minyororo mitatu iliyoainishwa - INPUT (pakiti zinazoingia), OUTPUT (pakiti zinazotoka) na FORWARD (pakiti za usafirishaji).

[nambari]

Amri zingine zinahitaji kubainisha nambari ya sheria, kwa mfano, kufuta au kuhariri.

<условие>

Hali inaelezea vigezo vya kutekeleza sheria fulani.

<действие>

Kweli, kwa kweli, tunafanya nini na kifurushi ikiwa kinakidhi vigezo vya hali hiyo?

* kwa haki, inafaa kuzingatia kwamba ufunguo wa hatua sio lazima ufike mwisho. Tu umbizo hili mara nyingi hupatikana katika maagizo na hufanya sheria iwe rahisi kusoma.

funguo za iptables na mifano ya matumizi yao

Kufanya kazi na meza (iptables -t)

Acha nikukumbushe kwamba sheria zote kwenye netfilter zinasambazwa kwenye jedwali. Kufanya kazi na meza maalum, lazima utumie -t kubadili.

Timu

Vifunguo vifuatavyo huamua vitendo ambavyo shirika la iptables hufanya.

Ufunguo Maelezo na mifano
-A Kuongeza sheria hadi mwisho wa orodha:
iptables -A INPUT -s 192.168.0.15 -j DROP
kukataa ujumbe unaoingia kutoka 192.168.0.15.
-D Kufuta sheria:
iptables -D INPUT 10
futa sheria kwenye mnyororo wa INPUT na nambari 10.
-I Kuingiza sheria katika sehemu maalum ya orodha:
iptables -INPUT 5 -s 192.168.0.15 -j DROP
ingiza kanuni ya 5 kwenye orodha.
-R Kubadilisha kanuni.
iptables -R OUTPUT 5 -s 192.168.0.15 -j KUBALI
badilisha sheria yetu ya 5 kutoka kwa kukataza hadi kuruhusiwa.
-F Kuweka upya sheria katika mlolongo.
iptables -F INPUT
-Z Inaweka upya takwimu.
iptables -Z INPUT
-N Kuunda mnyororo.
iptables -N CHAINNEW
-X Kufuta mnyororo.
iptables -X CHAINNEW
-P Bainisha kanuni ya msingi.
iptables -P INPUT DROP
-E Badilisha jina la mnyororo.
iptables -E CHAINNEW CHAINOLD

Masharti

Funguo hizi hufafanua masharti ya utawala.

Ufunguo Maelezo na mifano
-p Itifaki ya mtandao. Chaguo halali ni TCP, UDP, ICMP, au ZOTE.
iptables -A INPUT -p tcp -j KUBALI
ruhusu miunganisho yote ya tcp inayoingia.
-s Anwani ya chanzo - jina la mwenyeji, anwani ya IP, au subnet katika nukuu ya CIDR.
iptables -A INPUT -s 192.168.0.50 -j DROP
kukataa ujumbe unaoingia kutoka nodi 192.168.0.50
-d Anwani lengwa. Kanuni ya matumizi ni sawa na ufunguo uliopita -s.
iptables -A OUTPUT -d 192.168.0.50 -j DROP
kukataa zinazotoka kwa nodi 192.168.0.50
-i Adapta ya mtandao ambayo pakiti hufika (INPUT).
iptables -A INPUT -i eth2 -j DROP
zima trafiki inayoingia ya kiolesura cha Ethernet eth2.
-o Adapta ya mtandao ambayo pakiti hutumwa (OUTPUT).
iptables -A OUTPUT -o eth3 -j KUBALI
Ruhusu ujumbe unaotoka kutoka kwa kiolesura cha Ethaneti cha eth3.
--dport Bandari ya marudio.
iptables -A INPUT -p tcp --dport 80 -j KUBALI
Ruhusu simu zinazoingia kwenye port 80.
--michezo Chanzo bandari.
iptables -A INPUT -p tcp --sport 1023 -j DROP
kataza ujumbe unaoingia kutoka bandari 1023.

Vifunguo vilivyoorodheshwa pia vinasaidia ujenzi kwa kutumia ishara ! . Inabadilisha hali, kwa mfano,
iptables -A INPUT -s ! 192.168.0.50 -j DROP
itakataa muunganisho kwa wapangishi wote isipokuwa 192.168.0.50.

Vitendo

Vitendo ambavyo vitafanywa kwenye kifurushi kinacholingana na vigezo vya hali hiyo. Kila jedwali lina seti yake ya vitendo vinavyoruhusiwa. Imebainishwa kwa kutumia ufunguo -j.

Jedwali Kitendo Maelezo
chujio KUBALI Inaruhusu kifurushi.
DONDOSHA Inakataa kifurushi.
KATAA Inakataza kutuma ujumbe kwa chanzo.
nat MASQUERADE Kwa pakiti zinazotoka, hubadilisha anwani ya IP ya chanzo na anwani ya kiolesura ambacho pakiti inatoka.
SNAT Sawa na MASQUERADE, lakini ikionyesha kiolesura mahususi cha mtandao ambacho anwani yake itatumika kwa ulaghai.
DNAT Ubadilishaji wa anwani kwa vifurushi vinavyoingia.
RUDISHA Huelekeza ombi kwenye mlango mwingine kwenye mfumo huo huo.
manyoya T.O.S. Marekebisho ya uga wa TOS (vipaumbele vya trafiki).
DSCP Kubadilisha DSCP (pia vipaumbele vya trafiki).
TTL Badilisha TTL (maisha ya pakiti).
H.L. Sawa na TTL, lakini kwa IPv6.
MARK Kuashiria kwa kifurushi. Inatumika kwa uchujaji au uundaji unaofuata.
CONNMARK Kuashiria muunganisho.
TCPMSS Kubadilisha thamani ya MTU

Mifano ya amri za iptables zinazotumiwa sana

Amri za jumla

Angalia sheria na nambari zao:

iptables -L --line-nambari

Kwa kila meza unahitaji kuangalia sheria tofauti:

nambari za iptables -t nat -L --line-nambari

Ondoa sheria zote:

Weka kanuni za msingi:

iptables -P INPUT DROP

iptables -P OUTPUT DROP

* katika mifano hii, kwa chaguo-msingi, sheria ya kukataa (DROP) itafanya kazi kwa pakiti zote zinazoingia (INPUT) na zinazotoka (OUTPUT).

Ruhusu yote

Njia ya 1: Kwa kuongeza sheria:

iptables -NA PEMBEJEO 1 -j KUBALI

iptables -I OUTPUT 1 -j KUBALI

iptables -NILIPELEKA 1 -j NAKUBALI

* amri hizi tatu zitaunda sheria zinazoruhusu pakiti zote zinazoingia, zinazotoka na za usafiri.

Njia ya 2. Kusafisha sheria:

* hapa kwanza tunaondoa sheria zote (-F), kisha kuweka sera chaguo-msingi ili kuruhusu zinazoingia, zinazotoka na za usafiri (-S).

Njia ya 3. Kuzima huduma (ni rahisi kuzima ngome kwa muda ili kutambua matatizo):

huduma iptables kuacha

Kufanya kazi na sheria

Ongeza sheria hadi mwisho wa orodha:

iptables -A INPUT -p tcp --dport 25 -j KUBALI

iptables -A INPUT -p tcp -s ! 192.168.0.25 --dport 993 -i eth0 -j KUBALI

Ongeza safu ya mlango:

iptables -A INPUT -p tcp --dport 3000:4000 -j KUBALI

*V kwa kesi hii, kutoka 3000 hadi 4000.

Weka kanuni:

iptables -I FORWARD 15 -p udp -d 8.8.8.8 --dport 53 -i eth1 -j KUBALI

Zuia anwani maalum ya IP kwa unganisho kwenye bandari 25:

iptables -INPUT 1 -s 1.1.1.1 -p tcp --dport 25 -j DROP

Usambazaji wa bandari

Kuna njia mbili za kuanzisha.

1. UTANGULIZI + sheria za UTANGULIZI:

iptables -t nat -A PREROUTING -p tcp -m tcp -d 19.8.232.80 --dport 22 -j DNAT --kwenda-lengwa 192.168.1.15:2222

iptables -t nat -A POSTROUTING -p tcp -m tcp -s 192.168.1.15 --sport 2222 -j SNAT --to-source 19.8.232.80:22

* Wapi 19.8.232.80 - anwani ambayo tunasikiliza maombi ya uunganisho; 22 - bandari kwa usambazaji; 192.168.1.15 - anwani ya IP ya ndani ambayo tunahamisha maombi yote; 2222 - bandari ya ndani.

2. KUTAWALA + kanuni za KUPELEKA:

iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 22 -j DNAT --kwenda-lengwa 192.168.1.15:2222

iptables -A FORWARD -p tcp -d 192.168.1.15 --dport 22 -m hali --state MPYA, IMEANZISHWA, INAYOHUSIANA -j KUBALI

Ufafanuzi iptables- matumizi mstari wa amri, ni kiolesura cha kawaida cha kusimamia utendakazi wa ngome (firewall) kichujio cha mtandao kwa cores Matoleo ya Linux 2.4, 2.6, 3.x, 4.x. Kwa matumizi huduma za iptables Mapendeleo ya Superuser (mizizi) yanahitajika.

Tutashughulikia iptables na hatuwezi kufanya bila utangulizi mdogo wa kinadharia.

Ili kuteka kwa usahihi sheria za firewall, unahitaji kuelewa jinsi pakiti zinapita kwa ujumla na kile kinachotokea kwao.

Utaratibu wa harakati za vifurushi vya usafiri

Hatua Jedwali Mnyororo Kumbuka
1
2 manyoya PREROUTING Kwa kawaida msururu huu hutumiwa kufanya mabadiliko kwenye kichwa cha pakiti, kama vile kubadilisha biti T.O.S. na kadhalika..
3 nat PREROUTING Mnyororo huu hutumiwa kwa utangazaji anwani za mtandao (). inatekelezwa baadaye, katika mlolongo mwingine.
4 Kuamua juu ya uelekezaji zaidi, i.e. kwa hatua hii imeamuliwa atakwenda wapi mfuko wa plastiki - maombi ya ndani au kwa nodi nyingine ya mtandao.
5 manyoya MBELE Pakiti kisha huingia kwenye mnyororo MBELE meza za malenge.
6 Chuja MBELE Katika mnyororo MBELE Zile tu pakiti zinazoenda kwa seva pangishi nyingine ndizo zinazopokelewa. Uchujaji wote wa trafiki ya usafiri unapaswa kufanywa hapa. Usisahau kwamba trafiki hupitia mlolongo huu kwa pande zote mbili; hakikisha kuzingatia hili wakati wa kuandika sheria za kuchuja.
7 manyoya KUACHA Mlolongo huu unakusudiwa kufanya mabadiliko kwenye kichwa cha pakiti baada ya uamuzi wa mwisho wa uelekezaji kufanywa.
9 nat KUACHA Mlolongo huu unakusudiwa hasa Tafsiri ya Anwani ya Chanzo ya Mtandao. Kujifanya pia kunafanyika hapa ( Kujifanya).
9 Kiolesura cha mtandao wa pato (kwa mfano, eth1).

Kwa programu ya ndani (vifurushi vinavyoingia)

Hatua Jedwali Mnyororo Kumbuka
1 Ingiza kiolesura cha mtandao (kwa mfano, eth0)
2 manyoya PREROUTING Kawaida hutumika kufanya mabadiliko kwa kichwa cha pakiti, kama vile kuweka biti T.O.S. na kadhalika.
3 nat PREROUTING Tafsiri ya anwani ( Tafsiri ya Anwani ya Mtandao Lengwa).
4 Kufanya maamuzi ya njia.
5 manyoya PEMBEJEO Pakiti huingia kwenye mnyororo PEMBEJEO meza za malenge. Hapa ndipo mabadiliko yanafanywa kwa kichwa cha pakiti kabla ya kupitishwa kwa programu ya ndani.
6 chujio PEMBEJEO Trafiki inayoingia inachujwa hapa. Kumbuka kwamba pakiti zote zinazoingia zinazoelekezwa kwetu hupitia msururu huu, bila kujali zimetoka kiolesura gani.
7 Mchakato/matumizi ya ndani (yaani, programu ya seva au programu ya mteja)

Kutoka kwa michakato ya ndani (pakiti zinazotoka)

Hatua Jedwali Mnyororo Kumbuka
1 Mchakato wa ndani (yaani, programu ya seva au programu ya mteja).
2 Kufanya maamuzi ya njia. Hapa imeamua ambapo pakiti itaenda karibu - kwa anwani gani, kwa njia ya interface ya mtandao, nk.
3 manyoya PATO Hapa ndipo mabadiliko yanafanywa kwa kichwa cha pakiti. Kufanya uchujaji kwenye mnyororo huu kunaweza kuwa na matokeo mabaya.
4 nat PATO Msururu huu hutumiwa kwa tafsiri ya anwani ya mtandao (NAT) katika pakiti zinazotoka kwa michakato ya ndani ya ngome.
5 Chuja PATO Trafiki inayotoka inachujwa hapa.
6 manyoya KUACHA Mnyororo KUACHA Jedwali la mangle hutumiwa hasa kwa sheria zinazohitaji kufanya mabadiliko kwenye kichwa cha pakiti kabla ya kuondoka kwenye ngome, lakini baada ya uamuzi wa uelekezaji kufanywa. Pakiti zote, za kupita na iliyoundwa na michakato ya ndani ya ngome, huanguka kwenye msururu huu.
7 nat KUACHA Hukimbia hapa Tafsiri ya Anwani ya Chanzo ya Mtandao. Haupaswi kuchuja pakiti katika mnyororo huu ili kuepuka zisizohitajika madhara. Hata hivyo, hapa pia unaweza kusimamisha pakiti kwa kutumia sera chaguo-msingi DONDOSHA.
8 Kiolesura cha mtandao (km eth0)

Kama tunavyoelewa, kuna meza kuu tatu:

  • manyoyaJedwali hili imekusudiwa kwa shughuli za uainishaji na kuashiria pakiti na viunganisho, pamoja na urekebishaji wa vichwa vya pakiti (mashamba ya TTL na TOS).
  • chujio— jedwali kuu la kuchuja pakiti, linalotumiwa na chaguo-msingi. Kweli, ni katika meza hii kwamba kuchuja pakiti hutokea.
  • nat- hutoa utendakazi wa nat ikiwa unataka kutumia kompyuta yako kama kipanga njia. Sheria za uelekezaji zimewekwa hapa.

Kwa meza nat Vitendo vinatumika:

  • MASQUERADE

Kitendo DNAT(Tafsiri ya Anwani ya Mtandao Lengwa) hubadilisha anwani lengwa katika vichwa vya pakiti. Kwa maneno mengine, kitendo hiki huelekeza pakiti kwenye anwani zingine isipokuwa zile zilizoainishwa kwenye vichwa vya pakiti.

SNAT(Tafsiri ya Anwani ya Chanzo ya Mtandao) hutumiwa kubadilisha anwani za chanzo za pakiti. Kwa kitendo hiki, shiriki anwani moja ya nje ya IP kati ya kompyuta kwenye mtandao wa ndani ili kufikia Mtandao. Katika kesi hiyo, firewall, kwa kutumia SNAT, hufanya kiotomatiki tafsiri ya anwani ya mbele na ya nyuma, na hivyo kufanya uwezekano wa kuunganisha kwenye seva kwenye mtandao kutoka kwa kompyuta kwenye mtandao wa ndani.

Kujificha ( MASQUERADE) hutumiwa kwa madhumuni sawa na SNAT, lakini tofauti na ile ya mwisho, MASQUERADE inatoa zaidi mzigo mzito kwenye mfumo. Hii hutokea kwa sababu kila wakati hatua hii inapohitajika, anwani ya IP inaombwa kwa ajili ya kiolesura cha mtandao kilichobainishwa katika kitendo, wakati kwa SNAT Anwani ya IP imeelezwa moja kwa moja. Hata hivyo, kutokana na tofauti hii, MASQUERADE inaweza kufanya kazi katika kesi na anwani ya IP yenye nguvu, i.e. unapounganisha kwenye Mtandao, sema kupitia PPP, SLIP au DHCP.

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Tekeleza MASQUERADE kwa pakiti zote zinazotoka kwa mtandao 10.8.0.0 hadi interface eth0. Kwa uwazi, hebu sema tuna kadi mbili za mtandao na mitandao miwili. Tunahitaji mtandao 10.8.0.0/24 (kadi ya kwanza ya mtandao) inaweza kufikia, tuseme, mtandao kupitia eth0( kadi ya pili ya mtandao)

  • mbichi- Imeundwa kutekeleza vitendo na vifurushi kabla ya kuchakatwa na mfumo.

Jedwali la msingi lenyewe chujio.

  • PEMBEJEO- huchakata trafiki inayokuja moja kwa moja kwa mwenyeji yenyewe.
  • MBELE- inakuwezesha kuchuja trafiki ya usafiri.
  • PATO- hukuruhusu kuchuja trafiki inayotoka kwa mwenyeji yenyewe.

Hatua na kifurushi.

  • KUBALI- kuruka pakiti. Pakiti huacha mlolongo wa msingi wa sasa na kuendelea.
  • KATAA- kuzuia kifurushi na ujulishe chanzo chake juu ya kukataa.
  • DONDOSHA- kuzuia kifurushi bila kujulisha chanzo kuhusu kukataa. Inapendekezwa zaidi wakati wa kuchuja trafiki kwenye violesura vilivyounganishwa kwenye Mtandao, kwani inapunguza maudhui ya habari ya kuchanganua milango ya wapangishaji na washambuliaji.
  • LOG— weka rekodi kuhusu kifurushi kwenye faili ya kumbukumbu.

Inabadilika kuwa tuna mnyororo [meza - kichujio] - [trafiki - INPUT] - [kitendo - DROP] mantiki ya vitendo inaonekana kuwa ngumu. Nadhani tutazingatia kwa mifano na kila kitu kitakuwa rahisi.

amri ya iptables:

  • -A ongeza kanuni hadi mwisho wa mnyororo.
  • -D futa kanuni.
  • -I ingiza sheria na nambari inayotaka.
  • -L onyesha sheria zote katika mlolongo wa sasa.
  • -S onyesha sheria zote.
  • -F wazi sheria zote.
  • -N tengeneza mnyororo.
  • -X futa mnyororo.
  • -P weka kitendo chaguo-msingi.

Hebu tuanze na mifano maalum.

iptables -A INPUT -p tcp --dport 80 -j KUBALI

-A ongeza sheria mpya, PEMBEJEO kwa vifurushi vinavyoingia, -p itifaki, moja ya tcp, udp, udplite, icmp, icmpv6, esp, ah, sctp,
mh, - - bandari bandari ya 80 (chaguo la itifaki pekee), -j chagua kitendo ikiwa sheria inalingana, KUBALI kuruhusu. Hiyo ni, kuruhusu trafiki inayoingia kupitia itifaki ya TCP kwenye bandari 80.

Vifunguo vilivyoorodheshwa pia vinasaidia ujenzi kwa kutumia ishara ! . Inabadilisha hali, kwa mfano:

iptables -A INPUT -s ! 192.168.0.50 -j DROP

-s anwani ya chanzo - jina la mwenyeji (www.help.com), anwani ya IP au subnet katika nukuu ya CIDR (192.168.0.1/16), ! ubadilishaji, DONDOSHA kataza. Kataa trafiki yote inayoingia isipokuwa chanzo 192.168.0.50 (kama sivyo ! , kisha piga marufuku tu kutoka 192.168.0.50)

iptables -A INPUT -s 192.168.0.50 -j DROP

Kataa trafiki inayoingia kutoka kwa ip - 192.168.0.50 .

Orodha ya vigezo vya kanuni:

  • -p Itifaki, Itifaki pia inaweza kubainishwa kwa nambari au jina kama ilivyoorodheshwa katika /etc/protocols. Thamani "itifaki yoyote" inaweza kubainishwa kwa kutumia neno yote au nambari 0. Pia kwa rekodi kuna Chaguzi za ziada : --michezo(--chanzo-bandari) Inakuruhusu kubainisha mlango unaotoka (au masafa yake). --dport(--bandari-mwisho) Inakuruhusu kubainisha lango lengwa (au masafa yake).
  • -s Inabainisha anwani ya mtumaji. Anwani inaweza kuwa anwani ya IP (labda na mask), Jina la kikoa(katika kesi mbili za mwisho, kabla ya kuongeza sheria kwenye mlolongo, jina linatatuliwa kwenye anwani ya IP).
  • -i Inafafanua kiolesura cha mtandao unaoingia. Kama jina maalum kiolesura huisha kwa ishara ya “+” (kwa mfano, eth +), kisha kigezo kinalingana na violesura vyote ambavyo majina yao huanza na jina lililobainishwa (etho,eth1).
  • -d Hubainisha anwani ya mpokeaji. Sintaksia inafanana -s .
  • -o Inafafanua kiolesura cha mtandao kinachotoka. Sintaksia inafanana -i.

Vigezo vinaweza pia kuunganishwa.

iptables -A INPUT -i eth0 -s 192 .168.0.0 -j DROP

Kataa pakiti zinazoingia kutoka kwa kiolesura eth0 Na ip 192.168.0.0. Na kwa interface eth1 vifurushi vitapitia.

Nini kama hujui mapema ufungue bandari gani, kwa mfano, unataka seva ya FTP ifanye kazi ndani hali ya passiv. Moduli contrack Hali ya uunganisho itasaidia, na zaidi hasa, kigezo - ctstate. Moduli imeunganishwa na lebo -m.

iptables -A PEMBEJEO -m conntrack --ctstate IMESTAWISHWA,INAHUSIANA -j KUBALI

iptables -A INPUT -m conntrack --ctstate MPYA -p tcp --dport 21 -j KUBALI # Ruhusu kufungua miunganisho kwa bandari 21 za TCP.

Majimbo yanayowezekana:

  • MPYA- uunganisho haujafunguliwa, yaani, pakiti ni ya kwanza katika uunganisho.
  • IMEANZISHWA- pakiti inahusu uunganisho ulioanzishwa tayari. Kwa kawaida, pakiti kama hizo zinakubaliwa bila kuchuja zaidi, kama ilivyo kwa RELATED.
  • INAYOHUSIANA- pakiti inafungua muunganisho mpya, uliounganishwa kimantiki na zile zilizowekwa tayari, kwa mfano, kufungua chaneli ya data kwa njia ya kupita. Njia ya FTP. Muunganisho hupokea hali INAYOHUSIANA ikiwa imeunganishwa na kiwanja kingine ambacho kina sifa IMEANZISHWA.
  • SI SAHIHI- Ishara BATILI inaonyesha kwamba pakiti haiwezi kutambuliwa na kwa hiyo haiwezi kuwa na hali maalum.

iptables -A INPUT -m state -hali IMEANZISHWA,INAHUSIANA -j KUBALI

S nchi na mtangulizi wa kiitikadi wa conntrack, ana chaguo moja --state, sawa na --ctstate chaguo la moduli ya conntrack (lakini, tofauti na hilo, haiauni DNAT na majimbo ya SNAT).

Hebu tuangalie kwa haraka jedwali la dereva teksi, ambalo linaweza kupatikana kwenye faili ya /proc/net/ip_contrack. Hii ina orodha ya miunganisho yote inayotumika.

Tcp 6 300 IMEANZISHWA src=128.*.*.* dst=194.*.*.* sport=52524 dport=2223 src=194.*.*.* dst=128.*.*.* sport=2223 dport =52524 alama=0 matumizi=2

Ya kwanza, kama ilivyo wazi, ni itifaki, kisha nambari ya desimali (sijui inamaanisha nini), basi kuna maisha ya unganisho. Ifuatayo, hali IMEANZISHWA, yaani, muunganisho tayari umeanzishwa; pia HAKUNA KUJIBIWA, ambayo ina maana kwamba hakujakuwa na trafiki ya majibu bado. Inayofuata ni anwani za mtumaji na mpokeaji, bandari za mtumaji na mpokeaji. Zaidi ya hayo, kila kitu ni kinyume chake, mtawalia, UHAKIKISHO bendera hii inaonyesha kuwa muunganisho umeanzishwa kwa ujasiri na rekodi hii haitafutwa mara tu idadi ya juu zaidi ya miunganisho iliyofuatiliwa imefikiwa.

Baadhi ya vipengele vya itifaki.

Muunganisho wa TCP daima huanzishwa kwa kusambaza pakiti tatu, ambazo huanzisha na kuanzisha muunganisho ambao data itasambazwa baadaye. Kikao huanza na maambukizi SYN pakiti, kwa kukabiliana na ambayo hupitishwa SYN/ACK pakiti na inathibitisha pakiti ya uanzishaji wa muunganisho ACK .

Mara tu mfuatiliaji alipoona ya kwanza ( SYN) kifurushi, kisha huikabidhi hali hiyo MPYA. Mara tu pakiti ya pili inapita kwenye kifuatiliaji ( SYN/ACK), basi unganisho hupewa hali IMEANZISHWA.

Kwa itifaki ya UDP, kila kitu ni tofauti kidogo; itifaki hii haitoi kuanzisha na kufunga muunganisho, lakini shida kubwa ni ukosefu wa habari juu ya mpangilio ambao pakiti hufika. Lakini kutoka kwa mtazamo wa mfuatiliaji, kila kitu ni sawa na TCP. Pakiti ya kwanza kuwasili imepewa hali MPYA. Mara tu unapotuma kifurushi cha jibu, hali imetolewa IMEANZISHWA. Tofauti pekee ni kwamba sheria ya KUHAKIKIWA inatolewa tu wakati pakiti kadhaa tayari zimebadilishwa.

Maombi ya sheria za ukataji miti.

iptables hufanya iwezekane kuweka kumbukumbu za pakiti na matukio ya mtu binafsi. Ili kufanya hivyo, tumia hatua LOG.

iptables -A INPUT -p tcp —syn -j LOG —maelezo ya kiwango cha logi —kiambishi awali cha logi “Pakiti za INPUT”

--kiwango-logi Inatumika kuweka kiwango cha kumbukumbu. Kwa orodha kamili ya viwango, angalia ukurasa wa mtu wa syslog.conf. Kwa kawaida unaweza kuweka ngazi zinazofuata: utatuzi, habari, taarifa, onyo, onya, kosa, kosa, crit, tahadhari, kuibuka Na wasiwasi. Kumbukumbu zimeandikwa kwa faili syslog.

--logi-kiambishi awali Kitufe kinabainisha maandishi (kiambishi awali) ambacho kitatangulia ujumbe wote iptables. Ujumbe wenye kiambishi awali maalum unaweza kupatikana kwa urahisi kwa kutumia, kwa mfano, grep. Kiambishi awali kinaweza kuwa na hadi herufi 29, ikijumuisha nafasi.

Jun 1 17:12:20 debi kernel: INPUT pakiti IN=eth0 OUT= MAC=02:1e:6d:00:e2:1c:00:01:e8:11:73:69:08:00 SRC=125.94. 12.95 DST=194.87.239.104 LEN=40 TOS=0x00 PREC=0x00 TTL=52 ID=38690 PROTO=TCP SPT=12557 DPT=23 WINDOW=1460$ RES=0x00 SYN URGP=

Amri maarufu za usimamizi wa iptables.

iptables -L -n --line-nambariTazama orodha ya sheria.

-n idadi ya bandari na ip katika fomu ya dijiti.

--line-nambari nambari ya mstari.

iptables -F Weka upya sheria kabisa.

iptables -P INPUT KUBALI Sheria chaguomsingi za jedwali la INPUT.
iptables -P OUTPUT KUBALI Sheria chaguo-msingi za jedwali la OUTPUT.
iptables -P FORWARD DROP Sheria chaguomsingi za jedwali la FORWARD.

iptables -D PEMBEJEO 1Kufuta sheria kwa nambari yake kwenye mnyororo.

iptables -D INPUT -s 123.45.67.89 -j DROP Ondoa sheria kulingana na kile kinachofanya.

iptables -I pembejeo ... Ingiza sheria mwanzoni mwa mnyororo.

iptables -I pembejeo 3 ... Au unaweza kutaja nafasi maalum.

RUDISHA

Kitendo cha REDIRECT kimeundwa kuelekeza pakiti kutoka seti moja ya bandari hadi nyingine ndani ya mfumo huo. bila kumuacha mwenyeji.
REDIRECT hufanya kazi tu katika misururu ya PREROUTING na OUTPUT ya jedwali nat. Kwa hivyo, upeo wa maombi hupunguzwa kwa uelekezaji upya tu. Mara nyingi hii hutumiwa kwa proksi ya uwazi, wakati mteja kutoka mtandao wa ndani anaunganisha kwenye bandari 80, na lango linaelekeza pakiti kwenye mlango wa wakala wa ndani:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-bandari 3128

Sheria mpya hazihifadhiwi kiotomatiki na hazitaanza kutumika baada ya seva kuwasha upya. Kwa hiyo, baada ya kubadilisha iptables, tunahitaji kuokoa mabadiliko.

iptables - kurejesha > /etc/iptablesPakia sheria kutoka kwa faili.

Njia ya kuokoa na kupakia sheria ni juu yako. Tulifahamiana tu na misingi ya nadharia ya iptables; kwa kweli, kuna chaguzi nyingi zaidi za ubinafsishaji. Tutazungumza juu yao kwa undani zaidi mwingine makala.

Ufunguo dhana ya iptables ni:

    Kanuni - inajumuisha kigezo, kitendo na kihesabu. Ikiwa pakiti inakidhi vigezo, hatua inachukuliwa juu yake na inahesabiwa kwenye counter. Huenda kusiwe na kigezo - basi kigezo "pakiti zote" kinachukuliwa kwa uwazi. Pia sio lazima kutaja kitendo - kwa kukosekana kwa hatua, sheria itafanya kazi tu kama kihesabu. Sheria za kila mlolongo husababishwa kwa utaratibu wa kuonekana, hivyo utaratibu ni muhimu.

    • Kigezo - kujieleza kwa mantiki, ambayo huchanganua sifa za pakiti na/au muunganisho na kuamua ikiwa pakiti hiyo iko chini ya sheria ya sasa. Vigezo vinaunganishwa na "AND" ya kimantiki.

      Kitendo - maelezo ya kitendo kinachohitajika kufanywa na pakiti na/au muunganisho ikiwa zitaangukia ndani ya mawanda ya sheria hii. Vitendo vitaelezewa kwa undani zaidi hapa chini.

      Kaunta ni sehemu ya sheria ambayo hutoa uhasibu wa idadi ya pakiti zinazoanguka chini ya vigezo vya sheria fulani. Kaunta pia inazingatia kiasi cha jumla cha pakiti kama hizo kwa ka.

    Mlolongo ni mlolongo ulioamriwa wa sheria. Minyororo inaweza kugawanywa katika desturi na msingi.

    • Mlolongo wa msingi ni mnyororo ulioundwa na chaguo-msingi wakati jedwali linapoanzishwa. Kila pakiti, kulingana na ikiwa imekusudiwa kwa mwenyeji yenyewe, inayotokana nayo au ni ya kupita, lazima ipitie seti ya minyororo ya msingi ya meza anuwai iliyopewa. Kwa kuongeza, mlolongo wa msingi hutofautiana na mlolongo wa mtumiaji mbele ya "sera ya chaguo-msingi". Kitendo hiki kinatumika kwa pakiti hizo ambazo hazijachakatwa na sheria zingine kwenye mlolongo huu na minyororo inayoitwa kutoka kwake. Majina ya minyororo ya msingi kila wakati huandikwa kwa herufi kubwa (PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING).

      Mlolongo wa mtumiaji - mnyororo iliyoundwa na mtumiaji. Inaweza kutumika tu ndani ya meza yake mwenyewe. Inashauriwa kutotumia majina ya juu kwa minyororo hiyo ili kuepuka kuchanganyikiwa na minyororo ya msingi na vitendo vya kujengwa.

    Jedwali - seti ya minyororo ya msingi na ya mtumiaji iliyounganishwa na kawaida madhumuni ya kazi. Majina ya jedwali (pamoja na moduli za vigezo) yameandikwa herufi ndogo, kwani kwa kanuni hawawezi kupingana na majina ya minyororo ya watumiaji. Wakati wa kupiga amri ya iptables, meza imeainishwa katika muundo -t table_name. Ikiwa haijabainishwa wazi, jedwali la kichujio linatumika.

Kuchanganua:

# Tupa sheria za jedwali la vichungi$ sudo iptables-save -c -t chujio # Kichujio cha Jedwali * kichujio # PEMBEJEO, MBELE, Msururu wa PATO, sera zao na vihesabio:PENDO KUBALI [ 19302 :9473669 ] :KUBALI MBELE [ 0:0] : KUBALI PATO [ 5462736 :4247599532 ] # Kanuni: "" - kaunta ya sheria, "-PEMBEJEO" - mnyororo, "-i em1 -p tcp -m tcp --dport 22" - vigezo, "-j KUBALI" - kitendo[ 17 :1020 ] -PEMBEJEO -i em1 -p tcp -m tcp --dport 22 -j KUBALI THAMANI

Usanifu

Katika mfumo wa netfilter, pakiti hupitishwa kupitia minyororo. Mlolongo ni orodha iliyoagizwa ya sheria, na kila kanuni inaweza kuwa na vigezo na kitendo au mpito. Wakati pakiti inapita kwenye mlolongo, mfumo wa netfilter huangalia moja kwa moja ikiwa pakiti inakidhi vigezo vyote vya sheria inayofuata, na ikiwa ni hivyo, hufanya kitendo (ikiwa hakuna vigezo katika sheria, basi hatua inafanywa. kwa pakiti zote zinazopitia sheria). Kuna vigezo vingi vinavyowezekana. Kwa mfano, pakiti inalingana na kigezo cha -source 192.168.1.1 ikiwa kichwa cha pakiti kinaonyesha kuwa chanzo ni 192.168.1.1. Aina rahisi zaidi ya kuruka, -kuruka, inapeleka mbele pakiti hadi mwanzo wa msururu mwingine. Unaweza pia kubainisha kitendo kwa kutumia -kuruka. Vitendo vya kawaida vinavyopatikana katika minyororo yote - ACCEPT (ruka), DROP (futa), QUEUE (tuma kwa uchambuzi programu ya nje), na KURUDI (kurudi kwenye mlolongo uliopita kwa uchambuzi). Kwa mfano, amri

Iptables -A INPUT --source 192.168.1.1 --ruka KUBALI iptables -A INPUT --ruka mnyororo_nyingine

inamaanisha "ongeza hadi mwisho wa mnyororo wa INPUT sheria zifuatazo: ruka pakiti kutoka 192.168.1.1, na yote yaliyosalia hutumwa kwa uchambuzi kwa mnyororo_nyingine."

Minyororo

Kuna aina 5 za minyororo ya kawaida iliyojengwa kwenye mfumo:

    PREROUTING - kwa usindikaji wa awali wa pakiti zinazoingia.

    INPUT - kwa pakiti zinazoingia zinazoshughulikiwa moja kwa moja mchakato wa ndani(mteja au seva).

    MBELE - kwa pakiti zinazoingia zinazotumwa kwa pato (kumbuka kuwa pakiti zilizotumwa kwanza hupitia msururu wa PREROUTING, kisha FORWARD na POSTROUTING).

    OUTPUT - kwa pakiti zinazozalishwa na michakato ya ndani.

    POSTROUTING - kwa usindikaji wa mwisho wa pakiti zinazotoka.

Unaweza pia kuunda na kuharibu minyororo yako mwenyewe kwa kutumia matumizi ya iptables.

Majedwali

Minyororo imepangwa katika meza 4:

    Mbichi - hutazamwa kabla ya kusambaza pakiti kwenye mfumo wa kutambua hali. Hutumika mara chache, kwa mfano kuweka alama kwenye pakiti ambazo HAZIFAI KUCHARIKA na mfumo wa kutambua hali. Ili kufanya hivyo, sheria inabainisha kitendo cha NOTRACK. Ina minyororo ya PREROUTING na OUTPUT.

    Mangle - ina sheria za kurekebisha (kawaida kichwa) pakiti za IP. Miongoni mwa mambo mengine, inasaidia TTL (Muda wa kuishi), TOS (Aina ya Huduma), na vitendo vya MARK (kwa kubadilisha sehemu za TTL na TOS, na kwa kubadilisha alama za pakiti). Ni mara chache muhimu na inaweza kuwa hatari. Ina minyororo yote mitano ya kawaida.

    Nat - Huangalia tu pakiti zinazounda muunganisho mpya (kulingana na mfumo wa kutambua hali). Inaauni DNAT, SNAT, MASQUERADE, REDIRECT vitendo. Ina minyororo ya PREROUTING, OUTPUT, na POSTROUTING.

    Kichujio - meza kuu, inayotumiwa na chaguo-msingi ikiwa jina la meza halijainishwa. Ina minyororo ya INPUT, FORWARD, na OUTPUT.

Minyororo yenye jina moja, lakini katika meza tofauti, ni vitu vya kujitegemea kabisa. Kwa mfano, PREROUTING ghafi na mangle PREROUTING huwa na seti tofauti kanuni; pakiti kwanza hupitia mnyororo mbichi wa PREROUTING, na kisha kupitia mnyororo wa PREROUTING wa mangle.

Mataifa

Katika mfumo wa netfilter, kila pakiti inayopita kwenye utaratibu wa kutambua hali inaweza kuwa na moja ya nne iwezekanavyo inasema:

    MPYA - kifurushi hufungua kipindi kipya. Mfano wa kawaida ni pakiti ya TCP iliyo na bendera ya SYN.

    IMEANZISHWA - Kifurushi ni sehemu ya kipindi kilichopo tayari.

    INAYOHUSIANA - Kifurushi hufungua kipindi kipya kinachohusishwa na kipindi ambacho tayari kimefunguliwa. Kwa mfano, wakati wa kikao FTP tu, mteja huunganisha kwenye bandari 21 ya seva, seva inamwambia mteja namba ya pili, iliyochaguliwa kwa nasibu, baada ya hapo mteja huunganisha kwenye bandari ya pili ili kuhamisha faili. Katika kesi hii, kikao cha pili (uhamisho wa faili kwenye bandari ya pili) inahusishwa na kikao kilichopo tayari (uunganisho wa awali kwenye bandari 21).

    BATILI - vifurushi vingine vyote.

Mchoro wa kifungu cha meza na minyororo

Mchoro uliorahisishwa wa kifungu cha meza na minyororo:

Mchoro wa kina:

Usanidi wa kimsingi

Chini ni mfano wa usanidi wa msingi wa iptables tuli. Wakati wa kuhifadhi na kupakia usanidi huo, lazima uzingatie uwezekano wa mabadiliko kutoka kwa huduma zingine, kwa mfano Fail2ban. Zaidi ya hayo, unapotumia anwani ya IPv6, usanidi wa IPv6 unapaswa kufanywa bila IPv4.

IPv4

sudo iptables-save

Unda hati na utupaji wa sheria za iptables:

sudo nano / etc/ network/ if-up.d/ iptables-rules

Nakili msimbo ufuatao:

#!/sbin/iptables-rejesha -PEMBEJEO -p icmp -j KUBALI -PEMBEJEO -i lo -j KUBALI -PEMBEJEO -j KATAA --kataa-na icmp-host-katazwa -A FORWARD -m contrack -- ctstate INAYOHUSIANA, IMEANZISHWA -j KUBALI -A MBELE -p icmp -j KUBALI -A MBELE -j KATAA --kata-na icmp-host-imepigwa marufuku #-A OUTPUT -p icmp -j KUBALI #-TOTO -o tazama - j KUBALI #-PATO -j KATAA --kataa-na icmp-mwenyeji-imepigwa marufuku JITOE

Tunaongeza na sheria zinazohitajika kwa kuzingatia iptables-save.

sudo chmod +x / etc/ network/ if-up.d/ iptables-rules sudo / etc/ network/ if-up.d/ iptables-rules

IPv6

Tazama usanidi wa sasa:

sudo ip6tables-save

Unda hati na utupaji wa sheria za ip6tables:

sudo nano / etc/ network/ if-up.d/ ip6tables-rules

Nakili msimbo ufuatao:

#!/sbin/ip6tables-rejesha # Jedwali la chujio na minyororo yake* kichujio:PEMBEJEO KUBALI [ 0 :0 ] :KUBALI MBELE [ 0 :0 ] :TOE KUBALI [ 0 :0 ] # Ruhusu miunganisho iliyounganishwa na imara-A PEMBEJEO -m conntrack --ctstate INAYOHUSIANA,IMEANZISHWA -j KUBALI # Ruhusu trafiki ya icmp ya huduma-PEMBEJEO -p ipv6-icmp -j KUBALI # Ruhusu trafiki inayoaminika kwenye kiolesura cha kurudi nyuma-PEMBEJEO -i lo -j KUBALI # Unaweza kuingiza hapa sheria za ziada kwa mnyororo wa PEMBEJEO # Zima kila kitu kingine kwa INPUT-PEMBEJEO -j KATAA --kataliwa-na icmp6-adm-imepigwa marufuku # Mpangilio na maana ya kanuni za Mnyororo wa MBELE na PATO ni sawa na PEMBEJEO-A FORWARD -m contrack --ctstate INAHUSIANA,IMEANZISHWA -j KUBALI -A MBELE -p ipv6-icmp -j KUBALI -A MBELE -j KATAA --kataa-na icmp6-adm-imepigwa marufuku # Kuchuja mnyororo wa OUTPUT umekatishwa tamaa sana #-A OUTPUT -m contrack --ctstate RELATED, IMEANZISHWA -j KUBALI #-TOTO -p ipv6-icmp -j KUBALI#-PATO -o lo -j KUBALI #-PATO -j KATAA --kataa-na icmp6-adm-imepigwa marufuku JITOE

Tunaongeza na sheria zinazohitajika kwa kuzingatia ip6tables-save.

Hifadhi na ufunge: Ctrl + O, Ingiza, Ctrl + X

Fanya hati itekelezwe na upakie sheria za iptables:

sudo chmod +x / etc/ network/ if-up.d/ ip6tables-rules sudo / etc/ network/ if-up.d/ ip6tables-rules

Sheria za ziada

Chini ni baadhi ya sheria zinazotumiwa kwa kawaida. Minyororo ya INPUT/OUTPUT hutumiwa kuchuja trafiki ya ndani. Kwa trafiki ya usafiri, lazima utumie mnyororo wa FORWARD.

Ufikiaji wa mbali

# remote.ssh -A PEMBEJEO -p tcp -m contrack --ctstate MPYA -m tcp --dport 22 -j KUBALI # remote.rdp -A INPUT -p tcp -m contrack --ctstate NEW -m tcp --dport 3389 -j KUBALI # remote.vnc -A INPUT -p tcp -m contrack --ctstate MPYA -m tcp --dport 5900 -j KUBALI

Huduma za wavuti na faili

# mtandao.http, mtandao.https -A INPUT -p tcp -m contrack --ctstate MPYA -m multiport -A INPUT -p tcp -m contrack --ctstate MPYA -m tcp --dport 21 -j KUBALI

Barua na ujumbe wa papo hapo

# mail.pop3, mail.pop3s -A PEMBEJEO -p tcp -m contrack --ctstate NEW -m multiport --dports 110,995 -j KUBALI # mail.imap, mail.imaps -A INPUT -p tcp -m contrack -- ctstate MPYA -m multiport --dports 143 ,993 -j KUBALI # mail.smtp, mail.smtps -A INPUT -p tcp -m contrack --ctstate MPYA -m multiport --dports 25 ,465 -j KUBALI # im. xmpp -PEMBEJEO -p tcp -m contrack --ctstate MPYA -m multiport --dports 5222 ,5223 -j KUBALI # im.icq.oscar -A INPUT -p tcp -m contrack --ctstate MPYA -m tcp -- dport 5190 -j KUBALI

Huduma za Mtandao

# network.openvpn.vpn -PEMBEJEO -p udp -m contrack --ctstate MPYA -m udp --dport 1194 -j KUBALI # network.squid.proksi -A PEMBEJEO -p udp -m contrack --ctstate MPYA -m udp --dport 3128 -j KUBALI # network.dns -A PEMBEJEO -p tcp -m contrack --ctstate MPYA -m tcp --dport 53 -j KUBALI -A INPUT -p udp -m contrack --ctstate MPYA -m udp --dport 53 -j KUBALI # network.ntp -A INPUT -p udp -m contrack --ctstate MPYA -A INPUT -p udp -m contrack --ctstate NEW -m udp --dport 69 -j KUBALI # network.dhserver.dhcp.discover-request-A PEMBEJEO -p udp -m contrack --ctstate MPYA -m udp --sport 68 --dport 67 -j KUBALI # network.dhclient.dhcp.discover-request #-A OUTPUT -p udp -m contrack --ctstate MPYA -m udp --sport 68 --dport 67 -j KUBALI # network.dhserver.dhcp.offer-ack #-A OUTPUT -p udp -m contrack --ctstate MPYA -m udp --sport 67 --dport 68 -j KUBALI

Upimaji na Utatuzi

Tazama usanidi wa sasa wa IPv4 na IPv6:

sudo iptables-save sudo ip6tables-save

Kuweka magogo

Kufuatilia

Moduli za Kernel

Tazama moduli zilizopakiwa:

lsmod | grep -E "^ip|^nf" | aina

Ili kupakia moduli za ziada ni rahisi kutumia ukamilishaji kiotomatiki: 2x Tab

sudo modprobe nf sudo modprobe modules-load.d

Utangulizi na historia

Kichujio cha mtandao- ngome (yajulikanayo kama firewall, aka firewall, aka firewall...) imejengwa kwenye kinu cha Linux tangu toleo la 2.4. Netfilter inadhibitiwa na shirika iptables(Kwa IPv6 - ip6tables). Kabla netfilter/iptables ilikuwa Ipchains, ambayo ilijumuishwa kwenye kokwa za Linux 2.2. Kabla ya ipchains katika Linux kulikuwa na kinachojulikana ipfw (IPV4 firewall), iliyosafirishwa kutoka BSD. Huduma ya usimamizi - ipfwadm. Mradi wa netfilter/iptables ulianzishwa mwaka wa 1998. Mwandishi ni Rusty Russell (pia aliongoza maendeleo ya zamani). Mnamo 1999, Timu ya Netfilter Core (iliyofupishwa kama coreteam) iliundwa. Firewall iliyotengenezwa ilipewa jina rasmi la netfilter. Mnamo Agosti 2003, Harald Welte alikua mkuu wa coreteam.

Miradi ipchains Na ipfwadm ilibadilisha utendakazi wa safu ya itifaki Kernels za Linux, kwa sababu kabla ya kuonekana kichujio cha mtandao Hakukuwa na utoaji katika usanifu wa kernel wa kuongeza moduli za usimamizi wa kifurushi. iptables alishika wazo kuu ipfwadm- orodha ya sheria inayojumuisha vigezo na hatua ambayo inafanywa ikiwa pakiti inakidhi vigezo. KATIKA ipchains dhana mpya ilianzishwa - uwezo wa kuunda minyororo mpya ya sheria na pakiti za uhamisho kati ya minyororo, na katika iptables dhana hiyo ilipanuliwa kwa meza nne (katika netfilter ya kisasa - zaidi ya nne), kuweka mipaka ya minyororo ya sheria kwa kazi: kuchuja, NAT, na urekebishaji wa pakiti. Pia, iptables imepanua uwezo wa kutambua hali ya Linux, ikiruhusu uundaji wa ngome zinazofanya kazi katika kiwango cha kipindi.

Usanifu wa Netfilter/iptables

Mahitaji ()

Kama ilivyoelezwa hapo juu, ili Netfilter ifanye kazi, unahitaji toleo la kernel 2.6 (au angalau 2.3.15). Kwa kuongeza, ikiwa ni lazima, mipangilio CONFIG_NETFILTER, CONFIG_IP_NF_IPTABLES, CONFIG_IP_NF_FILTER (jedwali la kichujio), CONFIG_IP_NF_NAT (jedwali la nat), CONFIG_BRIDGE_NETFILTER, pamoja na moduli nyingi za ziada: CONFIG_IP_NF_FILTER ya ziada (CONFIG_IP_NFFI_IP_NFIFILTER). moduli ya kufuatilia Viunganisho vya FTP), CONFIG_IP_NF_MATCH_* ( aina za ziada ruwaza zinazolingana za pakiti: LIMIT, MAC, MARK, MULTIPORT, TOS, TCPMSS, STATE, UNCLEAN, OWNER), CONFIG_IP_NF_TARGET_* (hatua za ziada katika sheria: REJECT, MASQUERADE, REDIRECT, LOG, TCPMSS), CONFIGT_pati_IPID_NFID_COMFIGT_CONFIGTs_NFID_COMFIGT_IPID _EBT ABLES na CONFIG_BRIDGE_EBT_* za kufanya kazi katika hali ya daraja, zingine CONFIG_IP_NF_* na CONFIG_IP6_NF_*. Pia ni muhimu kubainisha CONFIG_PACKET.

Kama inavyoonekana, nat meza Na manyoya inaweza kurekebisha mpokeaji au mtumaji kifurushi cha mtandao. Hii ndiyo sababu pakiti ya mtandao inaangaliwa mara kadhaa dhidi ya jedwali la uelekezaji.

Utaratibu wa kutambua hali (udhibiti)

Hapo juu katika maandishi, wazo la "ufafanuzi wa majimbo" lilitajwa mara kadhaa; inastahili mada tofauti ya majadiliano, lakini hata hivyo, nitagusa kwa ufupi suala hili katika chapisho la sasa. Kwa ujumla, utaratibu wa kuamua majimbo (aka mashine ya serikali, aka conn kipengele wimbo hii, aka contrack) ni sehemu ya kichujio cha pakiti na hukuruhusu kubainisha ni muunganisho/kao ​​gani pakiti ni ya. Contrack huchanganua hali ya vifurushi vyote isipokuwa vile vilivyowekwa alama kama NOTRACK ndani meza mbichi . Kulingana na hali hii, kifurushi ni cha imedhamiriwa mpya uhusiano (jimbo MPYA), tayari imara uhusiano (jimbo IMEANZISHWA), ziada kwa ile iliyopo tayari ( INAYOHUSIANA), au kwa" kwa mwingine" (isiyoonekana) muunganisho (jimbo SI SAHIHI) Hali ya pakiti imedhamiriwa kwa kuchambua vichwa vya pakiti iliyopitishwa ya TCP. moduli ya kuingiliana hukuruhusu kutekeleza firewall ya kiwango cha kikao (cha tano). Ili kudhibiti utaratibu huu, tumia matumizi contrack, na parameta ya matumizi ya iptables: -m kinyume au -m jimbo(ya kizamani). Mataifa miunganisho ya sasa contrack ni kuhifadhiwa katika kernel. Zinaweza kutazamwa kwenye faili /proc/net/nf_contrack (au /proc/net/ip_conntrack) .

Ili mawazo yangu yasigeuke kuwa mush, nadhani hii habari fupi nyenzo zaidi itakuwa ya kutosha kuelewa.

Kusimamia sheria za uchujaji wa mtandao wa Netfilter (kwa kutumia amri ya iptables)

matumizi ya iptables ni kiolesura cha kudhibiti firewall kichujio cha mtandao. Amri hii hukuruhusu kuhariri sheria za jedwali, meza na minyororo. Kama nilivyosema tayari - kila kanuni ni rekodi/kamba iliyo na uteuzi wa pakiti za mtandao na pakiti zinazolingana na sheria fulani. amri ya iptables Inahitaji haki za mizizi kufanya kazi.

Kwa ujumla, muundo wa amri ni kama ifuatavyo:

Iptables [-t ]

Vigezo vyote katika mabano ya mraba - hiari. Chaguo-msingi ni jedwali la kichujio, ikiwa unahitaji kutaja meza nyingine, basi unapaswa kutumia ufunguo -t ikionyesha jina. Baada ya jina la jedwali kuonyeshwa ambalo linafafanua kitendo ( Kwa mfano: ingiza sheria, au ongeza sheria hadi mwisho wa mlolongo, au futa sheria). huweka vigezo vya uteuzi. inaonyesha ni hatua gani inapaswa kufanywa ikiwa vigezo vya uteuzi katika kanuni zinalingana ( Kwa mfano: kupitisha pakiti kwenye mlolongo mwingine wa sheria, "dondosha" pakiti, toa ujumbe wa kosa kwa chanzo ...).

Chini ni amri na vigezo vya matumizi ya iptables:

Kigezo Maelezo Mfano
Timu
--ongeza (-A) Ongeza sheria iliyoainishwa kwenye MWISHO wa orodha kwenye mlolongo ulioainishwa na jedwali maalum. iptables -A kigezo cha MBELE -j kitendo
--futa (-D) Huondoa sheria iliyobainishwa na nambari au sheria. Mfano wa kwanza unafuta sheria zote na nambari 10,12 katika minyororo yote, katika meza za chujio, mfano wa pili unafuta sheria maalum kutoka kwa meza ya mangle katika mlolongo wa PREROUTING. iptables -D 10.12
iptables -t mangle -D PREROUTING vigezo -j kitendo
--badilisha jina-mnyororo (-E) Badilisha jina la mnyororo. iptables -E OLD_CHAIN ​​​​NEW_CHAIN
--futa (-F) Hufuta sheria zote za jedwali la sasa. Kwa pakiti zote zinazohusiana na viunganisho vilivyoanzishwa tayari, tumia kitendo cha mwisho KUBALI - ruka iptables -F
--ingiza (-I) Huweka kanuni iliyobainishwa katika eneo lililobainishwa na nambari. iptables -NIMEPELEKA 5 vigezo -j kitendo
--orodha (kifupi -L) Tazama sheria zilizopo (bila kutaja wazi meza - meza ya chujio ya minyororo yote inaonyeshwa). iptables -L
--sera (-P) Huweka sera chaguo-msingi kwa msururu uliotolewa. iptables -t mangle -P PREROUTING DROP
--badilisha (-R) Hubadilisha kanuni iliyobainishwa na nambari na ile iliyoainishwa katika vigezo. iptables -R POSROUTING 7 | vigezo -j kitendo
--futa-mnyororo (-X) Ondoa minyororo ZOTE zilizoundwa kwa mikono (weka tu INPUT, OUTPUT, FORWARD, PREROUTING na POSTROUTING ya kawaida pekee). iptables -X
--sifuri (-Z) Huweka upya vihesabio vya data inayotumwa kwenye mnyororo. iptables -Z INPUT
Chaguo
--nambari (-n) Haisuluhishi anwani na itifaki wakati wa kutoa.
--line-nambari Bainisha nambari za sheria katika pato (inaweza kutumika kwa kushirikiana na -L). iptables -L --line-nambari
--msaada (-h) tungekuwa wapi bila yeye?
-t meza Hubainisha jina la jedwali ambalo kitendo kinahitaji kutekelezwa. Mfano huweka upya jedwali la nat katika minyororo yote. iptables -t nat -F
--kitenzi (-v) Hitimisho la kina. iptables -L -v

Vigezo (vigezo) vya kuchagua pakiti za mtandao za amri ya iptables

Vigezo vya kuchagua pakiti za mtandao zimegawanywa kwa siri katika vikundi kadhaa: Vigezo vya jumla, vigezo vilivyo wazi, vigezo wazi. inaweza kutumika katika sheria yoyote, hazitegemei aina ya itifaki na hazihitaji kupakia moduli za ugani. (Ningeiita yasiyo ya jumla), vigezo hivyo ambavyo vimepakiwa kwa njia isiyo wazi na kupatikana, kwa mfano, wakati wa kubainisha kigezo cha jumla. --protocol tcp|udp|icmp. Kabla ya matumizi, unahitaji kuunganisha upanuzi wa ziada(hizi ni za kipekee programu-jalizi kwa kichungi cha mtandao). Viendelezi vya ziada kubeba kwa kutumia kigezo -m au --mechi. Kwa hivyo kwa mfano, ikiwa tutatumia vigezo jimbo, basi lazima tueleze wazi hii katika mstari wa sheria: -m jimbo upande wa kushoto wa kigezo kilichotumiwa. Tofauti kati ya dhahiri Na isiyo ya jumla Vigezo ni kwamba zile zilizo wazi zinahitaji kupakiwa kwa uwazi, na zile zisizo wazi hupakiwa kiotomatiki.

Inaweza kutumika katika vigezo vyote ishara! kabla ya thamani ya kigezo. Hii itamaanisha kuwa sheria hii inashughulikia pakiti zote ambazo hailingani na parameter hii. Kwa mfano: kigezo --itifaki! tcp itamaanisha kwamba pakiti zote hizo Sivyo itifaki za TCP ziko chini ya sheria. Hata hivyo, matoleo ya hivi punde zaidi ya iptables (hasa, 1.4.3.2 na matoleo mapya zaidi) hayatumiki tena na sintaksia hii na yanahitaji matumizi ya --itifaki! tcp, A ! --itifaki tcp, kutoa makosa yafuatayo:

Kutumia ukanushaji uliowekwa ndani (`--chaguo ! this`) umeacha kutumika kwa ajili ya kuongezwa nafasi (`! --chaguo hili`).

Chini hutolewa kwa fomu ya meza Vigezo vya kawaida vya uteuzi wa pakiti:

Kigezo Maelezo Mfano
Vigezo vya kawaida
--itifaki
(kifupi -p)
Inafafanua itifaki. Chaguzi tcp, udp, icmp, itifaki yote au nyingine yoyote iliyofafanuliwa katika /etc/protocols iptables -A INPUT -p tcp
--chanzo
(-s, --src)
Anwani ya IP ya chanzo cha pakiti. Inaweza kufafanuliwa kwa njia kadhaa:
  • Mpangishi mmoja: host.domain.tld, au anwani ya IP: 10.10.10.3
  • Bwawa la anwani (subnet): 10.10.10.3/24 au 10.10.10.3/255.255.255.0

Inapendekezwa sana kutotumia majina ya vikoa ambayo yanahitaji hoja za DNS kwa utatuzi, kwa kuwa netfilter DNS inaweza isifanye kazi ipasavyo wakati wa hatua ya usanidi. Pia, kumbuka kuwa majina yanatatuliwa mara moja tu - wakati wa kuongeza sheria kwenye mnyororo. Baadaye, anwani ya IP inayolingana na jina hili inaweza kubadilika, lakini hii haitaathiri sheria zilizorekodiwa kwa njia yoyote (zitabaki. anwani ya zamani) Ukitaja jina la kikoa ambalo linatatua kwa anwani kadhaa za IP, sheria tofauti itaongezwa kwa kila anwani.

iptables -A PEMBEJEO -s 10.10.10.3
--marudio
(-d)
Anwani ya IP ya marudio ya pakiti. Inaweza kufafanuliwa kwa njia kadhaa (tazama --source). iptables -A INPUT --lengwa 192.168.1.0/24
--katika-kiolesura
(-i)
Inabainisha kiolesura ambacho pakiti ilifika. Inafaa kwa NAT na mashine zilizo na miingiliano mingi ya mtandao. Inatumika katika minyororo ya INPUT, FORWARD na PREROUTING. Inawezekana kutumia ishara "+", basi inamaanisha matumizi ya miingiliano yote kuanzia na jina + (kwa mfano, eth+ - miingiliano yote ya eth). iptables -t nat -A PREROUTING --in-interface eth0
--nje-interface
(-o)
Inafafanua kiolesura ambacho pakiti itaondoka. Inafaa kwa NAT na mashine zilizo na miingiliano mingi ya mtandao. Inatumika katika minyororo ya OUTPUT, FORWARD na POSTROUTING. Inawezekana kutumia ishara "+". iptables -t nat -A POSTROUTING --in-interface eth1
Vigezo dhahiri (visivyoshirikiwa).
-p proto -h kuonyesha usaidizi kwenye vigezo dhabiti vya itifaki ya proto. iptables -p icmp -h
--chanzo-bandari
(--michezo)
Chanzo cha bandari, inawezekana tu kwa itifaki --itifaki tcp, au --protocol udp iptables -A INPUT --protocol tcp --source-port 25
--bandari-mwisho
(--dport)
Mlango wa kulengwa, inawezekana tu kwa --protocol tcp, au --protemocol udp itifaki iptables -A INPUT --protocol udp --lengo-bandari 67
Vigezo vya Wazi
-m jimbo --state (iliyoacha kutumika)
aka
-m contrack --ctstate

Hali ya muunganisho. Chaguzi zinazopatikana:

  • MPYA(Vifurushi vyote vinaanzisha muunganisho mpya)
  • IMEANZISHWA(Pakiti zote za muunganisho ulioanzishwa)
  • INAYOHUSIANA(Pakiti ambazo si za muunganisho ulioanzishwa, lakini zinahusishwa nayo. Kwa mfano - FTP in hali amilifu matumizi miunganisho tofauti kwa uhamisho wa data. Viunganisho hivi vinahusiana.)
  • SI SAHIHI(Pakiti ambazo haziwezi kutambuliwa kwa sababu moja au nyingine. Kwa mfano, hitilafu za ICMP ambazo si za miunganisho iliyopo)
  • n.k. (maelezo zaidi katika hati)
iptables -A INPUT -m state --state MPYA,ESTABLISHEDiptables -A INPUT -m contrack --ctstate MPYA,IMESUMBULIWA
-m mac --mac-source Inaweka Anwani ya MAC nodi ya mtandao ambayo ilituma pakiti. Anwani ya MAC lazima ibainishwe katika fomu XX:XX:XX:XX:XX:XX. -m mac --mac-source 00:00:00:00:00:0

Vitendo kwenye vifurushi

Kichwa hiki kingefafanuliwa kwa usahihi zaidi kama " Vitendo kwenye vifurushi vinavyolingana na vigezo vya uteuzi". Kwa hivyo, kukamilisha yoyote vitendo kwenye vifurushi, unahitaji kutaja ufunguo -j (--ruka) na kuonyesha ni hatua gani mahususi za kuchukua.

Vitendo kwenye vifurushi vinaweza kuchukua maadili yafuatayo:

  • KUBALI- pakiti huacha mlolongo huu na kuhamishiwa kwa ijayo (literally - KUBALI).
  • DONDOSHA- Tupa pakiti ambayo inakidhi hali hiyo, wakati pakiti haijapitishwa kwa meza / minyororo mingine.
  • KATAA- Tupa pakiti kwa kutuma ujumbe wa ICMP kwa mtumaji, wakati pakiti haijasambazwa kwa jedwali/minyororo mingine.
  • RUDISHA- rudisha pakiti kwenye mlolongo uliopita na uendelee kifungu chake kuanzia sheria inayofuata.
  • SNAT chanzo kwenye kifurushi. Inaweza kutumika tu katika minyororo POSTROUTING na OUTPUT katika meza za nat.
  • DNAT- tumia tafsiri ya anwani miadi kwenye kifurushi. Inaweza kutumika katika mnyororo PREROUTING kwenye meza ya nat. (katika hali za kipekee - kwenye mnyororo wa OUTPUT)
  • LOG- ingia pakiti (iliyotumwa kwa daemon) na uifanye na sheria zingine.
  • MASQUERADE- kutumika badala yake SNAT ikiwa kuna uhusiano na IP yenye nguvu (inaruhusiwa kuonyesha tu kwenye mlolongo KUACHA nat meza).
  • MARK- kutumika kuweka lebo kwenye pakiti na kupitishwa kwa sheria zaidi za usindikaji.
  • na nk.

Mbali na vitendo hivi, kuna vingine vinavyoweza kupatikana katika nyaraka (labda hivi karibuni nitaongeza makala ninapoendeleza mada). Vitendo vingine vina vigezo vya ziada.

Jedwali hapa chini linatoa mifano na maelezo ya vigezo vya ziada:

Kigezo Maelezo Mfano
DNAT (Tafsiri ya Anwani Lengwa ya Mtandao)
--kwenye-lengwa inabainisha ni anwani ipi ya IP inapaswa kubadilishwa kuwa anwani lengwa. Katika mfano katika vifurushi vyote itifaki ya tcp, ambaye alikuja kushughulikia 1.2.3.4, anwani iliyopewa itabadilishwa na 4.3.2.1. iptables -t nat -A PREROUTING -p tcp -d 1.2.3.4 -j DNAT --kwenda-lengwa 4.3.2.1
LOG
--kiwango-logi Inatumika kuweka kiwango cha ukataji miti (). Katika mfano, kiwango cha juu cha ukataji miti kimewekwa kwa pakiti zote za tcp kwenye jedwali la kichujio cha mnyororo wa FORWARD. iptables -A FORWARD -p tcp -j LOG --log-level utatuzi
--logi-kiambishi awali Hubainisha maandishi (kiambishi awali) ambayo yatatangulia ujumbe wote iptables. (inafaa sana baadaye) kiambishi awali kinaweza kuwa na hadi herufi 29, ikijumuisha nafasi. Katika mfano, kila kitu kinatumwa kwa syslog pakiti za tcp katika jedwali la kichujio cha msururu wa INPUT yenye kiambishi awali cha kichujio cha INRUT. iptables -A INPUT -p tcp -j LOG --log-kiambishi awali "INRUT-filter"
--logi-ip-chaguo Inakuruhusu kuingia habari mbalimbali kutoka kwa kichwa cha pakiti ya IP. iptables -A FORWARD -p tcp -j LOG --log-ip-chaguzi
na nk...

Hii inahitimisha nadharia kuhusu kichujio cha mtandao cha netfilter/iptables. Katika makala inayofuata nitatoa mifano ya vitendo ya kuimili nadharia hii.

Muhtasari

Katika makala hii tulichunguza kwa ufupi sana dhana za kimsingi mlinzi wa kuongezeka katika Linux. Kwa hivyo, mfumo mdogo wa netfilter/iptables ni sehemu ya kinu cha Linux na hutumika kupanga. miradi mbalimbali kuchuja na kudanganywa kwa pakiti za mtandao. Katika kesi hii, kila pakiti hupita kutoka kwa interface ya mtandao ambayo ilifika na zaidi kwa njia fulani ya mlolongo, kulingana na ikiwa imekusudiwa kwa mfumo wa ndani au "isiyo ya ndani" moja. Kila mlolongo una seti ya meza zilizo na seti ya sheria zinazofuatana. Kila sheria ina kigezo/vigezo fulani vya kuchagua pakiti ya mtandao na kitendo fulani na kifurushi kinachotimiza vigezo hivi. Kwa mujibu wa sheria zilizotolewa, hatua yoyote inaweza kufanywa kwenye pakiti (Kwa mfano, uhamisho kwenye mlolongo unaofuata / mwingine, upya wa pakiti, urekebishaji wa yaliyomo au vichwa, nk). Kila mlolongo na kila meza ina madhumuni yake mwenyewe, utendaji na mahali katika njia ya mfuko. Kwa mfano, kuchuja pakiti, meza ya chujio hutumiwa, ambayo iko katika minyororo mitatu ya kawaida na inaweza kuwa katika minyororo iliyotajwa na mtumiaji. Njia ya pakiti huishia kwenye kiolesura cha mtandao unaotoka au kwa kuwasilisha kwa mchakato/programu ya ndani.

Fasihi

Kidogo kabisa habari ya kuvutia kwa Kirusi iko hapa:

  • http://www.opennet.ru/docs/RUS/iptables/
  • http://ru.wikibooks.org/wiki/Iptables

Nyenzo za kina zaidi zinapatikana katika lugha ya ubepari hapa:

  • http://www.frozentux.net/documents/ipsysctl-tutorial/
  • http://www.netfilter.org/documentation/index.html

Hongera sana, McSim!