Il-Gwida tal-Bidu għall-Kmandi IPTables (Linux Firewall).


Jekk qed tuża Kompjuters għal żmien, trid tkun familjari mal-kelma \Firewall. Aħna nafu li l-affarijiet jidhru kumplessi mill-wiċċ iżda permezz ta 'dan it-tutorja, se nispjegaw il-bażi ta' IPTable u l-użu ta 'kmandi bażiċi. sabiex anki jekk inti student tan-netwerking jew tixtieq tgħaddas fil-fond fin-netwerks, tista 'tibbenefika minn din il-gwida.

Il-mod kif jaħdem il-Firewall huwa pjuttost sempliċi. Joħloq ostaklu bejn netwerks affidabbli u mhux affidabbli sabiex is-sistema tiegħek tkun sigura minn pakketti malizzjużi.

Imma kif se niddeċiedu x'inhu sikur u x'mhux? B'mod awtomatiku, ikollok xi privileġġ biex twaqqaf regoli għall-Firewall tiegħek iżda għal sorveljanza aktar dettaljata tal-pakketti deħlin u ħerġin, l-IPTables huma l-aktar li teħtieġ.

IPTables jistgħu jintużaw għall-kompjuters personali jew jistgħu wkoll jiġu applikati għan-netwerk kollu. Bl-użu ta 'IPTables, se nkunu qed niddefinixxu sett ta' regoli li bihom nistgħu nissorveljaw, inħallu jew nibblukkaw pakketti tan-netwerk deħlin jew ħerġin.

Pjuttost milli niffukaw biss fuq il-parti tat-teorija kollha, se niddiskutu biss dak li huwa importanti fid-dinja prattika. Mela ejja nibdew biex nifhmu l-kunċetti ewlenin ta 'IPTables.

Nifhmu l-Kunċett tal-IPTables

Waqt li niddiskutu l-IPTables, irridu nifhmu 3 termini: Tabelli, Ktajjen, u Regoli. Peress li dawn huma l-partijiet importanti, ser niddiskutu kull wieħed minnhom.

Mela ejja nibdew bit-Tabelli.

Hemm 5 tipi ta' tabelli f'IPTables u kull wieħed għandu regoli differenti applikati. Mela ejja nibdew bl-aktar tabella komuni \Filer.

  1. Tabella tal-Filtru – Din hija t-tabella default u ewlenija waqt li tuża l-IPTables. Dan ifisser li kull meta ma ssemmi l-ebda tabella speċifika waqt li tapplika r-regoli, dawn se jiġu applikati għat-tabella tal-filtri. Kif jissuġġerixxi isimha, ir-rwol tat-tabella tal-Filtru huwa li tiddeċiedi jekk il-pakketti għandhomx jitħallew jaslu fid-destinazzjoni tagħhom jew jiċħdu t-talba tagħhom.
  2. NAT (Traduzzjoni tal-Indirizzi tan-Netwerk) – Kif jissuġġerixxi isimha, din it-tabella tippermetti lill-utenti jiddeterminaw it-traduzzjoni tal-indirizzi tan-netwerk. Ir-rwol ta' din it-tabella huwa li tiddetermina jekk timmodifikax u kif timmodifika s-sors u d-destinazzjoni tal-indirizz tal-pakkett.
  3. Mangle Table - Din it-tabella tippermettilna li nimmodifikaw l-intestaturi IP tal-pakketti. Pereżempju, tista 'taġġusta TTL biex ittawwal jew tnaqqas il-ħops tan-netwerk li l-pakkett jista' jsostni. Bl-istess mod, headers IP oħra jistgħu wkoll jiġu modifikati skond il-preferenza tiegħek.
  4. Tabella RAW – L-użu ewlieni ta' din it-tabella huwa li jintraċċa l-konnessjonijiet peress li tipprovdi mekkaniżmu għall-immarkar tal-pakketti biex tara l-pakketti bħala parti minn sessjoni li tkun għaddejja.
  5. Tabella tas-Sigurtà – Bl-użu tat-tabella tas-Sigurtà, l-utenti jistgħu japplikaw marki tal-kuntest tas-sigurtà interni SELinux fuq pakketti tan-netwerk.

