Debian konfiguráció és menedzsment iptables (ellenőrzés)

Íme példamutatás a különböző helyzetekben. Mintegy strukturuIPTABLES. menedzsment, építészet, stb - lásd a Linux ciklus: iptables - útmutató: 1. rész - IPTABLES bázis.

A beállítás végezni:

# Lsb_release -a
No LSB modulok állnak rendelkezésre.
Forgalmazó ID: Debian
Leírás: Debian GNU / Linux 6.0.7 (squeeze)
Release: 6.0.7
Codename: présel

Készítsen beállításokat iptables fájlt:

Hagyjuk, hogy fut:

# Chmod + x /etc/network/if-up.d/iptables.conf

FONTOS: Egyes beállítások két kötőjellel - bár a példákban úgy jelennek meg, mint egy! Fontos, hogy ha a szabályok másolása közvetlenül a blog:

- - az állami
- - dport
- - tcp-flags
- - utasítsa el-with

Hozzáteszi,

# Kérés elérési utat a futtatható IPTABLES
IPTABLES = '/ sbin / iptables'

# Törlés a meglévő szabályokat az összes asztal és láncok
$ IPTABLES -F
$ IPTABLES -X

# Kérés alapértelmezett szabályok (ha nem többet dolgozik, mint egy szabály a láncban - működnek a szabály itt)
$ IPTABLES -P INPUT DROP
$ IPTABLES -P OUTPUT ACCEPT
$ IPTABLES -P FORWARD ACCEPT

# Az összes forgalmat a loopback interfészt lo0

# Lehetővé teszi a forgalom már telepítve van, és új kapcsolatokat kapcsolatok:
$ IPTABLES -A INPUT -m state -országhatár KAPCSOLÓDÓ, LÉTRE -j ACCEPT

# Bejövő SSH-n keresztül eth0
$ IPTABLES -A INPUT -p tcp -i eth0 -dport 22 -j ACCEPT

Most vizsgáljuk meg több előírásoknak.

Három típusú táblák használt iptables:

Ennek megfelelően, mi érdekli a harmadik tábla Filter. Ebben a táblázatban három beépített lánc:

  1. INPUT - a bejövő csomagokat.
  2. Előre -, hogy áthaladjon a gép a másikra.
  3. Kimenetre - kimenő.

Csomag, amely áthalad ezen láncok szabályok alapján lehet ugrani (ACCEPT) vagy meg kell semmisíteni (DROP):

Először létre egy szabályt az INPUT lánc készlet alapértelmezett viselkedése csomagokat, amelyek áthaladnak a szűrőn. Ha egyik megadott szabályok alatt nem kérte a csomagot - akkor kell dobni (DROP) értesítése nélkül a feladó:

$ IPTABLES -P INPUT DROP

Csomagok, amelyek átmennek a szűrő kimenő elhagyjuk megfelelően:

Ugyanez vonatkozik a „tranzit” csomag:

$ IPTABLES -P OUTPUT ACCEPT

$ IPTABLES -A INPUT -i lo -j ACCEPT

Beállítja egyéni szabály (-A) a bemeneti szűrő csomagok áthaladó felületen (-i) loopback (lo), és végrehajtja a cél (-j) «fogadjanak» (ACCEPT).

A következő szabály a modul (-m) állapotban van. amely ellenőrzi a kapcsolat állapotát hozzák létre - a rokon és létrehozott vagy ha a vegyület alkalmas ez a szabály - lehetővé teszi:

$ IPTABLES -A INPUT -m state -országhatár KAPCSOLÓDÓ, LÉTRE -j ACCEPT

A következő szabály, hogy kiszűrje a bejövő kapcsolatokat INPUT, mi határozza meg:

$ IPTABLES -A INPUT -p tcp -i eth0 -dport 22 -j ACCEPT

Protocol (-p) TCP. interfész (-i) eth0. és a rendeltetési kikötőben, azaz portot a szerver, amelyen a kapcsolat létrejött (-dport) 22.

Hozzá néhány szabályt:

# Az védelmet DOS támadások:
$ IPTABLES -A INPUT -p tcp -m tcp TCP-zászlók SYN, ACK FIN, RST RST -m limit -limit 1 / s -j ACCEPT

