Tűzfal beállítása a iptables ubuntu

Miután szerver biztonságos adatközpontok Európában. Nyílt felhő VPS / VDS szerver egy gyors SSD 1 perc alatt!

A legjobb Web Hosting:
- megvédi az illetéktelen hozzáférés egy biztonságos európai adatközpont
- fizet legalább Bitcoin.
- Akkor tegye meg a disztribúciós

- védelmet DDOS támadások
- ingyenes biztonsági mentés
- Üzemidő 99,9999%
- DPC - TIER III
- ISP - TIER I

Támogatás az orosz 24/7/365 dolgozni a jogi és fizikai személyek. Most kell 24 mag és 72 Gb RAM. Kérlek!

A versenyképes áron bizonyítani, hogy a legolcsóbb hosting, ha nem tudja!

A percek alatt, válassza ki a konfiguráció, a fizetés és a CMS egy VPS kész.
Pénzvisszafizetési - 30 nap alatt!

Bankkártyák, elektronikus valuta révén Qiwi terminálok, WebMoney, PayPal, Novoplat és mások.

Tegye fel kérdését támogatás 24/7/365

Megtalálja a választ az adatbázisunkban, és megfelel az ajánlásokat a

belépés

Robusztus tűzfal - az egyik legfontosabb szempont a védelem minden modern operációs rendszer. A legtöbb Linux különböző tûzfaleszközt. Ez a kézikönyv szentelt egyik legnépszerűbb - iptables.

Így iptables - szabványos tűzfal tartalmazza a legtöbb Linux disztribúció alaphelyzetben (nftables helyettesítésére fejlesztették ki azt). Tény, hogy az iptables - a felhasználói felület, hogy ellenőrizzék netfilternek rendszer, amely viszont szabályozza a Linux hálózati verem. iptables le minden bejövő csomag egy sor meghatározott szabályokkal és ezután eldönteni, mi legyen a következő lépés.

Alapvető parancsok iptables

Ez a rész tartalmazza az alapvető parancsokat, mellyel egy komplex szabályrendszer és iptables kezelni a felületet egészére.

Emlékezni. iptables parancsot kell futtatni root-jogosultsággal. Ez azt jelenti, hogy meg kell tennie az alábbi:

  • jelentkezzen be root felhasználó;
  • su vagy sudo -i, hogy bővítse a hajgyökérhüveiybői;
  • kezdeni minden parancsot sudo (ajánlott módszer az Ubuntu).

Ez a kézikönyv használják az utóbbi lehetőséget.

sudo iptables -L
Lánc INPUT (politikai ACCEPT)
célozni prot opt ​​forrás cél
Lánc FORWARD (politika ACCEPT)
célozni prot opt ​​forrás cél
Lánc OUTPUT (politika ACCEPT)
célozni prot opt ​​forrás cél

Mint látható, a lista tartalmazza a három alapértelmezett láncok (INPUT, OUTPUT és a FORWARD), amelyek mindegyike az alapértelmezett politika (pillanatában ACCEPT). Azt is látni az oszlopok neveit. De ez a lista nem magukat a szabályokat, mert Ubuntu nélkül alapértelmezett szabályokat.

sudo iptables -S
-P INPUT ACCEPT
-P ELŐRE ACCEPT
-P OUTPUT ACCEPT

Megismételni a konfigurációt, akkor csak be sudo iptables elején minden eredmény sorban. (A konfigurációtól függően ez az eljárás lehet egy kicsit bonyolultabb, ha felhívod, és ha a szabályok lehetővé teszik az aktuális kapcsolat, még nincs telepítve, akkor nem kell beállítani politikai DROP).

Ahhoz, hogy állítsa vissza a jelenlegi szabályok (ha van ilyen), típus:

sudo iptables -F

Ismét ebben a szakaszban, az alapértelmezett politika nagyon fontos, mert ez nem fogja megváltoztatni a segítségével az előző parancs ellenére, hogy minden szabályt eltávolításra kerül a lánc.

Mielőtt visszaállítja a szabály, ha távolról kapcsolódik, győződjön meg arról, hogy a láncok bemeneti és kimeneti beállítása ACCEPT politikát. Ez úgy történik, az alábbiak szerint:

sudo iptables -P INPUT ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -F

Szabályok létrehozásával, amelyek lehetővé teszik a távoli kapcsolatot, akkor meg DROP politikát. Tehát, folytassa közvetlenül a szabályok megalkotását.

Létrehozása szabályok iptables

Mint már említettük, ez az útmutató összpontosít foglalkozik az INPUT lánc, mivel ez felelős a bejövő forgalmat. Először meg kell vizsgálni a már említett szabály - egy szabályt, amely lehetővé teszi, hogy a jelenlegi SSH-kapcsolat.

Úgy néz ki, mint ez:

sudo iptables -A INPUT -m conntrack --ctstate LÉTRE, KAPCSOLÓDÓ -j ACCEPT

Persze előfordulhat, hogy eleinte úgy tűnik, hihetetlenül nehéz; Ahhoz, hogy megértsük ezt a szabályt, lásd annak összetevői:

Ezt a szabályt kell helyezni az elején, hogy győződjön meg arról, hogy a meglévő kapcsolatot azonos szabályok venni, és ki az a kör, mielőtt eléri a DROP szabályt.

Kérjen szabályok listáját, lehetséges, hogy a változásokat:

sudo iptables -L
Lánc INPUT (politikai ACCEPT)
célozni prot opt ​​forrás cél
ACCEPT összes - bárhol bárhol ctstate KAPCSOLÓDÓ, LÉTRE
Lánc FORWARD (politika ACCEPT)
célozni prot opt ​​forrás cél
Lánc OUTPUT (politika ACCEPT)
célozni prot opt ​​forrás cél

Miután megismerte az alapvető szintaxis, hozzon létre több szabály, a gazda kapcsolat.

Az elfogadása más fontos kapcsolatok

Iptables korábban kapott egy parancsot, hogy ne ejtse az összes aktuális kapcsolat, valamint hogy az összes kapcsolatot ezekkel kapcsolatos. Most kell, hogy hozzon létre egy szabályt, amely fogadja a kapcsolatokat, amelyek nem felelnek meg a fenti kritériumoknak.

Hagyja nyitva két port: port SSH (ez a bemutató az alapértelmezett port - 22, ha az érték megváltozott, mindenképpen adja meg az új értéket); Ezen kívül azt feltételezzük, hogy ezen a web szerver fut 80-as port számítógép alapértelmezett (ne adjunk hozzá ezt a szabályt, ha nem).

Így a sort kell használni, hogy az ilyen szabályok a következők:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Mint látható, nagyon hasonlít az első szabály; talán még egyszerűbb szerkezetű. Új lehetőségek:

  • -ptcp. Ez az opció csomagok TCP (stream-alapú protokoll, amelyet az alkalmazások többsége, mert ez biztosítja a megbízható kapcsolat).
  • -dport. Ez a lehetőség akkor elérhető, ha a -p tcp zászlót. Ez jelzi a bejövő port, amely egyezik a port csomagot. Az első szabály lehetővé teszi, hogy a TCP csomagokat szánt 22-es port, a második szabály visz TCP forgalmat fog 80-as port.

Most létre kell hoznunk egy másik szabály ACCEPT, hogy megbizonyosodjon arról, hogy a szerver megfelelően működik. A szolgáltatások általában kölcsönhatásba cseréje révén csomagokat; Ehhez az általuk használt hálózati Pszeudo-gyűrű csatlakozás - az úgynevezett loopback eszköz, amely irányítja a forgalom vissza a forráshoz, és nem más számítógépeken.

Azaz, ha a szolgáltatás az 1. Létre kell hozni egy a szolgáltatással kapcsolatban 2, figyelje a kapcsolatokat a port 4555, a szolgáltatás 1 küld egy csomagot a kikötőbe 4555 loopback eszközt. Ez a viselkedés lehetővé kell tenni, mert ez egy fontos feltétele a helyes munkája sok program.

Ehhez adjuk hozzá a következő szabály:

sudo iptables -I INPUT 1 -i lo -j ACCEPT

Ez egy kicsit más, mint a korábbi szabályok; úgy vélik, hogy részletesebben:

  • -IINPUT 1. -I mondja iptables beszúrni (insert) szabályt. Ez a zászló eltér a zászló -A (amely egyszerűen teszi a szabály a végén a lánc); rámutat a láncot, ahol szeretné, hogy a szabály, és a helyét a szabály azt. Ebben az esetben az a szabály kell beilleszteni a legelején az INPUT lánc, úgy, hogy minden szabályt feljebb tolja. Ezt a szabályt kell helyezni elején a lánc, mivel ez az egyik alapvető szabályait, és nem függ mások.
  • -ilo. A szabályok komponens továbbítja a csomagokat használó lo interfész ( «lo» - egy másik nevet a hurokeszközön). Ez azt jelenti, hogy minden csomag, amely használja ezt a felületet kell elfogadni.

sudo iptables -S
-P INPUT ACCEPT
-P ELŐRE ACCEPT
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate KAPCSOLÓDÓ, LÉTRE -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

Szabályok létrehozásával DROP

Tehát abban a pillanatban jött létre 4 szabályokat, amelyek figyelembe csomagokat alapján bizonyos feltételeknek. Azonban most a szerver még mindig nem zárja el a csomagok.

Ha a csomag áthalad az INPUT láncban, és nem felel meg a négy szabályok, az alapértelmezett házirend (ACCEPT) kerül sor, amely amúgy is megteszi a csomagot. Most meg kell változtatni.

Ezt meg lehet tenni két módon, ami igen jelentős különbség.

Az első út - szerkeszteni az alapértelmezett politikája az INPUT láncban; Ehhez típusa:

sudo iptables -P INPUT DROP

Ez a politika követését és vidd csomagot, amely nem felel meg a szabályoknak az INPUT láncban. Ennek egyik következménye, tervezés eredménye, hogy visszaáll, még a visszaállítás után csomagokat szabályzat magukat.

