Ja misto DenyHosts pouzivam samotne iptables s recent modulem. V kazdem 300 sekundovem je povoleno jen 5 spojeni od jedne IP adresy:
iptables -A INPUT -p tcp --dport 22 -m recent --name SSH --set iptables -A INPUT -p tcp --dport 22 -m recent --name SSH \ --update --seconds 300 --hitcount 5 -j DROP iptables -A INPUT -p tcp --dport 22 -j ACCEPT
Takze robot si zkusi 5 hesel a pak ma na 5 minut utrum. Funguje to bezvadne, v nejnovejsich jadrech i s IPv6.
„Takze robot si zkusi 5hesel a pak ma na 5minut utrum“
Coz je ovsem na nic, pokud robot neni robot, ale sit robotu a zkusi kazde heslo z jineho IPcka.
Taky jsem si napsal vlastni skriptik v bashi do syslog-ng. Kdyz se v syslogu objevi zaznam z sshd, tak syslog-ng spusti skript. Ten pak precte chybu a podle druhu chybu zablokuje v iptables port pro dane IP. Nekteri roboti pouze skenuji „did not send identification string“, jini zkousi hesla. Ale i clovek se muze obcas preklepnout, takze to blokuje ruznymi zpusoby.
Nastesti jsem zatim nenarazil na pripad kdy by kazde spojeni slo z jine adresy. I kdyz je tech robotu v siti vic tak to stejne kazdeho z nich po par pokusech odstrihne. A dost casto to po tech peti minutach uz znovu nezkousi – asi si reknou ze jsou out a jdou cmuchat jinam.
To se stane teprve v pripade, ze dostatecne mnozstvi spravcu zmeni ssh porty svych serveru. Jenze pak budou muset boti prakticky skenovat vsechny porty aby nasli ten spravny, coz je bude stat mnohem vic casu a pokusu, coz boti delaji neradi ;-). Navic takove skeny budou snaze odhalitelne. Takze at si to uzijou ;-).
to je pravda. ale co s ftp http apod?
presunou vsechno ? :-)
ps: vubec nechapu ty tanecky s Denyhostem, ban apod. pri malem vytizeni opravdu staci nastaveni pomoci iptables.
ja pouzivam pro zjednoduseni spravy shorewall a jeho Limit tedy priklad:
Limit:none:FTPACT,6,180 net $FW tcp ftp
také používám a mám i nějaké statistiky (od března 2009)
http://pejsa.info/…/attacks.php
vpn jest tyfus:
chci mit z prace ssh na jinej pocitac v praci a zaroven domu, podle tebe mam prvne udelat vpn domu a to mi jako vedlejsi produkt zabije ssh na pocitac v praci :(
pokud chces vetsi bezpecnost, tak http://en.wikipedia.org/…ort_knocking
VPN je v pohode, jen ji musis umet pouzivat. Ja mam z prace dve VPNky a jeste pritom normalne lokalne pracuju. Nesmis samozrejme pres VPN nasmerovat default route, ale proste jenom to, co potrebujes. Z prace se mi navazuje vpn domu, ale na tom domacim komput se mi routujou jenom IP z prace. Zbytek jedu normalne pres providera.
Ale jinak souhlasim, hezka metoda je port-knocking, ale to neni moc pro obyc uzivatele, ikdyz pomoci nmapu nebo nc by to slo udelat jednoduse pres BAT in do windows.
Nemusite s tim delat nic.
To proto, ze uz vam denyhosts bezi (jako deamon). Co muzete udelat je si „pouze“ upravit nastaveni v /etc/dehyhosts.conf a potom restartovat denyhosts (sudo /etc/init.d/denyhosts restart).
Muzete si prohlednou take soubor /etc/hosts.deny – tam se hromadi adresy stroju, kterym je odepren pristup. Pokud nemate zadny podobny program nainstalovan a sam jste tam nic nepsal, je to s nejvetsi pravdepodobnosti prave od denyhosts.
ja na gentoo mam v ps -aux toto:
/usr/bin/python /usr/bin/denyhosts –daemon -c /etc/denyhosts.conf
a ten pid lock je tento soubor /var/run/denyhosts.pid
podivej se do /var/log/denyhosts, kdyz ho poustim, tak mi tam vypise neco jako:
2009–09–01 10:39:14,724 – denyhosts : INFO DenyHosts launched with the following args:
2009–09–01 10:39:14,760 – denyhosts : INFO /usr/bin/denyhosts –daemon -c /etc/denyhosts.conf
2009–09–01 10:39:14,761 – prefs : INFO DenyHosts configuration settings:
…
mozna jenom ten pousteci skript neni adaptovanej na ubuntu, nema to nahodou ubuntu v repozitari?
a co to ma delat? normalne /etc soubory jsou „protected“ takze se pokazde portage dotazuje, co delat, jestli nechat starej soubor nebo prepsat novym, pricemz ukazuje diff, to je docela dobry pri upgradech
existuje navic automaticky dispatch-conf, kterej si pamatuje, co jsi udelal naposledy, jestli ti stacil defaultni soubor, nebo jsi neco predelaval
Doporucuju fail2ban, taktez sleduje logy, a pri neuspesnych pokusech se vola akce, typicky pridani docasneho drop pravidla do iptables – coz je imho lepsi, nez spojeni vubec akceptovat. Mimo to neni omezen jenom na ssh, ale na cokoliv, k cemu se da napsat regexp. S uspechem pouzivam na sasl (pop3&imap), apache, ftp …
Pokud pouzivate tcpwrappers, coz je knihovna, ktera hosts.deny obvykle pouziva, tak daemon (i kdyz je to treba jen inetd) nejdrive spojeni akceptuje a potom ho zrusi. Teda vyrazne vyssi naroky na systemove zdroje a vetsi sance k pruniku, nez kdyz je spojeni odmitnuto/zahozeno firewallem jeste pred sestavenim.
DenyHosts me prijde jako nahrada, pokud nemuzete/nechcete pouzivat firewall, treba proto, ze jste ve FreeBSD jailu, kde to neni mozne.
Pokud to nechcete pouzivat na nic jineho, nez ssh, tak ma DenyHosts sve vyhody. Treba synchronizaci s vnejsi databazi, diky ktere spouste utoku je zabraneno, nez vybec zacnou. Tez by mne zajimalo, co se stane, kdyz po obzvlasne utocnem dni mate iptables nacpane spoustou drop pravidel a nemate nijak zvlast vykonny router. Nezpomaluje to filtrovani a tim i cinnost routeru?
ad sila routru: „utocny den“ nie je myslim ta spravna miera lebo stare zaznamy sa mazu za ovela kratsiu dobu vacsinou v radoch desiatok minut a myslim ze radovo stovky zaznamov nie su problem ani pri hodne slabom routri (ja ich vzdy napocitam aktualne tak do 50 a to mazem po troch hodinach) …navyse jednoduche pravidlo/filter na IP adresy je vypoctovo pomerne nenarocna zalezitost......
inak by som sa rad opytal na skutocny rozdiel medzi F2B a DH?
zacal som s fail2ban lebo som akutne nieco take potreboval a toto bolo prve co som vygoglil a ked sa mi to zapacilo a chcel som to instalovat aj na ostatne stroje tak som zistil ze to napr nie je v gentoo stable … goglil som pre co a odpoved bola ze to netreba lebo je to to iste ako DH ktore tam uz je
no prave ze ten autohajzl niekde zmysel ma a niekde nie… su proste situacie ked je nutne mat povolene ssh na default porte zo sveta a nejake pridane vychytavky typu VPN su neziaduce
tam je autohajzl najlepsim moznym riesenim a to i vcetne whitelistu, ktory ma velky zmysel napriklad ak je to server pre studentov a vy potrebujete aby ich to nebanovalo ak sa pripajaju z ucebne kde to robia na rychlo a vidia to prvy krat takze neuspesne pokusy sa len tak sypu ..... mimo ucebne na to 99% z nich kasle a to zostavajuce jedno percento, ktore to so skolskym ssh uctom mysli vazne, si proste da pozor aby nezadalo nespravne heslo 10× po sebe behom 1 minuty
v takejto apolikacii ma naozaj nic lepsieho nez autohajzl nenapada ale ak vas ano budem rad za kazdy navrh
Nedavno se mi nahakovali pomoci sipvicious na muj trixbox aprotelefonovali mi 80 euro za pul hodiny :-(. Moje blbost. Mel jsem moc jednoducha hesla.
Nicmene by se hodili kdyby bylo neco podobneho pro /var/log/asterisk/messages. Neco co kontroluje jestli se takovhle vec nevyskytuje prilis casto ze stejne ip.----„[Apr 14 10:15:18] NOTICE[2522] chan_sip.c: Registration from ‚50010 <sip:50010@xxx.xxxx.cz;transport=udp>‘ failed for ‚87.96.182.177‘ – Wrong password“