Freesco, NND, CDN, EOS http://forum.freesco.pl/ |
|
Banowanie ludkow laczacych sie przez ssh http://forum.freesco.pl/viewtopic.php?f=22&t=10841 |
Strona 1 z 2 |
Autor: | czerwo [ sobota, 21 stycznia 2006, 16:54 ] |
Tytuł: | Banowanie ludkow laczacych sie przez ssh |
Jako ze ostatnio mam miliony prob wlamania przez ssh naszkrobalem male co nieco ![]() Po 6 nieudancyh probach blokuje ip ;] #!/bin/sh if [ ! -r /etc/ssh/stare ]; then touch /etc/ssh/stare fi rm /etc/ssh/nowe for IP in `cat /var/log/auth | grep "Invalid user" | awk '{print $10}' | uniq` ;do ile=`cat /var/log/auth | grep -w $IP | wc -l` if [ $ile -gt 6 ]; then echo $IP >> /etc/ssh/nowe fi done for IP in `comm -2 -3 /etc/ssh/nowe /etc/ssh/stare` ;do iptables -I INPUT -s $IP -p tcp -j DROP iptables -I FORWARD -s $IP -p tcp -j DROP iptables -I INPUT -d $IP -p tcp -j DROP iptables -I FORWARD -d $IP -p tcp -j DROP echo $IP >> /etc/ssh/stare done Caly skrypt umiescilem w /etc/ssh pod nazwa blokada Jeszcze do /etc/rc.d/rc.local dopisalem sobie for IP in `cat /etc/ssh/stare` ;do iptables -I INPUT -s $IP -p tcp -j DROP iptables -I FORWARD -s $IP -p tcp -j DROP iptables -I INPUT -d $IP -p tcp -j DROP iptables -I FORWARD -d $IP -p tcp -j DROP done i jeszcze do crona trzeba dopisac */5 * * * * /etc/ssh/blokada |
Autor: | Gość [ sobota, 21 stycznia 2006, 18:16 ] |
Tytuł: | |
Fajno ja też mam duuuużo prób logowania, napewno się przyda, zaraz przetestuje. A na jak długo jest banowany dany adres ip ?? |
Autor: | dzióra [ sobota, 21 stycznia 2006, 18:22 ] |
Tytuł: | Re: Banpowanie ludkow laczacych sie przez ssh |
czerwo pisze: Caly skrypt umiescilem w /etc/ssh pod nazwa blokuj czerwo pisze: i jeszcze do crona trzeba dopisac
*/5 * * * * /etc/ssh/blokada Sorki, ale czy tu nie wkradł się błąd. Sam myslałem o tym, ale moja wiedza na temat skryptów w bashu dopiero pęcznieje ![]() ![]() Pozdrówka |
Autor: | mih2 [ sobota, 21 stycznia 2006, 18:48 ] |
Tytuł: | |
A nie prościej zmienić port nasłuchu średnio na standardowym miałem 3-4 próby wlamania dzienie po zmianie chyba jeszcze niebylo. (dysk stary i jak zapisywał logi hałasował wiec postanowilem z tym coś zrobić no i zmieniłem ![]() |
Autor: | barte-k [ sobota, 21 stycznia 2006, 19:32 ] |
Tytuł: | |
OK, mam pytanie innej natury: Czy nie wystrczy w hosts.allow wpisac: sshd : 192.168.0.2 A w hosts.deny: all:all deny ?? |
Autor: | blackangel [ sobota, 21 stycznia 2006, 21:04 ] |
Tytuł: | |
barte-k pisze: OK, mam pytanie innej natury:
Czy nie wystrczy w hosts.allow wpisac: sshd : 192.168.0.2 A w hosts.deny: all:all deny ?? No tak ale jak ty się bedziesz chciał dostać z zewnątrz to jak się dostaniejsz? |
Autor: | czerwo [ sobota, 21 stycznia 2006, 21:40 ] |
Tytuł: | Re: Banpowanie ludkow laczacych sie przez ssh |
dzióra pisze: czerwo pisze: Caly skrypt umiescilem w /etc/ssh pod nazwa blokuj czerwo pisze: i jeszcze do crona trzeba dopisac */5 * * * * /etc/ssh/blokada Sorki, ale czy tu nie wkradł się błąd. Sam myslałem o tym, ale moja wiedza na temat skryptów w bashu dopiero pęcznieje ![]() ![]() Pozdrówka sorki pisalem z glowy oczywisice ze ma sie nazywac blokada albo w cronie inaczej wpisac. Cytuj: A nie prościej zmienić port nasłuchu średnio na standardowym miałem 3-4 próby wlamania dzienie po zmianie chyba jeszcze niebylo. (dysk stary i jak zapisywał logi hałasował wiec postanowilem z tym coś zrobić no i zmieniłem wtedy nie moge kopiowac przez mc po powloce..... Cytuj: Fajno ja też mam duuuużo prób logowania, napewno się przyda, zaraz przetestuje. A na jak długo jest banowany dany adres ip ??
Na czas nieograniczony, wystarczy zrobic skrpt ktory zdejme blokade i dopisac do crona. |
Autor: | barte-k [ niedziela, 22 stycznia 2006, 01:13 ] |
Tytuł: | |
blackangel pisze: barte-k pisze: OK, mam pytanie innej natury: bla bla bla ?? No tak ale jak ty się bedziesz chciał dostać z zewnątrz to jak się dostaniejsz? host.allow : sshd : host/ip_z_ktorej_sie_lacze ![]() |
Autor: | MAC!EK [ niedziela, 22 stycznia 2006, 03:01 ] |
Tytuł: | Re: Banpowanie ludkow laczacych sie przez ssh |
czerwo pisze: Cytuj: A nie prościej zmienić port nasłuchu średnio na standardowym miałem 3-4 próby wlamania dzienie po zmianie chyba jeszcze niebylo. (dysk stary i jak zapisywał logi hałasował wiec postanowilem z tym coś zrobić no i zmieniłem wtedy nie moge kopiowac przez mc po powloce..... w /etc/ssh/ssh_config jest takie coś: jak zmienisz to będzie się domyślnie łączył na inny port, MC powinien też korzystać z tego |
Autor: | czerwo [ niedziela, 22 stycznia 2006, 10:47 ] |
Tytuł: | |
Mozliwe nie sprawdzalem, ale narazie mi sie podoba to co zrobilem ![]() |
Autor: | czerwo [ niedziela, 22 stycznia 2006, 11:15 ] |
Tytuł: | |
poprawka ![]() ![]() #!/bin/sh if [ ! -r /etc/ssh/stare ]; then touch /etc/ssh/stare fi for IP in `cat /var/log/auth | grep "Invalid user" | awk '{print $10}' | uniq` ;do ile=`cat /var/log/auth | grep -w $IP | wc -l` if [ $ile -gt 3 ]; then echo $IP >> /etc/ssh/nowe.1 fi if [ ! -r /etc/ssh/nowe.1 ]; then touch /etc/ssh/nowe.1 fi sort /etc/ssh/nowe.1 > /etc/ssh/nowe done for IP in `comm -2 -3 /etc/ssh/nowe /etc/ssh/stare` ;do iptables -I INPUT -s $IP -p tcp -j DROP iptables -I FORWARD -s $IP -p tcp -j DROP iptables -I INPUT -d $IP -p tcp -j DROP iptables -I FORWARD -d $IP -p tcp -j DROP echo $IP >> /etc/ssh/stare done sort /etc/ssh/stare > /etc/ssh/stare.1 cat /etc/ssh/stare.1 > /etc/ssh/stare rm /etc/ssh/stare.1 rm /etc/ssh/nowe.1 |
Autor: | czerwo [ niedziela, 22 stycznia 2006, 12:28 ] |
Tytuł: | |
musialem comm zastapic grepem bo inaczej sie zajaczkowalo #!/bin/sh if [ ! -r /etc/ssh/stare ]; then touch /etc/ssh/stare fi for IP in `cat /var/log/auth | grep "Invalid user" | awk '{print $10}' | uniq` ;do ile=`cat /var/log/auth | grep -w $IP | wc -l` if [ $ile -gt 3 ]; then echo $IP >> /etc/ssh/nowe fi done if [ ! -r /etc/ssh/nowe ]; then touch /etc/ssh/nowe fi for IP in `cat /etc/ssh/nowe` ;do cat /etc/ssh/stare | grep -w $IP > /dev/null let wynik=$? if [ $wynik = 1 ]; then iptables -I INPUT -s $IP -p tcp -j DROP iptables -I FORWARD -s $IP -p tcp -j DROP iptables -I INPUT -d $IP -p tcp -j DROP iptables -I FORWARD -d $IP -p tcp -j DROP echo $IP >> /etc/ssh/stare fi done rm /etc/ssh/nowe |
Autor: | Sadek [ niedziela, 22 stycznia 2006, 14:37 ] |
Tytuł: | |
a co się stanie jak przypadkiem spróbuję zalogować się raz z zewnątrz i sie pomylę, bo stosuję bardzo pokrętne hasło ![]() |
Autor: | tasiorek [ niedziela, 22 stycznia 2006, 14:39 ] |
Tytuł: | |
Sadek pisze: a co się stanie jak przypadkiem spróbuję zalogować się raz z zewnątrz i sie pomylę, bo stosuję bardzo pokrętne hasło
![]() Przeczytaj jeszcze raz dwa pierwsze zadania w tym watku. |
Autor: | Sadek [ niedziela, 22 stycznia 2006, 14:45 ] |
Tytuł: | |
gafa ![]() |
Autor: | czerwo [ niedziela, 22 stycznia 2006, 14:45 ] |
Tytuł: | |
ja mam ustawione na 3 bledne logowania co daje 6 hasel a naprad\wde plik jest sprawdzany co 5 minut jezeli tak ustawisz w cronie wiec w ciagu 5 minut mozesz sie wiecej razy blednie zalogowac ![]() ![]() if [ $ile -gt 3 ]; then to odpowiada za ilosc blednych logowac a wpis w cornie odpowiada jak czesto ma czytac logi z ssh |
Autor: | czerwo [ piątek, 10 lutego 2006, 10:39 ] |
Tytuł: | |
Dopiescilem skrypcik bo byl jeszcze blad ![]() #!/bin/sh if [ ! -r /etc/ssh/stare ]; then touch /etc/ssh/stare fi for IP in `cat /var/log/auth | grep "Invalid user" | awk '{print $10}' | uniq` ;do ile=`cat /var/log/auth | grep "Invalid user" | grep -w $IP | wc -l` if [ $ile -gt 3 ]; then echo $IP >> /etc/ssh/nowe fi done if [ ! -r /etc/ssh/nowe ]; then touch /etc/ssh/nowe fi for IP in `cat /etc/ssh/nowe` ;do cat /etc/ssh/stare | grep -w $IP > /dev/null let wynik=$? if [ $wynik = 1 ]; then iptables -I INPUT -s $IP -p tcp -j DROP iptables -I FORWARD -s $IP -p tcp -j DROP iptables -I INPUT -d $IP -p tcp -j DROP iptables -I FORWARD -d $IP -p tcp -j DROP echo $IP >> /etc/ssh/stare fi done rm /etc/ssh/nowe do rc.local dopisac or IP in `cat /etc/ssh/stare` ;do iptables -I INPUT -s $IP -p tcp -j DROP iptables -I FORWARD -s $IP -p tcp -j DROP iptables -I INPUT -d $IP -p tcp -j DROP iptables -I FORWARD -d $IP -p tcp -j DROP done do crona: jezeli chcemy odblokowac jakies ip bo nam sie zablokowaloL: #!/bin/sh IP="81.1.110.199" iptables -I INPUT -s $IP -p tcp -j ACCEPT iptables -I FORWARD -s $IP -p tcp -j ACCEPT iptables -I INPUT -d $IP -p tcp -j ACCEPT iptables -I FORWARD -d $IP -p tcp -j ACCEPT i to chyba na tyle ![]() |
Autor: | Mr Groch [ piątek, 24 marca 2006, 18:01 ] |
Tytuł: | |
Dopisalem prosty skrypcik do "odbanowania" starych IP dla skryptu czerwa. Moze byc przydatne jezeli iptables dluzej nie jest restartowane i regulki moglyby sie bardzo rozrosnac.... #!/bin/sh if [ -r /etc/ssh/stare ]; then for IP in `cat /etc/ssh/stare` ;do iptables -D INPUT -s $IP -p tcp -j DROP iptables -D FORWARD -s $IP -p tcp -j DROP iptables -D INPUT -d $IP -p tcp -j DROP iptables -D FORWARD -d $IP -p tcp -j DROP done fi Mozna zapisac jako /etc/ssh/czysc_bany Nadac atrybut wykonywalnosci i dopisac do crontaba (np co 2 godziny) Pozdrawiam |
Autor: | czerwo [ sobota, 25 marca 2006, 10:12 ] |
Tytuł: | |
minimum 2 tygodnie ![]() A po 2 ja czyszcze blokade przy reboocie ![]() |
Autor: | jarekjarek [ sobota, 25 marca 2006, 12:42 ] |
Tytuł: | |
napiszcie jak wpisać w krona na tydzień i 2 tygodnie ja nie kumam jak to sie wpisuje |
Strona 1 z 2 | Strefa czasowa UTC+2godz. |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |