Tässä viestissä yritetään selventää hieman siitä, miten verkot toimivat ja kuinka tehdä Linux-laitteistostamme reititin, joka tekee verkostostamme hieman turvallisemman, joko kotona tai jopa yrityksessä. Joten aloitetaan asia:
Reititys ja suodatus
Jos haluat puhua ja ymmärtää reitityksestä, voimme ensin määrittää, mikä on reitittimen rooli? Tätä varten voimme sanoa, että reititin voi verkon luomisen ja yhteyden sallimisen lisäksi muihin laitteisiin (tietäen, että voimme tehdä tämän AP: llä, Switchillä, Hubilla tai muilla) myös kyvyn yhdistää kaksi eri verkkoa toisiinsa.
Kuten kuvasta näkyy, reititin on luonut paikallisen verkon "10.0.1.0", joka saavuttaa toisen sen kahdesta rajapinnasta. Sitten reitittimellä on toisella käyttöliittymällä toinen verkko, jonka julkisella IP-osoitteella se voi muodostaa yhteyden Internetiin. Reititystoiminnon on periaatteessa toimittava välittäjänä näiden kahden verkon välillä, jotta ne voivat kommunikoida.
Linux reitittimenä.
Luonnollisesti Linux-ytimellä on jo kyky suorittaa "edelleenlähetys", mutta se on oletusarvoisesti pois käytöstä, joten jos haluamme Linuximme tekemään tämän työn, meidän on mentävä tiedostoon.
/proc/sys/net/ipv4/ip_forward
Sieltä huomaamme, että se on tiedosto, joka sisältää vain nollan "0". Meidän on muutettava se yhdeksi "1" aktivoidaksemme tämän toiminnan. Tämä valitettavasti poistetaan, kun käynnistämme tietokoneen uudelleen. Jos haluat jättää sen oletusarvoisesti aktivoituksi, meidän on käytettävä komentoa:
sysctl net.ipv4.ip_forward=1
Tai muokkaa sitä suoraan tiedostossa /etc/sysctl.conf-. Jakelusta riippuen tämä kokoonpano voi olla myös tiedostossa /etc/sysctl.d/.
Oletusarvon mukaan Linuxillamme on oltava reititystaulukko, joka yleensä on LAN-verkkomme kokoonpano ja yhteys reitittimeen. Jos haluamme nähdä tämän reitityksen, voimme käyttää kahta komentoa:
route -n
o
netstat -nr
Molempien komentojen pitäisi palauttaa sama.
Yleensä tämä kokoonpano riittää Linuxille toimimaan yhdyskäytävänä ja muut tietokoneet voivat navigoida tietokoneemme läpi. Jos nyt haluamme Linuximme yhdistävän kaksi tai useampaa verkkoa, olivatpa ne paikallisia vai ei, voimme käyttää staattisia reittejä.
Oletetaan, että Linuxissani on kaksi verkkoliitäntää, ensimmäisessä on Internet-yhteys, jonka verkko on 172.26.0.0, ja toisessa (10.0.0.0) on joitain tietokoneita toisesta lähiverkosta. Jos haluamme reitittää paketit toiseen verkkoon, voimme käyttää:
route add -net 10.0.0.0 netmask 255.0.0.0 gw 172.26.0.8
Yleensä se on:
route add -net REDDESTINO netmask MASCARA gw IPDELLINUX
jos annamme reitti -n riippumatta siitä, onko tämä verkko olemassa vai ei, tämä reititys korjataan taulukossamme.
Jos haluamme poistaa mainitun reitityksen, voimme käyttää sitä
route del -net 10.0.0.0 netmask 255.0.0.0
iptables.
Pohjimmiltaan iptablesia käytetään pakettien, lähtevien, saapuvien tai muiden suodattamiseen, mikä tekee siitä erinomaisen työkalun verkkoliikenteen hallintaan. No, iptables, aivan kuten se antaa meidän suodattaa saman tietokoneen liikennettä, se myös suodattaa sen läpi kulkevan liikenteen. (Edelleenlähetys). Iptable voidaan jakaa taulukoihin, ketjuihin ja toimintoihin.
- Taulut: periaatteessa taulukoita voi olla kaksi, suodattaa, suodattaa paketteja ja NAT kääntää osoitteita, eli siirtyä verkosta toiseen.
- Ketjut: Ketju viittaa liikennetyyppiin, jonka haluamme suodattaa tai uida, eli mihin liikenteeseen aiomme soveltaa taulukoita? ja ne voivat olla: INPUT: Saapuva liikenne, LÄHTÖ: lähtevä liikenne tai ETEENPÄIN: Liikenne kulkee sen läpi, mutta se ei ole sen oma yhteys.
- Se voi myös näkyä JÄLJENNYS, Käytetään paketin käsittelyyn tietyllä tavalla sen jälkeen, kun se on reititetty.
- toimet: Toiminnot ovat periaatteessa ketjun kanssa suoritettava toiminta. Tämä toiminta voi olla DROP joka vain tuhoaa liikenteen tai HYVÄKSYÄ. jonka avulla liikenne voi tehdä kyseisen toiminnon.
IPTABLES-säännöt tallennetaan ja suoritetaan niiden luomisjärjestyksessä, ja jos sääntö poistaa edellisen säännön, järjestyksessä käytetään aina viimeistä sääntöä.
Palomuurikäytännöt.
Palomuurit toimivat yleensä kahdella tavalla:
- Salli kaikki liikenne paitsi tai
- Älä salli liikennettä paitsi ...
Käytä käytäntöjä käyttämällä IPTABLETIT - P-TOIMINTAKETJU
Jos merkkijono edustaa liikennetyyppiä (INPUT, OUTPUT, FORWARD, POSTROUTING ...) ja toiminto on DROP OR ACCEPT.
Katsotaanpa esimerkkiä.
Täällä näemme, että aluksi pystyin pingata, sitten sanoin IPTABLESille, että kaikki OUTPUT-liikenne oli PUDOTETTU tai sitä ei sallittu. Sitten käskin IPTABLESia hyväksymään se.
Jos aiomme rakentaa palomuurin tyhjästä, meidän on aina sovellettava sääntöjä (Älä salli liikennettä paitsi ... Tätä varten käytämme sääntöjä
iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P Eteenpäin
Palataksemme kirjoitamme saman ja korvataan DROP sanalla HYVÄKSY.
Tässä vaiheessa, koska kaikki liikenne on estetty, alamme kertoa IPTABLE-tiedostoille, mitä liikennettä sillä voi olla.
Syntaksi on:
iptables -A cadena -s ip_orgigen -d ip_destino -p protocolo --dport puerto -j acción
Missä:
Merkkijono = INPUT, Output tai FORWARD
origin_ip = Pakettien alkuperä, tämä voi olla yksi IP tai verkko, ja tässä tapauksessa meidän on määritettävä peite).
määränpää_ip = minne paketit ovat menossa. tämä voi olla yksi IP tai verkko, ja tässä tapauksessa meidän on määritettävä peite).
protokolla = osoittaa pakettien käyttämän protokollan (icmp, tcp, udp ...)
portti = liikenteen kohdesatama.
toiminta = DROP tai HYVÄKSY.
esimerkiksi:
KAIKKI rajoitetut käytännöt ovat voimassa.
Sitten lisätään säännöt voidakseen saada liikennettä porttien 80 HTTP ja 443 HTTPS kautta TCP-protokollalla. Sitten portti 53 DNS-asiakkaalle käytetään ratkaisemaan toimialueet, muuten et navigoi. Tämä toimii udp-protokollan kanssa.
Linja:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Tämä johtuu seuraavista syistä: Kun teet esimerkiksi HTTP-pyynnön, muodostat yhteyden palvelimen porttiin 80, mutta palvelimen on palautettava tiedot yhteyden muodostamiseksi sinulle minkä tahansa portin kautta. (Yleensä suurempi kuin 1024).
Koska kaikki satamamme ovat kiinni, tätä ei voida saavuttaa, elleivät avaa kaikkia yli 1024: n portteja (huono idea). Tämä sanoo, että kaikki saapuva liikenne, joka tulee itsestäni muodostamasta yhteydestä, hyväksytään. Tarkoitan, yhteyden, jonka aloitin periaatteessa.
Toivottavasti pidit näistä tiedoista. Seuraavassa puhun NAT: sta, välityspalvelimesta ja Firewalin komentosarjoista.
Tämä on perusta, jonka monet yrittäjät käyttävät omien palomuuriensa valmistamiseen, ja siksi markkinoilla on niin monia tuotemerkkejä sulautetulla linuxilla varustettuja palomuureja, jotkut hyvät ja toiset eivät niin paljon.
Erinomainen artikkeli. Odotan innolla toista osaa.
Erittäin hyvä selitys, se auttoi minua ymmärtämään työni valtakirjan. Kiitos
Hei Jlcmux,
Erinomainen, pidin siitä todella, milloin toinen osapuoli on käytettävissä?
Terveisiä ja kiitoksia jakamisesta
Kiitos kommentista.
Lähetin toisen osan eilen, päivän aikana luulen, että he julkaisevat sen.
Tervehdys.
Erittäin hyvä artikkeliystävä @ Jlcmux, opin todella hänen kanssaan, koska hän selvitti joitain epäilyjä, joita minulla oli jonkin aikaa, muuten ei kannata jakaa artikkelin lähdekirjaa, Sébastien BOBILLIERin kirjaa, hyvin slau2s ja nyt nähdäksesi 2. osan, salu2s.
Hei Kiitos, kun kommentoit Israelia.
On käynyt ilmi, että minulla on kirja fyysisessä muodossa. Mutta löysin tämän linkin Google-kirjoista. 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=
Luulen, että se on täydellinen.
Erittäin hyvä artikkeli, lisätään kysymys: Mikä olisi linuxin käytön etuna reitittimenä, jos sellaista on, suhteessa sille omistettuun laitteistoon? Vai onko se vain liikuntaa varten? Tiedän, että on olemassa erillisiä distroja, mutta en tiedä, onko niiden tarkoitus pelastaa vanhat tietokoneet vai tarjota joustavuutta kokoonpanossa.
Luulen, että edut ja haitat riippuvat tilanteesta, jossa aiot toteuttaa tämän. Miksi et todellakaan aio ostaa taloon UTM: ää tai vastaavaa? Ja ehkä pienyritykselle, jolla ei ole varaa siihen. Se on myös hyvä harjoitus, koska se auttaa sinua ymmärtämään kaiken logiikan ja voit paremmin määrittää erillisen FWallin. Tämän lisäksi melkein kaikilla näillä laitteilla on todella sulautettu Linux.
Tervehdys.
Hei, kysymys, voitko luoda "keinotekoisen" käyttöliittymän Linuxiin samanlaista reititystä varten verkkojen välillä? (pakettien jäljitystyyli) toimimaan virtuaalikoneiden kanssa? esim. jos minulla on eth0 (koska tietysti minulla on yksi kortti), voinko luoda eth1: n toisen verkon luomiseksi? Erittäin hyvä tutor!
Linuxissa voit tietysti luoda virtuaalisia rajapintoja. Jos sinulla on eth0, voit käyttää eth0: 0, eth0: 1, eth0: 2 ... jne
Niin hyvä, kiitos jakamisesta