Iptables kérdés

Fórumok

Iptables kérdés

Hozzászólások

Udv!

Egy tuzfalat szeretnek felepiteni es ehhez kernek segitseget. Van nemi fogalmam a linux (Debian) op rendszerrol, es olvasgatom a szukseges howto-kat. Megis eleg nehezen es bizonytalanul haladok. Ha van vki, aki raer es tud segiteni, akkor kuldjon egy hellot erre az email cimre: fretyo@freemail.hu

Kosz!

A manualt én is átnéztem, csak hogy az iptables -t nat -L
nem ugyan azt adja mint korábban az ipchains -L -M
merthogy az utobbi parancs egy olyan listát adott ki, amelyben benne volt hogy a belső háló gépei milyen külső szerverekkel vannak kapcsolatban adott pillanatban

az iptables -t nat -L viszont csak a láncban lévő szabályokat listázza ki.

On 2003-01-17 13:05, Anonymous wrote:
A manualt én is átnéztem, csak hogy az iptables -t nat -L
nem ugyan azt adja mint korábban az ipchains -L -M
: merthogy az utobbi parancs egy olyan listát adott ki, amelyben benne volt hogy a belső háló gépei milyen külső szerverekkel vannak kapcsolatban adott pillanatban

az iptables -t nat -L viszont csak a láncban lévő szabályokat listázza ki.

Akkor netstat -n
vagy kutakodj a proc filesystemben valami ipconn* nevű fájlt keress!

Hi!

Iptablesben belehet-e allitani, hogy a szerver a router mogott levo felhasznalok, ne tudjonak broadcast uzeneteket szorni. Esetleg a pinget is?
Es ha igen, hogyan?
Elore is kosz!

No igen! Ez igy megoldas lenne ha nem vola 1 bsr meg kozte.
Ez 1 MOTOROLLA BSR 1000-es.
Ha valaki tudna segiteni ezen beallitani ugyan ezt az help nekem :cry:

[quote:1cadc6afbf="linuxguru"]Hi!

Iptablesben belehet-e allitani, hogy a szerver a router mogott levo felhasznalok, ne tudjonak broadcast uzeneteket szorni. Esetleg a pinget is?
Es ha igen, hogyan?
Elore is kosz!

ötlet:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# ez tiltja az icmp broadcast-ot

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
# ez meg az összes pinget tiltja

Sziasztok,
A kérdésem a következő lenne.
van egy helyi háló ahol NAT-olással van megosztva a net
a kérdés az, hogy milyen kapcsolóval lehet kilistázni az éppen aktiv natokat iptables esetén. Ha jól emlékszem az ipchains-ben a -L -M kapcsolók szolgáltak erre.

On 2002-12-06 08:58, Prophet wrote:
Sziasztok,
A kérdésem a következő lenne.
van egy helyi háló ahol NAT-olással van megosztva a net
a kérdés az, hogy milyen kapcsolóval lehet kilistázni az éppen aktiv natokat iptables esetén. Ha jól emlékszem az ipchains-ben a -L -M kapcsolók szolgáltak erre.

A parancs a következő: ´iptables -t nat -L´
de még ajánlom a ´iptables-save | less´
párost is.
(Én kinyomtattam a iptables man -ját amikor először találkoztam vele.)

Koszke!

Meg azert megkerdeznem, hogy a DHCP ettol meg kitudja osztani a cimeket a usereknek, ugye? Vagy ezzel letiltom a halozaton minden broadcast uzenetet?

[quote:902d90a7ab="linuxguru"]Koszke!

Meg azert megkerdeznem, hogy a DHCP ettol meg kitudja osztani a cimeket a usereknek, ugye? Vagy ezzel letiltom a halozaton minden broadcast uzenetet?

ez csak a broadcastolt icmp-csomagokat tiltja le (a ping icmp csomagokat használ, de a dhcp nem), vagyiis működni fog.

Sziasztok!

Nekem is lenne egy iptables kerdesem. Megpediglen, hogyan tudok adatokat megadni az iptablesnek kulso filebol. Pl itt egy szabaly:
iptables -A FORWARD -s 0/0 -d IPcimek.txt -j ACCEPT
es a IPcimek.txt file mondjuk tobb sor IP cimet tartalmaz.
Nos az a kerdes, hogy ezeket a cimeket sorban atengedje, persze a fent irt modon nem muxik, valami kapcsolo hianyzik csak esetleg? Ezt egy seged scriptben hasznalnam, es igy megoldhato lenne, hogy csak az IPcimek.txt filet valtoztatnam az uj adatokkal ha szukseges.
Vay nagyon rosz uton jarok?

Valami hasonlót csinálj:
[code:1:e33d9e8dd6]iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -s 192.168.0.0/24 - j MASQUERADE
iptables -P INPUT DROP[/code:1:e33d9e8dd6]
Majd mentsd le az iptables-save > /var/lib/iptables/active parancs segítségével, így induláskor automatikusan betöltődnek a szabályok.
És ne felejtsd el az /etc/network/options fájlban az ip_forward értékét yes-re állítani.[/code]

[quote:7ba5d0fe68="begin"]Valami hasonlót csinálj:
[code:1:7ba5d0fe68]iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -s 192.168.0.0/24 - j MASQUERADE
iptables -P INPUT DROP[/code:1:7ba5d0fe68]

uhum... meg a FORWARD-ba elkelne egy par rule... ha mar "atjaro" :)
pl.

kifele minden...
[code:1:7ba5d0fe68]
iptables -A FORWARD -i $INT_IF -o $EXT_IF -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
[/code:1:7ba5d0fe68]

befele csak ami mar kiment...
[code:1:7ba5d0fe68]
iptables -A FORWARD -i $EXT_IF -o $INT_IF -m state --state RELATED,ESTABLISHED -j ACCEPT
[/code:1:7ba5d0fe68]

u.i. $INT_IF a belo interface (e.g. eth1), $EXT_IF a kulso interface (e.g. eth0)

1aca:
Szerintem tök fölösleges a két plusz szabályod! Ugyanis ha inputként nem fogadja a nem belülröl kezdeményezett csomagokat, akkor nem is forwardolja.

Ahhoz hogy gépeinket elrejtsük a külső hálózat felől, a következő parancsot kell begépelnünk:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

eth0 az az interface amit a geped hasznal az internet elereshez, gondolom én, de lhet ez nalad ettol eltero is.

A maszkolás után biztosítanunk kell, hogy kívülről ne lehessen kapcsolatokat kezdeményezni a belső gépek felé

iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j DROP
iptables -A FORWARD -i eth0 -m state --state NEW,INVALID -j DROP

Majd engedelyezni kell a csomagok tovabbitasat is.

echo 1 > /proc/sys/net/ipv4/ip_forward

Ezt debian-nal megteheted a /etc/network/optons file modositasval, ha az ip_forward=no - t yes -re allitod.

Ennyi, bar ahogy mondod, volt errol mar nehany* szo, google-be beirod 'iptables nat' stb

forras: http://pcforum.hu/cikkek/?aid=111

iptables -A FORWARD -s 0/0 -d IPcimek.txt -j ACCEPT

Ilyen szolgáltatás tudtommal nincs. Csináld ezt:

while read ip ;
do
if [ ${ip:0:1} != "#" ];
then
iptables -A FORWARD -s 0/0 -d ${ip} -j ACCEPT
fi;
done;
) <IPcimek.txt

Ezzel meé kommentelheted is a fileodat, csak vigyázz, hogy a # az első pozícióban legyen.

[quote:13d8dd7f09="begin"]1aca:
Szerintem tök fölösleges a két plusz szabályod! Ugyanis ha inputként nem fogadja a nem belülröl kezdeményezett csomagokat, akkor nem is forwardolja.

Az INPUT-ba csak azok a csomagok "erkeznek", amik a gateway-nek vannak cimezve, es "atveszelik" a PREROUTING-ot, ahol az esetleges elozo MASQ-ot "visszacsinalja". Az INPUT es a FORWARD egymast kizarja, ha egyikre talal egy csomag, a masikra nem fog.

Az iptraf bevált! Köszönöm a segitséget

Hi mindenkinek!

