Obrona przed namiętnymi nieletnimi. Czyli jak nie wpuścić spamera.

Postawiłem sobie serwerek na Ubuntu.
Takie przydatne ustrojstwo. Mam dostęp do swoich dokumentów, mogę testować różne programy, udostępniam krewnym i znajomym zdjęcia. Trochę boli, że nie mam stałego IP, ale cóż. Dynamiczne adresy też są dla ludzi – więc skorzystałem. A co?

Ciągłe próby włamań są moim utrapieniem. Nie ma dnia, żeby kilku, może kilkudziesięciu ludków nie spróbowało, czy przypadkiem nie da się zalogować. Kilku szczególnie upartych próbowało przez wiele godzin stukać i szukać dostępnego konta z naiwnym hasłem.
Czy mają szansę? Pewnie nie, bo hasła mam długie i zakręcone. Ale logi puchną i łącze się zapycha. Czasem mnie dreszcz przeszywa, co by szło przez mój biedny serwer, gdyby im się udało. Namiętne nastoletnie, powiększanie penisa …. brrr


Jakiś szczególnie uparty matołek próbował z uporem godnym lepszej sprawy przez kilka godzin złamać hasło konta Administrator. Ups, przecież wystarczy proste pytanie przez
nmap -A domena.pl
żeby sprawdzić, co siedzi na drugim końcu kabla. W unixach konto Administrator raczej nie występuje. Przynajmniej ostatnio 🙂

Poszukałem więc jakiegoś miłego i w miarę prostego w użyciu narzędzia, które zabezpieczy mnie przed takimi natrętami. Iptables jest fajne, ale wymaga, żeby zajrzeć do logu, znaleźć włamywacza i wpisać go do /etc/hosts.deny lub stworzyć odpowiednią regułę. Ale to trzeba by siedzieć dniami i nocami i czuwać. A ja nie mam ochoty tracić czasu na głupoty.

Znalazłem ciekawe narzędzie fail2ban . Chodzi w tle, skanuje co jakiś czas logi i jak znajdzie podejrzane próby włamu szybciutko daje bana na IP.
Jak skonfigurować to cudo? Bardzo prosto. Najpierw z konta root trzeba zainstalować. Jak zainstalować? To zależy jaki mamy system, można przez rpm, deb albo skompilować ze źródeł. Jak kto woli. A potem w katalogu /etc/fail2ban znaleźć plik jail.conf . Oczywiście odpalamy
vi jail.conf

i odszukujemy wpisy (na przykład):

[ssh]
enabled = false
port = ssh,sftp
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

Cóż my mamy w tym wpisie? Ano, że ssh nie jest monitorowane. No to zmieniamy enabled=true. Warto jeszcze dopisać na końcu
bantime=3600
Albo jeszcze inną wartość mówiącą, przez ile sekund dany numer IP będzie blokowany. Myślę, że godzina jest wystarczającym okresem, po którym włamywacz się zniechęci. Należy oczywiście sprawdzić, czy log z ssh odkłada się tam, gdzie podaliśmy. Potem jeszcze trzeba sprawdzić, jakie mamy inne usługi, które mamy chronić i oczywiście odblokować odpowiednie segmenty.

A na koniec
/etc/init.d/fail2ban restart
Co spowoduje, że nasz plik zostanie wczytany i zacznie działać.

W poczuciu dobrze spełnionego obowiązku możemy teraz zaglądać do logu
/var/log/fail2ban.log
i patrzeć, jak matołki rozbijają sobie głowy na firewallu 🙂

Jeden komentarz do “Obrona przed namiętnymi nieletnimi. Czyli jak nie wpuścić spamera.”

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.