Verkon suojaaminen Iptables - Proxy - NAT - IDS: OSA 2

Että Edellinen viesti Näimme IPTable-kokoonpanon toimivan palomuurina. Nyt voimme nähdä, miten nämä komentosarjat luodaan niin, että säännöt suoritetaan automaattisesti järjestelmän käynnistyessä, ja kuinka voimme poistaa tai lopettaa nämä säännöt hetkeksi.

Ennen kuin teet komentosarjan ja näytämme sinulle, miltä se näyttää, puhutaan vähän NAT: sta ja käsitteestä, mitä haluamme tehdä tällä laitteella.

NAT ja esimerkin konteksti.

Kun puhumme NAT: sta, voimme sekoittaa tämän reititykseen, koska molemmat vastaavat kahden eri verkon yhdistämisestä toisiinsa. Todellinen ero on, että reititystä käytetään siirtymään paikallisesta verkosta toiseen ja tämä toinen verkko voi muodostaa yhteyden reitittimeen ja mennä Internetiin.

Kun puhumme NAT: sta, puhumme pakettien reitittämisestä paikallisesta tai yksityisestä verkosta julkiseen verkkoon tai Internetiin. Se tekee tämän peittämällä paketit asettamalla julkisen IP-osoitteen, jolla se menee Internetiin. Toisin sanoen, emme tarvitse reititintä, koska julkinen IP on suoraan GNU / Linux-tietokoneen omistuksessa.

NAT

Työskentelemme tämän iskulauseen kanssa, että käytämme Linuxia reitittimenä / palomuurina Internetiin lähiverkosta. Mutta tässä voi näkyä kaksi skenaariota.

  • Että Linux on palveluntarjoajan reitittimen ja paikallisen verkon välillä.

Tässä tapauksessa reitittimen ja Linuxin välillä olisi verkko, ja Linuxin ja paikallisen verkon välillä olisi toinen erilainen verkko. Tämä tarkoittaa, että reitittimemme ei tarvitse tehdä NAT: ta sellaisenaan, yksinkertaisella liikenteen reitityksellä, kuten selitetään Edellinen viesti Se olisi hyvä.

  • Että Linuxillamme on liitäntä paikalliseen verkkoon ja toisen liitännän kautta se vastaanottaa suoraan julkisen IP: n, jolla se navigoi.

Tämä tarkoittaa, että Linuxin on tehtävä NAT, jotta paketit pääsevät Internetiin.

Tämän pienen laboratorion tarkoituksia varten sanomme sitten, että Linuximme saa julkisen IP: n suoraan ja pystyy siten testaamaan NAT: n vaikutuksia.

NAT: n tekemiseksi käytämme sitten syntaksia

 iptables -t nat -A JÄLJITTELY -O eth1 -j MASQUERADE

Missä eth1 on käyttöliittymä, johon vastaanotamme julkisen IP: n, eli missä käytämme Internetiä.

MASQUERADE-protokollaa käytetään, kun IP on julkinen, mutta se voi vaihdella ajan myötä (dynaaminen). Muuten voimme käyttää SNAT-to-source ip: tä

Iptables-komentosarjan luominen

Oletetaan sitten, että: 172.26.0.0 on paikallinen verkko ja 81.2.3.4 on julkinen IP, jolla käytämme Internetiä. (se on staattinen ip). Minulla on liitännät eth0 (paikallinen verkko)

eth1 (julkinen verkko).

Se koostuu periaatteessa komentosarjan luomisesta, jota voidaan kutsua esimerkiksi tiedostosta /etc/init.d/firestop. ja tästä skriptistä voimme aloittaa, pysäyttää tai tarkistaa kokoonpanomme tilan, aivan kuten minkä tahansa järjestelmän demonin kanssa.

Oletetaan, että IPTABLES-sääntöni OVAT:

#! / bin / bash # Kotini palomuuri. # Tiedostonimi / etc / firewall_on # Kirjoittaja Jlcmux Twitter: @Jlcmux # # Peruskäytäntö. iptables -P INPOUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP # #NAT Internetin jakamiseksi eth0: sta eth1: ään iptables -t nat -A POSTROUTING -O eth1 -j SNAT - lähteeseen 81.2.3.4
# # Salli iptables-laitteeni käynnistämät saapuvat yhteydet - Eteenpäin -m-tila - valtio PERUSTETTU, LIITTYVÄ -j HYVÄKSY # # Valtuutetun lähtevän liikenteen iptables -A Eteenpäin -i eth0 -o eth1 -p tcp --portti 80 -j HYVÄKSY iptables -A ETEEN -i eth0 -o eth1 -p tcp --port 443 -j HYVÄKSY Iptables -A ETEEN -i eth0 -o eth1 -p udp --portti 53 -j HYVÄKSY
Älä unohda antaa suoritusoikeuksia

Selitys:

Skripti tekee pohjimmiltaan seuraavat:

  1. Rajoita ensin kaikki navigointi, yhteydet ja liikenne. (Palomuurin peruskäytännöt)
  2. Luo sitten NAT kohdekohteella eth1. mikä osoittaa, että meillä on staattinen julkinen ip «81.2.3.4»
  3. Se avaa portit, jotka ovat tarpeen minun aloittamieni yhteyspakettien vastaanottamiseksi.
  4. Hyväksyy lähtevän HTTP-, HTTPS- ja DNS-liikenteen.
Säännöt on tarkoitettu FORWARD-liikenteelle, koska käytämme Linuxia reitittimenä, joten käytäntöjä käytetään liikenteeseen, joka kulkee Linuxin kautta, toisin sanoen se toimii välittäjänä. Tämä tarkoittaa sitä, että Linux ei pysty oikeastaan ​​navigoimaan tai vastaanottamaan tietoja suoraan. Se koskee vain siihen kytkettyjä tietokoneita, mutta ei itseään