Bocs elore, ha mar leragott csontot akarok tovabb ragni, de nem jutok 1-rol a 2-re. :(

Kerdes:
Hogyan tudnek egy debian sarge-bol (2.6.8-as kernellel) atjarot csinalni?
A debianbol szeretnek atjarot csinalni a debian kulso cimet tartalmazo cimtartomany fele.
Ertsd: a servernek van egy 213.x.y.z kulso cime es a belso halozaton egy 192.168.x.y belso cime.
Azt nem tudom, mit csinaljak ahhoz, hogy a belso halo gepein be tudjam allitani a 192.168.x.y IP-t atjaronak.

Allitolag iptables-szel lehet megcsinalni.
Azert kerem a segitseget, mert azt sem tudom, hogy kezdjek hozza! :-\
Aki tud valamit hozzaszolni, kerem segitsen!!!

THX!!!

By, Sanyi

Jol eldumaltatok....

Sziasztok!

Nem akarok új témát nyitni a viszonylag egyszerű kérdésemnek. Egy ideje nem "IPtables-eztem" és felejtettem :(

Egy kis ismertető a tűzfalam elejéről:
- Policy: Minden lánc alapártelmezetten DROP , s CSAK az mehet amit Én akarok.
- NET változó -> Külső NIC, EZ a bejövő vonal interface-e.
- Input lánc:
...
...
$IPT -A INPUT -m limit --limit 10/s -j LOG --log-prefix "INPUT_DROP: " <--- Logolok minden eldobott csomagot
$IPT -A INPUT -j DROP <---- Mival a policy DROP ez a sor felesleges ugyebár (JÓL TUDOM ? (ez lenne az első kérdésem) ), de paranoiából itt hagytam :)

Azonban mivel elég sok volt a logolás, amiben főként: (támadtak, és jött a külső broadcast)

Jun 19 10:11:59 GÉPNEVEM kernel: [782669.149861] INPUT_DROP: IN=eth0 OUT= MAC=00:21:85:12:86:ca:00:0e:b6:2c:b7:61:08:00 SRC=188.36.96.242 DST=IPCIMEM LEN=58 TOS=0x00 PREC=0x00 TTL=117 ID=28002 PROTO=UDP SPT=1036 DPT=63266 LEN=38 <---- Ebből több tíz ezer, gondolom valamilyen robot támadgatta portjaimat

EZÉRT, tiltottam néhány MAC címet, és broadcast címet: (Így nem kerülnek feleslegesen logolásra )

$IPT -A INPUT -i $NET -d 255.255.255.255 -j DROP
$IPT -A INPUT -i $NET -m mac --mac-source 00:0e:b6:2c:b7:61 -j DROP
$IPT -A INPUT -i $NET -m mac --mac-source 00:15:6d:b5:c6:1a -j DROP
$IPT -A INPUT -i $NET -m mac --mac-source 00:15:6d:f6:23:1e -j DROP

Így azért lényegesen lecsökkent a logolás, de még próbálom jobban leszűrni, és syslog-ng-t VAGY rsyslogot beüzemelni.

2. kérdés:
$IPT -A INPUT -m limit --limit 10/s -j LOG --log-prefix "INPUT_DROP: "

Ezt a parancsot azért írtam így, mert erre illeszkedik minden csomag? Ez nem igazán tiszta nekem.
Ezt ki tudná nekem valaki részletesebben fejteni?

Előre is köszi a segítségeteket, és bocsi, ha nagyon lámaságot kérdeztem :(

Mi sem egyszerűbb ennél, természetesen syslog-ng -vel:


# encrypted firewall logs
# clone code from: https://github.com/kayapo/encryptedlogstore
destination df_firewall {
        program('/etc/syslog-ng/enc.pl -k /etc/syslog-ng/public.pem -f /var/log/firewall/%Y/%m/%Y-%m-%d-%H.log' template("${MSGONLY}\n") template-escape(no));
        # or a simple file: file("/var/log/firewall/${YEAR}/${MONTH}/${YEAR}-${MONTH}-${DAY}-${HOUR}-fw.log");
        };

# firewall filter
filter f_firewall {
        match("] Firewall " value("MESSAGE"));
        };

filter f_not_firewall {
        not match("] Firewall " value("MESSAGE"));
        };
...
# *.*;auth,authpriv.none          -/var/log/syslog
log {
        source(s_all);
        filter(f_not_firewall);
        filter(f_syslog);
        destination(df_syslog);
};

# firewall logs
log {
        source(s_all);
        filter(f_firewall);
        destination(df_firewall);
};

----
올드보이
http://molnaristvan.eu/

Beillesztettem a conf-ba, de a "or a simple file:" használva, és így hibát jelez a
# firewall filter
filter f_firewall {
match("] Firewall " value("MESSAGE"));
};

szekciónál, ebből is a " match("] Firewall " value("MESSAGE"));" sorban.

Mellesleg, HA a file nevét nem így: /var/log/firewall/${YEAR}/${MONTH}/${YEAR}-${MONTH}-${DAY}-${HOUR}-fw.log adom meg, hanem pl /var/log/firewall/fw.log, akkor nem fogja a logrotate forgatni? Mindig csak egy hatalma méretű kezelhetetlen fw.log file lesz?