Sziasztok,
régebben nyitottam egy topicot (http://hup.hu/node/124609) és fel is tettem a fail2ban, de nem vagyok biztos a működésében.
Ugyanis írtátok, hogy, ha valakit blokkol, akkor ide (/etc/hosts.deny) kellene gyűjteni a blokkolt IP címeket, de "sajnos" nem gyűlnek az IP címek (egyetlen egy sem került be). Pedig vannak próbálkozásaim is. Ezt a fail2ban.log file mutatja is, hogy "ban"-olja ezeket.
Kérdésem, hogy a /etc/hosts.deny kerüljenek a blokkolások mit kellene beállítanom a fail2ban configjában?
Üdv.
KALMI
- 6039 megtekintés
Hozzászólások
Nekem iptables-hez van egy saját szabály rendszerem. Abba kerülnek, és az iptables -L parancs listázza az összes tiltottat (amíg lenem jár az ideje)
--
openSUSE 12.2 x86_64
- A hozzászóláshoz be kell jelentkezni
Ha valóban a hosts.deny alapján szeretnéd a bant, úgy a fail2ban konfigjában engedélyezted a hostsdeny actiont? És ha igen, mégsem működik? Ahogy lajos22 írta is fentebb, az alap az iptables-multiport.
"Kérdésem, hogy a /etc/hosts.deny kerüljenek a blokkolások mit kellene beállítanom a fail2ban configjában?"
Ha biztosan ezt szeretnéd, és nem jó neked a default iptables-multiport, akkor a banaction mellé hostsdeny kerüljön. Megadhatod globálisan, vagy csak akár egyedileg is.
- A hozzászóláshoz be kell jelentkezni
Effektíve nekem mindegy, hogy hova kerülnek a blokkolt IP-k (picit még homályos a történet, ezért nem tudom, hogy mi a jobb és a rosszabb). Viszont, ha nem itt vannak /etc/hosts.deny, akkor hova kerülnek? Hogyan tudom listázni, újakat felvinni és törölni?
- A hozzászóláshoz be kell jelentkezni
Nem voltam sajnos túl világos. Arra akartam célozni az első hsz-emben, hogy kukkants be az iptables-be, hátha odakerültek. (legalábbis ha van fail2ban nevű szabály, akkor oda kerülnek)
--
openSUSE 12.2 x86_64
- A hozzászóláshoz be kell jelentkezni
Default oda kerülnek.
iptables -L -n
A végén meg fogod látni a fail2ban által tiltott IP-ket.
- A hozzászóláshoz be kell jelentkezni
Igen van:
---
iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
---
~# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 22
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Gondolom ez még kevés lesz....
- A hozzászóláshoz be kell jelentkezni
Ebből az látszik, hogy jelenleg nincs fail2ban által blokkolt IP. Hangsúly a jelenleg szón.
- A hozzászóláshoz be kell jelentkezni
Hát igen, de látom a log-bol, hogy sok a próbálkozás, azaz kellene hogy legyen már...
- A hozzászóláshoz be kell jelentkezni
fail2ban log mit mond ?
Nekem 2 van, egy /var/log/fail2ban.log és hasonló tartalmak kerülnek néha a /var/log/message-be is. Nézd át, hátha valamit belehányt valahova...
sz:
Jah bocs. úgy érted a "látom a logból"-t hogy a f2b logból ?
--
openSUSE 12.2 x86_64
- A hozzászóláshoz be kell jelentkezni
grep -i ban /var/log/fail2ban.log
Kimenetben az idopontok is ott lesznek, ulltve az adott ip unban idopontja is. Unban utan mar nem lesz iptablesben. Konfban tudod allitgatni a ban timeot.
--
zsebHUP-ot használok!
- A hozzászóláshoz be kell jelentkezni
pl:
2013-08-06 15:02:44,966 fail2ban.actions: WARNING [ssh] Ban 117.34.4.32
2013-08-06 15:12:45,662 fail2ban.actions: WARNING [ssh] Unban 117.34.4.32
Ez azt jelenti, hogy ismét próbálkozhat a fenti IP-ről? Hogyan lehet egy IP-t a fail2ban-al végérvényesen letiltani? pl: valamilyen szabály alapján (pl: 3 próbálkozik, utánna 10 perc, ismét 3 próbálkozás örökre)
- A hozzászóláshoz be kell jelentkezni
Javaslom, nézd át a konfigot, nem bonyolult.
"Ez azt jelenti, hogy ismét próbálkozhat a fenti IP-ről?"
Mivel a konfigban be van állítva (ill. a default is ez), hogy 10 percig tart a ban, így igen, 10 perc után feloldja a korlátozást.
"Hogyan lehet egy IP-t a fail2ban-al végérvényesen letiltani?"
A manualban olvasható, hogy negatív számot kell megadni bannolási időtartamként.
"pl: valamilyen szabály alapján (pl: 3 próbálkozik, utánna 10 perc, ismét 3 próbálkozás örökre)"
Írhatsz saját scriptet, programot ami ezt kezeli, és megadhatod actionként.
- A hozzászóláshoz be kell jelentkezni
Hűha... erre esetleg tudnál valami leírást küldeni, mert ez már egy picit nagy falat ;)
- A hozzászóláshoz be kell jelentkezni
Milyen leírásra gondolsz?
A manual a weben: MANUAL 0 8
A dokumentációt tartalmazó szokásos helyen is találsz leírásokat. Van pl. néhány Debian-specifikus információ, ebben a Troubleshooting rész alatt van az időzítésekről két rövid rész (ami természetesen nem Debian-specifikus beállítási lehetőség, és a végén visszahivatkozik a manualra):
$ zless /usr/share/doc/fail2ban/README.Debian.gz
- A hozzászóláshoz be kell jelentkezni
Ha a script kell, akkor kapsz egyet, anno csináltam egy ilyet, előkapartam:
http://pastebin.com/LLJ749YJ
Azt csinálja, hogy a fail2ban logokból kiszedi a bannolt ip-ket. Ami kettőnél többször szerepel benne, azt betolja egy fájlba, ezt mondjuk egy másik scriptel be tudod tolni tűzfalba örökre.
(az eredeti script kicsit nagyobb volt és több funkciót látott el, gyorsan átszabtam, hogy csak ez a funkció maradjon benne, ha hibát ejtettem, akkor javítsd :) )
- A hozzászóláshoz be kell jelentkezni
Szabad kritizálni? ;)
Az az "awk" minek oda? Egy cut nem lett volna "olcsóbb"?
Illetve ha már grep+awk, a grep-et nem tudtad volna kihagyni és egyből az awk-ban szűrni?
(rég volt, lehet, hogy csak én nem látom át a probléma lényegét, de hasonló esetben kb. második próbálkozás után már perl-ben tartottam :)) )
- A hozzászóláshoz be kell jelentkezni
Nem ma írtam, csak emlékeztem, hogy csináltam ilyet még pár éve, előszedtem hát. Ma már biztos másképp oldanám meg, ezért is írtam, hogy javítani ér :)
- A hozzászóláshoz be kell jelentkezni