Sigurimi i rrjetit tuaj me Iptables - Proxy - NAT - ID: PJESA 1

Ky post përpiqet të sqarojë pak se si funksionojnë rrjetet dhe si t'i kthejmë pajisjet tona Linux në një Router që siguron pak më shumë rrjetin tonë, qoftë ai në shtëpi apo edhe biznes. Pra, le të merremi me biznesin:

Kjo përmbajtje bazohet në librin "Linux - Administrimi i Sistemit dhe Funksionimi i Shërbimeve të Rrjetit" - Sébastien BOBILLIER

Rrugëzimi dhe filtrimi

Për të folur dhe kuptuar në lidhje me rutimin, së pari mund të përcaktojmë se cili është roli i routerit? Për këtë mund të themi se një router, përveç krijimit të një rrjeti dhe lejimit të lidhjes me pajisje të tjera (duke ditur që mund ta bëjmë këtë me një AP, Switch, Hub ose të tjerë) ka aftësinë të lidhë dy rrjete të ndryshme me njëri-tjetrin.

router

Siç mund ta shohim në imazh, ekziston një rrjet lokal "10.0.1.0" që krijohet nga routeri dhe arrin njërën nga dy ndërfaqet e tij. Pastaj router-i në ndërfaqen tjetër të tij, ka një rrjet tjetër, me IP-në e tij publike me të cilën mund të lidhet në internet. Funksioni i rutimit është në thelb të shërbejë si një ndërmjetës midis këtyre dy rrjeteve në mënyrë që ata të mund të komunikojnë.

Linux si një router.

Natyrisht, Kernel Linux tashmë ka aftësinë për të bërë "përcjellje", por si parazgjedhje është me aftësi të kufizuara, kështu që nëse duam që Linux-i ynë ta bëjë këtë punë, duhet të shkojmë në skedar.

/proc/sys/net/ipv4/ip_forward

Aty do të zbulojmë se është një skedar që përmban vetëm një "0" zero, ajo që duhet të bëjmë është ta ndryshojmë atë në një "1" për të aktivizuar këtë sjellje. Kjo për fat të keq fshihet kur rifillojmë kompjuterin, për ta lënë të aktivizuar në mënyrë të paracaktuar duhet të përdorim komandën:

sysctl net.ipv4.ip_forward=1

Ose redaktoni atë direkt në skedar /etc/sysctl.conf. Në varësi të shpërndarjes, ky konfigurim mund të jetë gjithashtu në një skedar në  /etj/sysctl.d/.

Si parazgjedhje Linux-i ynë duhet të ketë një tabelë rutimi, e cila zakonisht është konfigurimi i rrjetit tonë lan dhe lidhja me routerin. Nëse duam të shohim këtë kurs mund të përdorim dy komanda:

route -n

o

netstat -nr

Të dy komandat duhet të kthejnë të njëjtën gjë.

Pamja e ekranit i 2014-09-30 18:23:06

Në përgjithësi, kjo konfigurim është e mjaftueshme që Linux-i juaj të shërbejë si Gateway dhe kompjuterat e tjerë mund të lundrojnë nëpër kompjuterin tonë. Tani, nëse duam që Linux-i ynë të lidhë dy ose më shumë rrjete, qoftë lokale apo jo, për shembull, mund të përdorim rrugët statike.

Supozoni se Linux-i im ka dy ndërfaqe rrjeti, e para ka një lidhje interneti rrjeti i së cilës është 172.26.0.0 dhe e dyta (10.0.0.0) ka kompjuterë nga një rrjet tjetër lokal. Nëse duam të përcjellim pako në atë rrjet tjetër mund të përdorim:

route add -net 10.0.0.0 netmask 255.0.0.0 gw 172.26.0.8

Në përgjithësi është:

route add -net REDDESTINO netmask MASCARA gw IPDELLINUX

nëse japim rruga -n pa marrë parasysh nëse ky rrjet ekziston apo jo, ky kurs do të rregullohet në tabelën tonë.

Pamja e ekranit i 2014-09-30 18:31:35

Nëse duam të eleminojmë rutimin e përmendur mund të përdorim

route del -net 10.0.0.0 netmask 255.0.0.0

Iptable.