# Engedélyezi az FTP
$ IPTABLES -A INPUT -i eth0 -p tcp -dport 21 -j ACCEPT

# A HTTP
$ IPTABLES -A INPUT -i eth0 -p tcp -dport 80 -j ACCEPT

# A HTTPS
$ IPTABLES -A INPUT -i eth0 -p tcp -dport 443 -j ACCEPT

# SMTP megengedhető csak a hálózat 77.120. ***. 1/24
$ IPTABLES -A INPUT -s 77,120. ***. 1/24 -i eth0 -p tcp -dport 25 -j ACCEPT

# RazreshaemPOP3 csak IP 77,120. ***. 46
$ IPTABLES -A INPUT -s 77,120. ***. 46 -i eth0 -p tcp -dport 110 -j ACCEPT

# DNS engedélyezése
$ IPTABLES -A INPUT -i eth0 -p udp -Sport 53 -j ACCEPT

# Hozzáférés port 8081 és 8082, hogy csak az egyik hálózat 91. ***. **. 0/24, 195. ***. ***. 0/23 és IP 37. ***. **. 174
.. A nettó 91 *** ** *** *** 0/24 0/23 195 37 *** 174 ** .......; csinál
$ IPTABLES -A INPUT -p tcp -m tcp -s $ nettó -m multiport -dports 8081,8082 -j ACCEPT
csinált
$ IPTABLES -A INPUT -p tcp -m tcp -m multiport -dports 8081,8082 -j DROP

# Hagyjuk ping
$ IPTABLES -A INPUT -p icmp -j ACCEPT

Indítsa újra a forgatókönyvet, hogy a szabályok lépnek hatályba, ugyanakkor a hibák ellenőrzéséhez:

Hiba esetén - azt jelzi, hogy melyik vonalat valami tévedés. Például:

iptables v1.4.8: ismeretlen protokoll `tcp-dport„meghatározott

Hiányzó hely után a tcp.

Tekintse meg a jelenlegi szabályok használhatja a -list opció:

# Iptables -list
Lánc INPUT (politikai DROP)
célozni prot opt ​​forrás cél
ACCEPT összes - bárhol bárhová
ACCEPT összes - bárhol bárhol kapcsolatos állami, LÉTRE
ACCEPT tcp - bárhol bárhol tcp DPT: ssh
ACCEPT tcp - bárhol bárhol tcp zászlók: FIN, SYN, RST, ACK / RST határ: átl 1 / sec tört 5
ACCEPT tcp - bárhol bárhol tcp DPT: ftp
ACCEPT tcp - bárhol bárhol tcp DPT: www
ACCEPT tcp - bárhol bárhol tcp DPT: https
. ACCEPT tcp - 0 *** *** 77.colo.static.dc.volia.com/24 bárhol tcp dioptria: smtp ..
! ACCEPT tcp - 0 *** *** 77.colo.static.dc.volia.com/24 bárhol tcp dioptria: smtp ...
ACCEPT tcp - 46 *** *** 77.colo.static.dc.volia.com bárhol tcp dioptria: pop3 ...
ACCEPT udp - bárhol bárhol udp SPT: domain
ACCEPT tcp - 91. *** ** 0/24 bárhol tcp multiport dports Tproxy, 8082 ..
ACCEPT tcp - 195 *** *** 0/23 bárhol tcp multiport dports Tproxy, 8082 ...
ACCEPT tcp -. 37 *** *** 174 bárhová tcp multiport dports Tproxy, 8082 ..
DROP tcp - bárhol bárhol tcp multiport dports tproxy, 8082
ACCEPT ICMP - bárhol bárhol ICMP echo-request

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

Még néhány példa a használat.

Állapotának ellenőrzése IPTABLES:

# Iptables -L -n -v
Lánc INPUT (politika DROP 176 csomagokat, 36734 bytes)
pkts bájt cél prot opt ​​out forrás cél
0 0 ACCEPT összes - lo * 0.0.0.0/0 0.0.0.0/0
179K 40M ACCEPT összes - * * 0.0.0.0/0 0.0.0.0/0 kapcsolatos állami, LÉTRE
1100 ACCEPT tcp - eth0 * 0.0.0.0/0 0.0.0.0/0 tcp DPT: 22
0 0 ACCEPT tcp - eth0 * 0.0.0.0/0 0.0.0.0/0 tcp DPT: 21
3180 ACCEPT tcp - eth0 * 0.0.0.0/0 0.0.0.0/0 tcp DPT: 80
Január 28 ACCEPT ICMP - * * 0.0.0.0/0 0.0.0.0/0
1 60 ACCEPT tcp - * * 195.191.226.102 0.0.0.0/0 tcp DPT: 514
0 0 ACCEPT tcp - * * 91.218.228.236 0.0.0.0/0 tcp DPT: 514

Lánc FORWARD (politika ACCEPT 0 csomagok, 0 bájt)
pkts bájt cél prot opt ​​out forrás cél

Lánc OUTPUT (politika ACCEPT 180K csomagokat, 12M bájt)
pkts bájt cél prot opt ​​out forrás cél

Nyomtatás A jelenlegi szabályok csak az INPUT:

# Iptables -L INPUT -n -v

# Iptables -L OUTPUT -n -v

Hozzáadását és törlését szabályokat.

Nyomtatás a jelenlegi szabályok INPUT vonal (szabály szám):

# Iptables -L INPUT -n -line-szám
Lánc INPUT (politikai DROP)
num cél prot opt ​​forrás cél
1 ACCEPT összes - 0.0.0.0/0 0.0.0.0/0
2 ACCEPT összes - 0.0.0.0/0 0.0.0.0/0 kapcsolatos állami, LÉTRE
3 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp DPT: 22
4 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp DPT: 21
5 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp DPT: 80
6 ACCEPT ICMP - 0.0.0.0/0 0.0.0.0/0
7 ACCEPT tcp - 195.191.226.102 0.0.0.0/0 tcp DPT: 514
8 ACCEPT tcp - 91.218.228.236 0.0.0.0/0 tcp DPT: 514

Szabály hozzáadásához 5:

# Iptables -I INPUT 5. -i eth0 -p tcp -dport 8080 -j ACCEPT

# Iptables -L INPUT -n -line-szám | grep 80
5 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp DPT: 8080
6 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp DPT: 80

A szabály a régi „fejlődött” a 6. sorban, az új - 5 volt.

Blokkolja a bejövő kapcsolatokat IP8.8.8.8:

# Iptables -I INPUT 7 -s 8.8.8.8 -j DROP

# Iptables -L INPUT -n -line-szám | grep 8.8.8.8
7 vidd - 8.8.8.8 0.0.0.0/0

# Iptables -A OUTPUT -p icmp -d www.facebook.com -j DROP

# Ping 173.252.101.26
PING 173.252.101.26 (173.252.101.26) 56 (84) byte adatot.
ping: sendmsg: A művelet nem engedélyezett
ping: sendmsg: A művelet nem engedélyezett

Lássuk a szabályok:

# Iptables -L OUTPUT -n -line-szám
Lánc OUTPUT (politika ACCEPT)
num cél prot opt ​​forrás cél
1 csepp TCP - 0.0.0.0/0 173.252.101.26

# Iptables -A INPUT -p tcp -destination-22-es port -m mac -mac-forrás 00: 60: ef: 0B: f6: 1a -j ACCEPT

# Iptables -A INPUT -p tcp -destination-22-es port -m iprange -SRC hatótávolságú 10.0.0.5-10.0.0.10 -j ACCEPT

A kényszerek connlimit modullal. Annak érdekében, hogy csak 3 SSH kapcsolatot egy ügyfél:

# Iptables -A INPUT -p TCP -syn -dport 22 -m connlimit -connlimit-fölött 3 -j REJECT

Számának beállítása HTTP kérések 20:

# Iptables -p tcp -syn -dport 80 -m connlimit -connlimit-20 felett -connlimit-maszk 24 -j DROP

-connlimit-felett 3: jelzi, hogy a szabály érvényes, ha a kapcsolatok száma meghaladja a 3;

-connlimit maszk 24: meghatározza a hálózati maszkot.

Kapcsolódó cikkek