Log in


Forgot your password?
prijatelji LUGoNSa
gnu.gif
linuxzasve.jpg
hulk.jpg
 
You are here: Home / Uputstva / Opšte / Odbijanje SSH napada

Odbijanje SSH napada

by Goran Mekić last modified Mar 01, 2010 01:40 PM
Ako Vam je pun nos brute-force napada na SSH, evo kako ih ubiti

O sshguard paketu

Većina tehinika koja služi za odbijanje SSH brute-force napada Vam može više naštetiti nego pomoći. Naime, najčešća tehnika je da se host koji napada stavi u listu IP adresa koje se odbijaju. Ovo može biti loše zbog dve stvari. Prvo, ako pokušavate da pristupite svojoj mašini sa, recimo, posla a napad vrši neko ko je na istoj mreži kao i Vi trenutno, možete i Vi dospeti na listu IP adresa koje se odbijaju. Kako? Pa obično imate dinamičku adresu, te ako Vam se dodeli adresa napadača pri promeni IP-a, nećete moći da priđete svojoj mašini. Druga loša stvar ove tehnike je DOS napad. Naime, ako neko lažira svoj IP i uradi napad na Vašu mašinu, može doći do toga da odbijate adrese koje Vas nikad nisu ni napadale. Kako sshguard rešava ovo? Adresa se ne odbija zauvek nego neko random vreme koje je obično između 300 i 600 sekundi (5 i 10 minuta), tako da sve i da neželjeno dospete na listu odbijenih adresa, sačekajte 10 minuta i pokušajte ponovo.

 

Instalacija paketa

Od paketa, treba da instalirate:

U većini slučajeva, ovi paketi su već instalirani kod Vas. Izuzetak je, možda, sshguard. U koliko je to slučaj, kompajliranje je veoma jednostavno (otpakujete arhivu i uradite ./configure && make all install).

 

Konfiguracija

Za početak, treba da dodate novi lanac u iptables:

# iptables -N sshguard
# iptables -A INPUT -p tcp --dport 22 -j sshguard

Ukoliko koristite IPv6, pametno je isto uraditi za IPv6 tabele:

# ip6tables -N sshguard
# ip6tables -A INPUT -p tcp --dport 22 -j sshguard

Da bi konfiguracija bila zapamćena, ili stavite ove dve komande u neku boot skriptu ili, ako imate init skriptu koja to radi, sačuvajte setovanja sa:

# /etc/init.d/iptables save

Ako imate IPv6, sačuvajte konfiguraciju i za njega:

# /etc/init.d/ip6tables save

Naravno, kod Vas skripta može biti na drugom mestu.

Drugi korak je da podesite syslog-ng.U nastavku su linije koje treba dodati na standardni syslog-ng konfiguracioni fajl, /etc/syslog-ng/syslog-ng.conf:

filter f_sshguard { facility(auth, authpriv) and not program("sshguard"); };

destination sshguard {
    program("/usr/sbin/sshguard"
        template("$DATE $FULLHOST $MSGHDR$MESSAGE\n")
    );
};
destination ssh { file("/var/log/ssh.log"); };

log { source(src); filter(f_sshguard); destination(sshguard); };
log { source(src); filter(f_sshguard); destination(ssh); };

Nakon ovoga, resetujte syslog-ng i trebali biste da dobijete fajl /var/log/ssh.log u kome će se nalaziti svi pristupi Vašoj mašini preko SSH, kao i akcije koje je sshguard preduzeo.

Document Actions