Në thelb iptables përdoret për filtrimin e paketave, dalëse, hyrëse ose të tjera, kjo e bën atë një mjet të shkëlqyeshëm për të menaxhuar trafikun tonë të rrjetit. Epo, iptables, si dhe na lejon të filtrojmë trafikun e të njëjtit kompjuter, gjithashtu na lejon të filtrojmë trafikun që kalon përmes tij. (Forwarding). Iptables mund të ndahen në tabela, zinxhirë dhe veprime.

  • Bordet:  në thelb mund të ketë dy tabela, filtër, për të filtruar paketat dhe  nat për të përkthyer adresat, domethënë për të lëvizur nga një rrjet në tjetrin.
  • Zinxhirët: Zinxhiri i referohet llojit të trafikut që duam të filtrojmë ose notojmë, domethënë në cilin trafik do të zbatojmë tabelat? dhe ato mund të jenë:  INPUT: Trafiku në hyrje, Dalja: trafiku dalës ose PWRpara: Trafiku që kalon përmes tij, por nuk është lidhja e tij.
  • Mund të shfaqet gjithashtu POSTROUTIM, përdoret për të trajtuar paketën në një mënyrë të caktuar pasi të jetë shpartalluar
  • veprimet: Veprimet janë në thelb veprimi që duhet të kryhet me zinxhirin. Ky veprim mund të jetë Bie, që thjesht shkatërron atë trafik ose PRANONI. që lejon trafikun të bëjë një veprim të tillë.

Rregullat IPTABLES ruhen dhe ekzekutohen në rendin që janë krijuar dhe nëse një rregull fshin një rregull të mëparshëm, rregulli i fundit në rend zbatohet gjithmonë.

Politikat e murit të zjarrit.

Në përgjithësi, muret e zjarrit natyrshëm funksionojnë në dy mënyra:

  1. Lejo të gjithë trafikun përveç, ose
  2. Mos lejoni asnjë trafik përveç ...

Për të zbatuar përdorimin e politikave IPTABLES - ZINXHIRI I VEPRIMIT

Kur vargu paraqet llojin e trafikut (INPUT, OUTPUT, FORWARD, POSTROUTING ...) dhe veprimi është DROP OSE PRANON.

Le të shohim një shembull.

Pamja e ekranit i 2014-09-30 18:53:23

Këtu shohim se në fillim unë isha në gjendje të bëja ping, pastaj i thashë IPTABLES se i gjithë trafiku i OUTPUT ishte B DR or ose nuk lejohej. Atëherë u thashë IPTABLES ta pranonin.

Nëse do të ndërtojmë një firewall nga e para duhet të zbatojmë gjithmonë rregullat e (Mos lejoni asnjë trafik përveç ... Për këtë atëherë ne zbatojmë rregullat

iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP
Nëse zbatohen këto politika, ato nuk do të kenë asnjë lloj lidhjeje
.

Për tu kthyer ne shkruajmë të njëjtën gjë dhe zëvendësojmë DROP me ACCEPT.

Në këtë pikë, meqenëse i gjithë trafiku është i mohuar, ne fillojmë t'u tregojmë IPTABLES tonë se çfarë trafiku mund të ketë.

Sintaksa është:

iptables -A cadena -s ip_orgigen -d ip_destino -p protocolo --dport puerto -j acción

Ku:

Vargu = INPUT, OUTPUT ose FORWARD

origjina_ip = Origjina e paketave, kjo mund të jetë një IP e vetme ose një rrjet dhe në këtë rast duhet të specifikojmë maskën).

destinacioni_ip = ku po shkojnë paketat. kjo mund të jetë një IP e vetme ose një rrjet dhe në këtë rast duhet të specifikojmë maskën).

protokoll = tregon protokollin e përdorur nga paketat (icmp, tcp, udp ...)

port = porti i destinacionit të trafikut.

veprim = BRONI ose PRANONI.

Shembull:

Pamja e ekranit i 2014-09-30 19:26:41

Zbatohen të GJITHA politikat e kufizuara.

Pamja e ekranit i 2014-09-30 19:27:42

Pastaj shtojmë rregullat që të mund të kemi trafik përmes portit 80 HTTP dhe 443 HTTPS, me protokollin TCP. Pastaj porti 53 Zbatohet që klienti DNS të zgjidhë domenet, përndryshe nuk do të lundroni. Kjo funksionon me protokollin udp.

Linja:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Kjo është për shkak të sa vijon: Kur bëni një kërkesë HTTP për shembull, lidheni me portën 80 të serverit, por serveri për të kthyer informacionin duhet të lidhet me ju përmes çdo porte. (Përgjithësisht më i madh se 1024).

Meqenëse të gjitha portet tona janë të mbyllura, kjo nuk do të arrihet nëse nuk hapim të gjitha portet më të larta se 1024 (Ide e keqe). Ajo që thotë kjo është se pranohet i gjithë trafiku hyrës që vjen nga një lidhje që unë e vendosa vetë. Dua të them, një lidhje që në parim e fillova.