Għall-aktar każijiet ta 'użu, l-aħħar 2 tipi (RAW u Sigurtà) tat-tabella m'għandhomx ħafna x'jagħmlu u l-ewwel 3 għażliet biss huma magħduda bħala tabelli ewlenin.

Issa, ejja nitkellmu dwar Ktajjen.

Huma jġibu ruħhom f'punti fir-rotta tan-netwerk fejn nistgħu napplikaw regoli. F'IPTables, aħna 5 tipi ta 'ktajjen u ser niddiskutu kull wieħed minnhom. Żomm f'moħħok li mhux kull tip ta 'katina hija disponibbli għal kull tip ta' tabella.

  1. Pre-routing – Din il-katina tiġi applikata għal kwalunkwe pakkett li jkun dieħel ladarba jiddaħħal fil-munzell tan-netwerk u din il-katina tiġi pproċessata anki qabel ma tkun ittieħdet kwalunkwe deċiżjoni dwar ir-rotot rigward id-destinazzjoni finali tal-pakkett.
  2. Katina tal-Input – Huwa l-punt fejn pakkett jidħol fil-munzell tan-netwerk.
  3. Katina 'l quddiem – Huwa l-punt fejn il-pakkett ġie mibgħut permezz tas-sistema tiegħek.
  4. Katina tal-Output – Il-katina tal-output tiġi applikata għall-pakkett meta oriġina mis-sistema tiegħek u tintefa.
  5. Post-routing – Dan huwa l-oppost sħiħ tal-katina ta’ pre-routing u huwa applikat għal pakketti mibgħuta jew ħerġin ladarba tkun ittieħdet id-deċiżjoni tar-rotot.

Issa, l-unika ħaġa li fadal biex niddiskutu huma r-regoli, u hija l-eħfef waħda mit-3 li ddiskutejna hawn. Mela ejja tlesti dak li fadal fuq il-parti teoretika.

Ir-regoli huma xejn ħlief il-kmandi sett jew individwali li bihom l-utenti jimmanipulaw it-traffiku tan-netwerk. Ladarba kull katina tidħol fl-azzjoni, il-pakkett jiġi ċċekkjat kontra regoli definiti.

Jekk regola waħda ma tissodisfax il-kundizzjoni, tinqabeż għal dik li jmiss u jekk tissodisfa l-kundizzjoni, ir-regola li jmiss tiġi speċifikata mill-valur tal-mira.

Kull regola għandha żewġ komponenti: il-komponent li jaqblu u l-komponent fil-mira.

  1. Komponent ta' Tqabbil – Huma kundizzjonijiet differenti biex jiġu definiti regoli li jistgħu jiġu mqabbla bi protokoll, indirizz IP, indirizz tal-port, interfaces, u headers.
  2. Komponent fil-mira – Din hija azzjoni li se tiġi attivata ladarba l-kundizzjonijiet jiġu sodisfatti.

Din kienet il-parti tal-ispjegazzjoni u issa se nkunu qed inkopru kmandi bażiċi relatati mal-IPTables fil-Linux.

Installazzjoni ta 'IPTables Firewall fil-Linux

F'distribuzzjonijiet moderni tal-Linux bħal Pop!_OS, IPTables jiġi installat minn qabel imma jekk is-sistema tiegħek m'għandhiex il-pakkett IPTables, tista' faċilment tinstallah permezz ta' struzzjonijiet mogħtija:

Biex tinstalla IPTables fuq kmand dnf.

$ sudo dnf install iptables-services

Importanti: Jekk qed tuża Firewalld, ikollok tiddiżattivah qabel ma tipproċedi għall-installazzjoni. Biex twaqqaf il-firewall kompletament, ikollok tuża l-kmandi li ġejjin:

$ sudo systemctl stop firewalld
$ sudo systemctl disable firewalld
$ sudo systemctl mask firewalld

Biex tinstalla IPTables fuq kmand apt.

