Byrjendahandbók um IPTables (Linux Firewall) skipanir


Ef þú ert að nota tölvur á meðan, verður þú að kannast við orðið Eldveggur. Við vitum að hlutirnir virðast flóknir frá yfirborðinu en í gegnum þessa kennslu ætlum við að útskýra grundvöll IPTable og notkun grunnskipana svo að jafnvel þótt þú sért netnemi eða viljir kafa djúpt í netkerfi geturðu notið góðs af þessari handbók.

Hvernig eldveggurinn virkar er frekar einfalt. Það skapar hindrun á milli áreiðanlegra og ótrausts netkerfa svo kerfið þitt getur verið öruggt fyrir skaðlegum pökkum.

En hvernig ætlum við að ákveða hvað er öruggt og hvað ekki? Sjálfgefið er að þú færð einhver forréttindi til að setja upp reglur fyrir eldvegginn þinn en fyrir ítarlegra eftirlit með komandi og útleiðendum pakka eru IPTables það sem þú þarfnast mest.

Hægt er að nota IPTables fyrir persónulega tölvuvinnslu eða einnig hægt að nota þær á allt netið. Með því að nota IPTables munum við skilgreina sett af reglum sem við getum fylgst með, leyft eða lokað á komandi eða útleiðandi netpakka.

Í stað þess að einblína bara á allan fræðihlutann, ætlum við aðeins að ræða það sem skiptir máli í hagnýtum heimi. Svo við skulum byrja á því að skilja kjarnahugtök IPTables.

Að skilja hugtakið IPTables

Þegar við ræðum IPTables verðum við að skilja 3 hugtök: Töflur, keðjur og reglur. Þar sem þetta eru mikilvægir hlutar ætlum við að ræða hvern þeirra.

Svo skulum við byrja á töflum.

Það eru 5 tegundir af töflum í IPTables og hver um sig hefur mismunandi reglur. Svo við skulum byrja á algengustu töflunni „Filer“.

  1. Síutafla – Þetta er sjálfgefin og aðaltafla þegar IPTables eru notuð. Það þýðir að þegar þú munt ekki nefna neina sérstaka töflu á meðan þú beitir reglum, þá verða þær notaðar á síutöfluna. Eins og nafnið gefur til kynna er hlutverk síunartöflunnar að ákveða hvort pakkarnir eigi að komast á áfangastað eða hafna beiðni þeirra.
  2. NAT (Network Address Translation) – Eins og nafnið gefur til kynna gerir þessi tafla notendum kleift að ákvarða þýðingu netfönga. Hlutverk þessarar töflu er að ákvarða hvort breyta eigi og hvernig eigi að breyta uppruna og áfangastað pakkavistfangsins.
  3. Mangle Tafla – Þessi tafla gerir okkur kleift að breyta IP hausum pakka. Til dæmis geturðu stillt TTL til að annað hvort lengja eða stytta nethopp sem pakkinn getur haldið uppi. Á sama hátt er einnig hægt að breyta öðrum IP-hausum eftir því sem þú vilt.
  4. RAW tafla – Aðalnotkun þessarar töflu er til að rekja tengingar þar sem hún býður upp á kerfi til að merkja pakka til að skoða pakka sem hluta af yfirstandandi lotu.
  5. Öryggistafla – Með því að nota öryggistöfluna geta notendur beitt innri SELinux öryggissamhengismerkjum á netpakka.

Í flestum tilfellum hafa síðustu 2 tegundir (RAW og öryggi) töflunnar ekki mikið að gera og aðeins fyrstu 3 valkostirnir eru taldir sem aðaltöflur.

Nú skulum við tala um Keðjur.

Þeir haga sér á stöðum á leið netsins þar sem við getum beitt reglum. Í IPTables, við 5 tegundir af keðjum og við munum ræða hverja þeirra. Hafðu í huga að ekki er hver tegund af keðju tiltæk fyrir hverja tegund borðs.

  1. Forleiðing – Þessi keðja er notuð á hvaða pakka sem er á innleið þegar hann er kominn inn í netstaflann og þessi keðja er unnin jafnvel áður en einhver leiðarákvörðun hefur verið tekin varðandi lokaáfangastað pakkans.
  2. Inntakskeðja – Það er staðurinn þar sem pakki fer inn í netstaflann.
  3. Áframkeðja – Það er staðurinn þar sem pakkinn hefur verið framsendur í gegnum kerfið þitt.
  4. Úttakskeðja – Úttakskeðjan er notuð á pakkann þegar hann kom í gegnum kerfið þitt og fer út.
  5. Eftir leið – Þetta er algjör andstæða forleiðar keðjunnar og er beitt á sendar eða sendar pakka þegar leiðarákvörðun hefur verið tekin.