Kur vendosni OUTPUT në rregulla, kjo vlen vetëm për pajisjet në fjalë, nëse po përdorim pajisjet tona si një router për të lejuar këto lidhje, ne duhet ta ndryshojmë OUTPUT në FORWARD. Meqenëse trafiku kalon përmes kompjuterit por nuk iniciohet prej tij
Të gjitha këto rregulla fshihen pas rinisjes, kështu që ju duhet të krijoni skripta në mënyrë që ato të fillojnë si parazgjedhje. Por ne do ta shohim këtë në tjetrën

Shpresoj se ju ka pëlqyer ky informacion. Në tjetrën do të flas për NAT, Proxy dhe skriptet për Firewal.


12 komente, lini tuajën

Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   Rogelio pinto dijo

    Kjo është baza që shumë sipërmarrës marrin për të prodhuar firewall-et e tyre, prandaj ka kaq shumë marka të firewall-eve me linux të ngulitur në treg, disa të mira dhe të tjera jo aq shumë.

  2.   Heber dijo

    Artikull i shkëlqyeshëm. Pres pjesën e dytë.

  3.   Milton dijo

    Shpjegim shumë i mirë, më ndihmoi të kuptoj përfaqësuesin e punës sime. Faleminderit

  4.   faustod dijo

    Pershendetje Jlcmux,

    Shkëlqyeshëm, më pëlqeu shumë, kur do të jetë në dispozicion pala tjetër?

    Përshëndetje dhe faleminderit për ndarjen

    1.    @Jlcmux dijo

      Faleminderit per komentin

      Pjesën tjetër e kam dërguar dje, gjatë ditës mendoj se do ta publikojnë.

      Përshëndetje.

  5.   Izrael dijo

    Artikull shumë i mirë mik @ Jlcmux, unë vërtet mësova me të pasi ai sqaroi disa dyshime që unë kisha për ca kohë, nga rruga nuk do të kishit mendjen të ndani librin e burimit të artikullit, atë të Sébastien BOBILLIER, edhe slau2s dhe tani për të parë pjesën e dytë, salu2s.

    1.    @Jlcmux dijo

      Përshëndetje Faleminderit që komentuat Izraelin.

      Rezulton që unë e kam librin në formë fizike. Por këtë lidhje e gjeta në Google Books. http://books.google.com.co/books?id=zxASM3ii4GYC&pg=PA356&lpg=PA356&dq=S%C3%A9bastien+BOBILLIER+Linux+%E2%80%93+Administraci%C3%B3n+del+sistema+y+explotaci%C3%B3n+de+los+servicios+de+red#v=onepage&q=

      Unë mendoj se është e plotë.

  6.   Ariel dijo

    Artikull shumë i mirë, shtoj një pyetje: Cili do të ishte përparësia e përdorimit të linux si një router, nëse ka ndonjë, në lidhje me një pajisje të dedikuar për të? Apo është vetëm për stërvitje? Unë e di se ka distros të dedikuar, por nuk e di nëse do të shpëtojnë PC-të e vjetër apo të sigurojnë më shumë fleksibilitet në konfigurim.

    1.    @Jlcmux dijo

      Epo, mendoj se avantazhet dhe disavantazhet varen nga skenari ku do ta zbatoni këtë. Pse me siguri nuk do të blini një UTM ose diçka të tillë për shtëpinë tuaj? Dhe mbase për një biznes të vogël që nuk mund ta përballojë as atë. Isshtë gjithashtu i mirë si një ushtrim, pasi ju ndihmon të kuptoni të gjithë logjikën e kësaj dhe mund të konfiguroni më mirë një FWall të dedikuar. Përveç kësaj, pothuajse të gjitha këto pajisje me të vërtetë ato që kanë është Linux i ngulitur.

      Përshëndetje.

  7.   Ariel dijo

    Përshëndetje, një pyetje, a mund të krijoni një ndërfaqe "artificiale" në linux për rutim të ngjashëm midis rrjeteve? (stili i gjurmimit të paketave) për të punuar me makina virtuale? p.sh nëse kam eth0 (sepse sigurisht kam një kartë të vetme) a mund të krijoj eth1 për të bërë një rrjet tjetër? Tutor shume i mire!

    1.    i gjallë dijo

      Në Linux mund të krijoni ndërfaqe virtuale, natyrisht. Nëse keni eth0, mund të keni eth0: 0, eth0: 1, eth0: 2 ... etj

  8.   chinoloco dijo

    Pra mirë, faleminderit për ndarjen