DenyHosts – zaawansowana konfiguracja

DenyHosts jest programem napisanym w Pythonie i jest jednym z najlepszych narzędzi do zabezpieczania SSH przeciw ataków brute force stosowanymi najczęściej przez boty.

Plik konfiguracyjny mieści się w

/etc/denyhosts.conf

w nim będziemy dokonywać całą konfigurację programu, na początek najważniejsza opcja

SECURE_LOG

odpowiada za ścieżkę do logów SSH

HOSTS_DENY

opcja tyczy się również położenia pliku z logami, jeśli instalowaliśmy program z paczki (np. pod Debianem) to nie trzeba tych dwóch pierwszych opcji modyfikować

PURGE_DENY

odpowiada za czas po jakim IP będą odblokowywane, jeśli opcja jest bez parametrów to oznacza to, że nigdy

BLOCK_SERVICE

tutaj ustawiamy czy blokowany ma być dostęp tylko do SSH czy do wszystkich usług serwera, standardowo opcja jest ustawiona na ALL, czyli blokowanie dostępu do wszystkich usług

DENY_THRESHOLD_INVALID

po ilu nieudanych próbach logowania na konta których nie ma w /etc/passwd (ogólnie mówiąc plik z listą kont w systemie) ma być blokowany dostęp, jest to opcja zabezpieczająca przeciw atakom słownikowym

DENY_THRESHOLD_VALID

natomiast ta opcja odpowiada za ilość prób logowania na konta, które istnieją w /etc/passwd

DENY_THRESHOLD_ROOT

ilość prób logowania na konto root (główne konto administratora systemu)

DENY_THRESHOLD_RESTRICTED

odpowiada za ilość prób logowania na konta znajdujące się w /var/lib/denyhosts/restricted-usernames (standardowo), polecam ustawić wartość 1, a do pliku /var/lib/denyhosts/restricted-username dopisać konta, które nigdy nie powinny mieć możliwości logowania na SSH np. mysql, więcej tutaj

ADMIN_EMAIL

tutaj możemy ustawić adres e-mail admina na który mają dochodzić powiadomienia o blokowaniu danego IP, raczej nie polecam ustawiania tej opcji na większych serwerach :-), wszystkie opcje zaczynające się od

SMTP_

odpowiadają za sposób wysyłania poczty i dane konta z którego będzie wysyłane powiadomienie o blokadzie, natomiast wszystkie opcje zaczynające się od

AGE_RESET_

odpowiadają za czas naliczania prób logowania

SYNC_SERVER

bardzo przydatna opcja pozwalająca na synchronizację bazy blokowanych adresów IP, szczerze polecam

SYNC_INTERVAL

czas co ile lista będzie synchronizowana baza

SYNC_UPLOAD

czy program ma wysyłać zablokowane przez nasz serwer adresy IP

SYNC_DOWNLOAD

czy program ma ściągać listę IP zablokowanych adresów przez innych użytkowników programu, polecam obie powyższe opcje włączyć (yes)

SYNC_DOWNLOAD_THRESHOLD

bardzo ważna opcja, ile różnych serwerów musi wysłać dane IP, żeby zostało zablokowane na naszym serwerze, polecam wartość 3 lub więcej, to by było na tyle w temacie konfiguracji DenyHosts :).

Poprzedni post

Dlaczego warto używać Linuksa?

Następny post

Budowanie paczek deb

Powiązane posty

Limity deskryptora pliku i Dovecot (Debian)

Jeden z moich serwerów poczty osiągnął ostatnio maksymalny limit połączeń IMAP i byłem zmuszony zwiększyć wartość login_max_processes_count. Jednakże po restarcie usługi pojawił się poniższy błąd:

IMAP/POP3 mail server: dovecotWarning: fd limit 1024 is lower than what Dovecot can use under full load (more than 1512). Either grow the limit or change login_max_processes_count and max_mail_processes settings

Po dłuższym zastanowieniu doszedłem do wniosku, że mowa chodzi o limit deskryptora pliku.

Więcej...

Założenie tunelu IPv6

Postaram się jak najprościej opisać założenie tunelu IPv6. Wiele jest faqów na temat IPv6, lecz w każdym z nich opisują tylko teorię. Postaram się nie owijać w bawełnę tylko krok po kroku opisać zalożenie sobie tunelu i skonfigurowanie systemu. Według mnie najszybciej można dostać tunel na www.xs26.net . Po założeniu tam konta i zalogowaniu się klikamy na Maintaner Object i tworzymy obiekt. Może to być coś w stylu JANEK-XS26, ustawiamy hasło i tworzymy. Teraz przechodzimy do zakładki Tunnels, po wpisaniu IP, ustawieniu systemu operacyjnego i kraju tworzymy tunel. Pózniej ustawiamy swojego PoPa, najlepiej ustawić na Poland. Teraz wypadałoby zrobić sobie strefę, a więc klikamy Zone i tworzymy sobie strefę. To już wszystko jeśli chodzi o zakładanie tunelu, teraz jeszcze tylko konfiguracja systemu. IPv6 musi być wkompilowane w jądro systemu, aby sprawdzić czy masz wkompilowane wpisz:

root@localhost#: modprobe ipv6

Więcej...

Tunelowanie SSH, czyli anonimowe połączenia SSH

Trasowanie cebulowe (ang. onion routing) polega na wielokrotnym szyfrowaniu wiadomości, a następnie przesyłaniu jej przez szereg węzłów zwanych routerami cebulowymi (ang. onion routers). Każdy z nich usuwa warstwę szyfrowania w celu uzyskania informacji o dalszym trasowaniu i przesyła dane do następnego routera. Takie działanie zapobiega ujawnieniu węzłom pośredniczącym pochodzenia, odbiorcy oraz treści wiadomości. Sieć TOR dominuje w wykorzystywaniu tejże technologii. W tym wpisie postaram się przybliżyć rzadko używaną opcje SSH ProxyCommand, pozwalającą określić program, przez który będą przekazywane połączenia.

Więcej...