Nú, það eina sem eftir er að ræða eru reglur, og það er auðveldasta af þeim 3 sem við höfum rætt hér. Svo skulum klára það sem er eftir á fræðilega hlutanum.

Reglur eru ekkert annað en settið eða einstakar skipanir sem notendur stjórna netumferð með. Þegar hver keðja kemur til framkvæmda verður pakkinn athugaður í samræmi við skilgreindar reglur.

Ef ein regla uppfyllir ekki skilyrðið verður henni sleppt yfir í þá næstu og ef hún uppfyllir skilyrðið verður næsta regla tilgreind með gildi marksins.

Hver regla hefur tvo þætti: samsvörunarhlutinn og markhlutinn.

  1. Passunarhluti – Þetta eru mismunandi skilyrði til að skilgreina reglur sem hægt er að passa saman með samskiptareglum, IP tölu, gáttarfangi, viðmótum og hausum.
  2. Markþáttur – Þetta er aðgerð sem verður ræst þegar skilyrðum er fullnægt.

Þetta var skýringarhlutinn og nú munum við fjalla um grunnskipanir sem tengjast IPTables í Linux.

Að setja upp IPTables eldvegg í Linux

Í nútíma Linux dreifingum eins og Pop!_OS koma IPTables fyrirfram uppsettar en ef kerfið þitt vantar IPTables pakkann geturðu auðveldlega sett hann upp með leiðbeiningum:

Til að setja upp IPTables á dnf skipun.

$ sudo dnf install iptables-services

Mikilvægt: Ef þú ert að nota Firewalld þarftu að slökkva á því áður en þú heldur áfram í uppsetningu. Til að stöðva eldvegginn algjörlega þarftu að nota eftirfarandi skipanir:

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

Til að setja upp IPTables á apt skipun.

$ sudo apt install iptables

Þegar þú hefur sett upp IPTables geturðu virkjað eldvegginn með tilteknum skipunum:

$ sudo systemctl enable iptables
$ sudo systemctl start iptables

Til að fylgjast með stöðu IPTable þjónustunnar geturðu notað tilgreinda skipun:

$ sudo systemctl status iptables

Lærðu grunnatriði IPTables Command í Linux

Þegar við erum búin með uppsetninguna getum við haldið áfram með setningafræði IPTables sem gerir þér kleift að fínstilla sjálfgefna stillingar og gera þér kleift að stilla eftir þínum þörfum.

Grunnsetningafræði IPTables er sem hér segir:

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

Við skulum skilja skýringuna á ofangreindri skipun:

Fyrsti hlutinn er -t þar sem við getum valið úr hvaða 5 tiltæku töfluvalkostum sem er og ef þú fjarlægir -t hlutann úr skipuninni mun hann nota filter table eins og það er sjálfgefna töflugerðin.

Seinni hlutinn er fyrir keðjuna. Hér getur þú valið um mismunandi keðjupunkta og þeir valkostir eru gefnir hér að neðan:

  • -A – Bætir nýrri reglu við keðjuna í lok keðjunnar.
  • -C – Athugar reglu hvort hún uppfylli kröfur keðjunnar.
  • -D – Leyfir notendum að eyða núverandi reglu úr keðjunni.
  • -F – Þetta mun fjarlægja hverja reglu sem notandinn skilgreinir.
  • -I – Leyfir notendum að bæta við nýrri reglu á tilgreindri staðsetningu.
  • -N – Býr til alveg nýja keðju.
  • -v – Þegar það er notað með listavalkostinum færðu nákvæmar upplýsingar.
  • -X – Eyðir keðju.

Samsvörunarmöguleikar eru skilyrði þess að kanna kröfur keðjunnar. Þú getur valið úr ýmsum valkostum og sumir þeirra eru gefnir upp hér að neðan:

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

Fyrir TCP eru þau sem hér segir:

-sport
-dport
--tcp-flags