Természetesen ez növeli a biztonsági szintet a szerver; Azonban ez vezethet súlyos következményekkel jár, ha a felhasználónak nincs más módja annak, hogy csatlakozni a szerverhez. Leggyakrabban, web hosting szolgáltatók kínálnak web-alapú konzol kapcsolódni a szerverhez esetén az ilyen problémákat. Ez a konzol működik, mint egy virtuális LAN kapcsolatot, mert az iptables nem reagálnak rá.

Tudod, hogy a szerver automatikusan megszakítja a kapcsolatot, ha a szabályokat eltávolítjuk. Ez lehetővé teszi a szerver sokkal biztonságosabb és megközelíthetetlen. Ez azt is jelenti, hogy tudod, hogy a szabályok a végén a lánc, míg az összes nem kívánt csomagokat eldobjuk.

Egy alternatív megközelítés a következő: a végén a lánc kell, hogy a szabály, hogy kiürítse az összes nem megfelelő csomagot, miközben a politika ACCEPT.

Hogy visszatérjen a lánc INPUT ACCEPT politika típusa:

sudo iptables -P INPUT ACCEPT

Most felveheti a végén a lánc szabály, hogy csökkenne az összes csomagot nem megfelelőek:

sudo iptables -A INPUT -j DROP

Normál üzemi körülmények között, az eredmény nem lesz pontosan ugyanaz, mint amikor a DROP politikát. Ez a szabály visszaállítja minden csomagot, amely eléri azt, hogy megakadályozza, hogy a csomag szerver, nem tartják be a szabályokat.

Alapvetően, a második megközelítést alkalmazzák, ha szükséges, hogy ACCEPT politika, amely úgy forgalom. Azaz, még ha minden a szabályok visszaállításához, a felhasználó hozzáférhet a gép a hálózaton. Ez a megközelítés lehetővé teszi, hogy végre az alapértelmezett művelet, nem kell változtatni a politikát kell alkalmazni, hogy az üres karakterlánc.

Természetesen ez azt is jelenti, hogy minden szabályt szeretne hozzáadni, hogy a végén a lánc újra be kell állítani, mielőtt a szabályt. Ezt meg lehet tenni azáltal, hogy megszünteti vagy átmenetileg visszaáll szabály:

sudo iptables -D INPUT -j DROP
sudo iptables -A INPUT novoe_pravilo
sudo iptables -A INPUT -j DROP

vagy az egy új szabályt a láncban végén (de előtte a szabály újraindítás) megadásával sorszám. Szabály hozzáadásához a sorban 4, adja meg:

sudo iptables -I INPUT 4 novoe_pravilo

Ha sok szabályok kiszámításához sorszám kézzel problematikus; ilyen esetben iptables száma sorban:

sudo iptables -L --line-számok
Lánc INPUT (politikai DROP)
num cél prot opt ​​forrás cél
1 ACCEPT összes - bárhol bárhová
2 ACCEPT összes - bárhol bárhol ctstate KAPCSOLÓDÓ, LÉTRE
3 ACCEPT tcp - bárhol bárhol tcp DPT: ssh
4 ACCEPT tcp - bárhol bárhol tcp DPT: http
Lánc FORWARD (politika ACCEPT)
num cél prot opt ​​forrás cél
Lánc OUTPUT (politika ACCEPT)
num cél prot opt ​​forrás cél

Ez biztosítja, hogy a szabályt vezették be a sort.

Mentése iptables konfiguráció

Alapértelmezésben az összes nem mentett szabályok érvényesek a következő újraindításig a szerver; újraindítása után közvetlenül mentett szabályokat fog veszni.

Bizonyos esetekben hasznos, mivel lehetővé teszi a felhasználóknak, hogy véletlenül bezárják magukat, hogy hozzáférjen a szerver. Azonban a legtöbb esetben sokkal kényelmesebb, hogy fenntartsák a szabályokat és be őket az indításkor.

Ezt meg lehet tenni több módon; A legkönnyebb ezek - használja az iptables-perzisztens csomag, amely letölthető a tárban alapértelmezett Ubuntu:

sudo apt-get update
sudo apt-get install iptables-perzisztens

A telepítés során a csomag meghatározza e tartani a jelenlegi szabályokat tovább kell automatikus betöltése; Ha a jelenlegi szabályok már tesztelték (lehetővé teszi, hogy hozzon létre SSH-kapcsolat), és megfelelnek a követelményeknek, akkor lehet menteni.

Elcsomagolhatja kérdezi, hogy tartani a meglévő szabályokat kell IPv6 (ezek segítségével állíthatjuk be ip6tables segédprogram, amely figyeli a bejövő IPv6 csomagokat ugyanúgy).

Befejezése után a telepítés az új szolgáltatás lesz az úgynevezett iptables-perzisztens, ami futni fog, ha a szerver újraindul, és megújítja a szabályokat.

Ez az útmutató segít a tűzfalat szerint a felhasználó igényeinek. Persze, van sok hasonló alkalmazással, és néhány közülük könnyebb lehet használni; Mégis, iptables - az egyik legjobb eszköz, ha csak azért, mert azt mutatja, néhány alapvető netfilternek szerkezetét és építeni sok rendszer.

Kapcsolódó cikkek