$ sudo apt install iptables

Ladarba tinstalla IPTables, tista 'tippermetti l-firewall permezz ta' kmandi mogħtija:

$ sudo systemctl enable iptables
$ sudo systemctl start iptables

Biex timmonitorja l-istat tas-servizz IPTable, tista 'tuża l-kmand mogħti:

$ sudo systemctl status iptables

Tgħallem il-Bażi tal-Kmand tal-IPTables fil-Linux

Ladarba nkunu lesti l-installazzjoni, nistgħu nipproċedu bis-sintassi tal-IPTables li tippermettilek ttejjeb l-inadempjenzi u tippermettilek tikkonfigura skont il-bżonnijiet tiegħek.

Is-sintassi bażika tal-IPTables hija kif ġej:

# iptables -t {type of table} -options {chain points} {condition or matching component} {action}

Ejja nifhmu l-ispjegazzjoni tal-kmand ta 'hawn fuq:

L-ewwel parti hija -t fejn nistgħu nagħżlu minn kwalunkwe 5 għażliet ta' tabella disponibbli u jekk tneħħi l-parti -t mill-kmand, se tuża tabella tal-filtru kif inhi it-tip ta' tabella default.

It-tieni parti hija għall-katina. Hawnhekk tista' tagħżel minn għażliet differenti ta' punti tal-katina u dawk l-għażliet huma mogħtija hawn taħt:

  • -A – Iżżid regola ġdida mal-katina fit-tarf tal-katina.
  • -C – Jiċċekkja għal regola jekk tissodisfax ir-rekwiżit tal-katina.
  • -D – Jippermetti lill-utenti jħassru regola eżistenti mill-katina.
  • -F – Dan se jneħħi kull regola definita mill-utent.
  • -I – Jippermetti lill-utenti jżidu regola ġdida fil-pożizzjoni speċifikata.
  • -N – Joħloq katina kompletament ġdida.
  • -v – Meta jintuża mal-għażla tal-lista, iġib informazzjoni dettaljata.
  • -X – Tħassar il-katina.

L-għażliet ta 'tqabbil huma l-kundizzjoni għall-iċċekkjar tal-ħtieġa tal-katina. Tista' tagħżel minn diversi għażliet u wħud minnhom huma mogħtija hawn taħt:

Protocols -p
Source IP -s
Destination IP -d
IN interface -i
OUT interface -o

Għal TCP, huma kif ġej:

-sport
-dport
--tcp-flags

Issa, jekk nikkunsidraw il-parti ta 'azzjoni, l-għażliet disponibbli jiddependu fuq it-tip ta' tabella bħal NAT, u t-tabella ta 'mangle għandha aktar għażliet meta mqabbla ma' oħrajn. Billi tuża azzjoni, tista 'wkoll timmira tabella jew katina speċifika.

L-aktar azzjoni użata hija Aqbeż (-j) li tagħtina diversi għażliet bħal:

  • AĊĊETTA – Jintuża biex jaċċetta pakketti u jintemm it-travers.
  • DROP – Jintuża biex jitfa' pakketti u jintemm it-travers.
  • REJECT – Dan huwa pjuttost simili għal DROP iżda jibgħat pakketti rrifjutati lis-sors.
  • RITORN – Dan iwaqqaf it-travers tal-pakkett fis-sub katina u jibgħat il-pakkett speċifiku lill-katina superjuri mingħajr ebda effett.

Ladarba nkunu lesta bis-sintassi, aħna nuruk kif tista' tuża l-IPTables inkluża l-konfigurazzjoni bażika.

Jekk trid tiċċekkja dak li qed jgħaddi mill-Firewall tiegħek awtomatikament, li telenka sett ta' regoli attwali hija mod perfett. Biex telenka r-regoli applikati, uża l-kmand mogħti:

$ sudo iptables -L