Nú, ef við lítum á aðgerðahlutann, þá eru tiltækir valkostir háðir tegund borðs eins og NAT, og mangle borðið hefur fleiri valkosti samanborið við aðra. Með því að nota aðgerð geturðu líka miðað á ákveðna töflu eða keðju.

Mest notaða aðgerðin er Jump (-j) sem gefur okkur nokkra möguleika eins og:

  • SAMÞYKKJA – Það er notað til að samþykkja pakka og enda á ferð.
  • DROP – Það er notað til að sleppa pökkum og hætta að fara yfir.
  • HAFNA – Þetta er nokkuð svipað og DROP en það sendir hafnað pakka til upprunans.
  • RETURN – Þetta mun hætta að fara yfir pakkann í undirkeðjunni og mun senda tiltekna pakkann til betri keðjunnar án áhrifa.

Þegar við erum búin með setningafræði munum við sýna þér hvernig þú getur notað IPTables þar á meðal grunnstillingar.

Ef þú vilt athuga hvað fer sjálfgefið í gegnum eldvegginn þinn, þá er það fullkomin leið að skrá núverandi reglur. Til að skrá reglur sem notaðar eru skaltu nota tilgreinda skipun:

$ sudo iptables -L

Í þessum hluta munum við sýna þér hvernig þú getur leyft eða hafnað netumferð fyrir tilteknar höfn. Við munum sýna þér nokkrar vel þekktar hafnir þar sem við viljum vera eins hjálpleg og við getum verið.
Ef þú vilt leyfa HTTPS netumferð, verðum við að leyfa höfn nr 443 með því að nota tilgreinda skipun:

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

Á sama hátt geturðu einnig slökkt á HTTP vefumferð með tiltekinni skipun:

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

Útskýring á notuðum skipanavalkostum:

  • -p er notað til að athuga tilgreindar samskiptareglur og í okkar tilviki er það TCP.
  • --dport er notað til að tilgreina áfangastað.
  • -j er notað til að grípa til aðgerða (samþykkja eða sleppa).

Já, þú getur líka stjórnað netumferð frá IP tölu. Ekki bara einn eða tveir heldur einnig stjórna úrvali IP-talna og við munum sýna þér hvernig.

Til að leyfa ákveðna IP tölu skaltu nota tiltekna skipanabyggingu:

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

Á sama hátt, til að sleppa pökkum frá tilteknum IP, þarftu að nota tiltekna skipanabyggingu:

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

Ef þú vilt geturðu líka stjórnað úrvali IP vistfanga með því að nota tiltekna skipanabyggingu:

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

Stundum gætum við endað með því að gera mistök á meðan við búum til reglur og besta leiðin til að sigrast á þeim mistökum er að eyða þeim. Að eyða skilgreindum reglum er auðveldasta ferlið í þessari handbók og til að eyða þeim verðum við fyrst að skrá þær.

Til að skrá skilgreindar reglur með tölum, notaðu tilgreinda skipun:

$ sudo iptables -L --line-numbers

Til að eyða reglum verðum við að fylgja tilgreindri skipanabyggingu:

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

Segjum að ég vilji eyða 10. reglunni úr INPUT svo ég mun nota tilgreinda skipun:

$ sudo iptables -D INPUT 10

Til að athuga hvort við höfum fjarlægt regluna verðum við að skrá reglur með gefinri skipun:

$ sudo iptables -L –line-numbers

Eins og þú sérð höfum við fjarlægt 10. regluna.

Þú gætir verið að velta fyrir þér hvers vegna við verðum að vista reglur þar sem þær virka vel eftir að hafa beitt þeim? Málið er að þegar kerfið þitt endurræsir, verður öllum skilgreindum reglum sem ekki eru vistaðar eytt svo það er mikilvægt fyrir okkur að þær.

Til að vista reglur í RHEL-byggðum dreifingum:

$ sudo /sbin/service iptables save

Til að vista reglur í Debian afleiðum:

$ sudo /sbin/iptables–save

Til að læra meira um reglur um IPtable eldvegg, skoðaðu ítarlega leiðbeiningar okkar á:

  • 25 Gagnlegar IPtable eldveggsreglur sem allir Linux stjórnendur ættu að vita

Í gegnum þessa handbók höfum við reynt að gera hlutina einfalda svo allir geti notið góðs af því. Þetta var grunnútskýringarleiðbeiningar um IPTables og ef þú hefur einhverjar spurningar skaltu ekki hika við að spyrja í athugasemdunum.