Jos haluamme käyttää laitteitamme navigointiin, meidän on toistettava rivit ja vaihdettava FORWARD-asetukseksi INPUT tai OUTPUT tarvittaessa.

Peruuta komentosarja.

Nyt aiomme luoda komentosarjan, joka ohittaa kaikki yllä olevat ja jättää tietokoneen puhtaaksi kaikesta. (Testausta varten tai haluamme vain sammuttaa palomuurin).

#! / bin / bash # Kotini palomuuri. # Tiedostonimi / etc / firewall_off # Kirjoittaja: Jlcmux Twitter: @Jlcmux # #Iptables-sääntöjen poistaminen -F # # Oletuskäytäntöjen soveltaminen (kaikki liikenne hyväksytty) iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT

Automatisointi.

Nyt meidän on luotava komentosarja sisälle /etc/init.d/ ja palvelu käynnistyy automaattisesti, ja voimme hallita sitä mukavammalla tavalla.

#! / bin / bash # Kotini palomuuri. # Tiedostonimi /etc/init.d/ palomuuri # Kirjoittaja Jlcmux Twitter: @Jlcmux tapaus $ 1 alussa) / etc / firewall_on ;; stop) / etc / firewall_off ;; tila) iptables -L ;; *) echo "Väärä syntaksi. Voimassa = /etc/init.d/ palomuurin käynnistys | lopeta | tila ;; esac

Selitys:

Tämä viimeinen käsikirjoitus, jonka laitimme /etc/init.d/ nimen kanssa palomuuri. Joten jos haluamme hallita palomuuria, voimme käyttää komentoa /etc/init.d/ palomuuri käynnistyy. Samalla tavalla voimme pysäyttää sen tai nähdä tilan.

Nyt aiomme muokata tiedostoa /etc/rc.local ja laitamme jotain: /etc/init.d/ palomuuri käynnistyy aloittaa järjestelmästä.

Yhtä hyvin. Tämä on toinen osa. Toivon, että se tuo jotain teille kaikille. Seuraavassa näemme välityspalvelimen ja IDS: n.


7 kommenttia, jätä omasi

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   metsästäjä dijo

    Jos käytät Debiania, repossa on paketti (iptables-persistent), joka tekee tarkalleen sen, se tyhjentää nykyiset säännöt tiedostoissa /etc/iptables/rules.v4 tai v6 sen mukaan, mitä käytät, ja soveltaa niitä sitten sinuun kun nostat järjestelmää.

  2.   OCZ dijo

    Käytännössä tavanomaisen iptables-palomuurin kokoonpanon puhdistaminen (ja NAT: n käyttö ei olisi niin minun näkökulmastani), useimmissa tapauksissa sääntöjen huuhtelu ja oletuskäytäntöjen palauttaminen ACCEPT: iin riittää.
    Mutta teoriassa, ja sikäli kuin tiedän, sinun on lisäksi tyhjennettävä ei-oletuskielet ja nollattava laskurit. Suoritettavat toimet pitäen mielessä, että "suodattimen" lisäksi on muita taulukoita (tätä varten on pakko lukea tiedosto "/ proc / net / ip_tables_names").

    Muuten, ortodoksisuus sanoo, että palomuurin on oltava jo ennen verkon toimintaa. En tiedä miten se saavutetaan muissa Linux-järjestelmissä, mutta Debian-tyypissä komentosarja voidaan mukauttaa ja asettaa hakemistoon "/etc/network/if-pre-up.d/".

    Hyvä palomuuri kaikille. 😉

  3.   NauTiluS dijo

    Hei, viesti on erittäin hyvä. Olen lukenut koko 2 nidettä.

    Odotetaan seuraavaa 🙂

  4.   anonyymi dijo

    Kysymys tietämättömyydestäni, jatkamme iptablesin kanssa, mutta useilla ytimen versioilla on nftable-tiedostoja, testaan ​​jo, kysymykset ovat, onko nftables jotain beeta suhteessa iptable-tiedostoihin? Jatketaanko iptablettien käyttöä paljon pidempään?

    Kiitos.

    1.    yukiteru dijo

      nftables sisältää kaikki iptable-, ip6table-, arptable- ja ebtable-toiminnot, jotka kaikki käyttävät uutta infrastruktuuria sekä ytimessä että käyttäjäalueessa, mikä takaa paremman suorituskyvyn ja paremman toiminnallisuuden. nftables korvaa iptables ja kaikki muut mainitut työkalut, mutta ei toistaiseksi, ainakaan ennen kuin nftable-tiedostojen käyttö sinänsä on laajempaa.

  5.   Alexander dijo

    erittäin hyvä viesti, halusin lukea lisää, koska se on hyvin selitetty .. terveiset kiitos suuren panoksen

  6.   Avrah dijo

    Hei! Erittäin hyvä molemmat postit.
    Voit osallistua tämän osan loppuun:

    "Nyt aiomme muokata /etc/rc.local -tiedostoa ja laittaa jotain: /etc/init.d/firestop start niin, että se alkaa järjestelmästä."

    Lisää tämä osoitteeseen rc.local.

    jos [-x /etc/init.d/ palomuuri]; sitten
    /etc/init.d/ palomuuri käynnistyy
    fi

    Mikä tarkoittaa, että jos "palomuurilla" on suoritusoikeudet, suorita se, jos ei.
    Jos haluat, että "palomuuri" ei käynnisty, sinun on vain poistettava käyttöoikeudet.

    Esimerkiksi: chmod + x /etc/init.d/ palomuuri
    jotta se toimisi jokaisella käynnistyksellä tai ...
    chmod -x /etc/init.d/ palomuuri
    poistaa sen kokonaan käytöstä.

    Tervehdys!