F'din it-taqsima, ser nuruk kif tista' tippermetti jew tiċħad it-traffiku tan-netwerk għal portijiet speċifiċi. Aħna nuruk xi portijiet magħrufa peress li rridu nkunu ta’ għajnuna kemm nistgħu.
Jekk trid tippermetti t-traffiku tan-netwerk HTTPS, ikollna nħallu l-port Nru 443 billi nużaw il-kmand mogħti:

$ sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Bl-istess mod, tista 'wkoll tiddiżattiva t-traffiku tal-web HTTP permezz ta' kmand mogħti:

$ sudo iptables -A INPUT -p tcp --dport 80 -j REJECT

Spjegazzjoni tal-għażliet tal-kmand użati:

  • -p jintuża għall-iċċekkjar tal-protokoll speċifikat u fil-każ tagħna huwa TCP.
  • --dport jintuża biex jiġi speċifikat il-port tad-destinazzjoni.
  • -j tintuża biex tieħu azzjoni (aċċetta jew twaqqa').

Iva, tista 'wkoll tikkontrolla t-traffiku tan-netwerk minn indirizz IP. Mhux biss wieħed jew tnejn iżda wkoll jikkontrollaw il-firxa ta 'indirizzi IP u aħna ser nuruk kif.

Biex tippermetti indirizz IP speċifiku, uża l-istruttura tal-kmand mogħtija:

$ sudo iptables -A INPUT -s 69.63.176.13 -j ACCEPT

Bl-istess mod, biex twaqqa' pakketti minn IP speċifiku, inti mitlub li tuża l-istruttura tal-kmand mogħtija:

$ sudo iptables -A INPUT -s 192.168.0.27 -j DROP

Jekk trid, tista 'wkoll tikkontrolla l-firxa ta' indirizzi IP billi tuża l-istruttura tal-kmand mogħtija:

$ sudo iptables -A INPUT -m range --src-range 192.168.0.1-192.168.0.255 -j REJECT

Xi drabi nistgħu nispiċċaw nagħmlu żbalji waqt li noħolqu regoli u l-aħjar mod biex negħlbu dawk l-iżbalji huwa li nħassruhom. It-tħassir tar-regoli definiti huwa l-eħfef proċess matul din il-gwida u biex tħassarhom, l-ewwel, ikollna nilnukawhom.

Biex telenka regoli definiti bin-numri, uża l-kmand mogħti:

$ sudo iptables -L --line-numbers

Biex tħassar ir-regoli, ikollna nsegwu l-istruttura tal-kmand mogħtija:

$ sudo iptables -D <INPUT/FORWARD/OUTPUT> <Number>

Ejja ngħidu li rrid inħassar l-10 regola mill-INPUT għalhekk se nkun qed nuża l-kmand mogħti:

$ sudo iptables -D INPUT 10

Biex niċċekkjaw jekk neħħejniex ir-regola b'suċċess, irridu nielenkaw ir-regoli bi kmand mogħti:

$ sudo iptables -L –line-numbers

Kif tistgħu taraw, neħħejna b'suċċess l-10 regola.

Forsi tkun qed tistaqsi għaliex irridu nsalvaw ir-regoli fejn qed jaħdmu tajjeb wara li napplikawhom? Il-kwistjoni hija ladarba s-sistema tiegħek terġa 'tibda, ir-regoli definiti kollha li ma jiġux salvati se jitħassru u għalhekk huwa kruċjali għalina għalihom.

Biex issalva r-regoli fid-distros ibbażati fuq RHEL:

$ sudo /sbin/service iptables save

Biex issalva r-regoli fid-derivattivi Debian:

$ sudo /sbin/iptables–save

Biex titgħallem aktar dwar ir-regoli tal-IPtable Firewall, iċċekkja l-gwida dettaljata tagħna fuq:

  • 25 Regoli Utli tal-Firewall IPtable Kull Amministratur Linux Għandu Jaf

Matul din il-gwida, ippruvajna nagħmlu l-affarijiet sempliċi sabiex kulħadd ikun jista’ jibbenefika minnha. Din kienet gwida ta' spjegazzjoni bażika dwar IPTables u jekk għandek xi mistoqsijiet, tħossok liberu li tistaqsi fil-kummenti.