From: xf0r3m Date: Sat, 26 Aug 2023 18:04:45 +0000 (+0200) Subject: Tworzenie rozdziału 10. Podrozdział 10.3.3.fail2ban. Rozpoczęto opis pliku konfigurac... X-Git-Url: https://gitweb.morketsmerke.org/?a=commitdiff_plain;h=b41181e88ad56bc5c2818491a39b15f1171b4949;p=mmdev.git Tworzenie rozdziału 10. Podrozdział 10.3.3.fail2ban. Rozpoczęto opis pliku konfiguracyjnego fail2ban. --- diff --git a/articles/terminallog/Linux.Podstawy.html b/articles/terminallog/Linux.Podstawy.html index d182f9b..ee780db 100644 --- a/articles/terminallog/Linux.Podstawy.html +++ b/articles/terminallog/Linux.Podstawy.html @@ -8480,13 +8480,14 @@ and check to make sure that only the key(s) you wanted were added zmianie konfiguracji demona openssh, jednak nie będziemy się skupiać na wszystkich możliwych opcjach poniżej przedstawię tylko te, które mogą nam się przydać na obecnym poziomie - wtajemniczenia + wtajemniczenia. Opisy tych opcji przybliżą nam również nie + co bardziej działanie samego SSH.

Konfiguracja demona openssh znajduje się w pliku: - /etc/ssh/sshd_config. W tym pliku poza instrukcją - Include, wszysktie opcje są ujęte w komentarz. Wartości - tych opcji zawierają rzeczywiste domyślne wartości. Jeśli więc + /etc/ssh/sshd_config. W tym pliku wiele opcji jest + wyłaczonych (ujęte w komentarz), oznacza to, że przechowują one + domyślne wartości. Jeśli więc chcemy coś zmienić w konfiguracji daemona SSH, musimy usunąć początkowy symbol komentarz i zmienić wartość opcji.

@@ -8496,6 +8497,11 @@ and check to make sure that only the key(s) you wanted were added do tego systemu za pomocą SSH podłączyć. Obcnie nie przynosi to rezultatów. Bezpieczeniej jest wyłączyć logowanie za pomocą haseł. +
  • LoginGraceTime - oczekiwanie na wpisanie hasła. + Podczas podłączania się do serwera SSH oczekuje na wpisanie hasła + i ten czas ma swój limit. Domyślnie są to 2 minuty. Po tym czasie + mimo prawidłowo podanego hasła połączenie zostanie zerwane i + trzeba się będzie logować ponownie.
  • PermitRootLogin - Zezwolenie na logowanie się jako superużytkownik. Jeśli dostęp do tego konta nie jest jakos bardzo potrzebny to możemy ustawić wartość tego pola na @@ -8503,6 +8509,10 @@ and check to make sure that only the key(s) you wanted were added często jego konto pada ofiarą ataków siłowych, skupionych na probach odgadnięcia hasła (Przeciwdziałanie tego typu atakom, zostanie przedstawione w tym rozdziale).
  • +
  • PasswordAuthentication - zmiana wartości tej + opcji na no zabroni używania haseł do logowania się. + W użyciu pozostaną wówczas same klucze. Lepiej nie zmieniać tej + opcji, do póki nie załadujemy swojego klucza.
  • X11Forwarding - dość ciekawa opcja pozwala uruchomić program okienkowy na serwerze, kontrolując go z poziomu klienta. Proces programu uruchomiany jest na serwerze, @@ -8513,6 +8523,97 @@ and check to make sure that only the key(s) you wanted were added programu wymaga podania użycia przez klient opcji -Y lub -X.
  • +

    + Oczywiście opcje z omawianego przez nas pliku są opisane na stronie + podręcznika man 5 sshd_config. Po + zapisaniu zmian w pliku konfiguracyjnym demona SSH, należy uruchomić + go ponownie aby nasze zmiany zaczęły działać. +

    +
    +xf0r3m@immudex:~$ sudo systemctl restart ssh.service
    +
    +

    10.3.3. Zabezpieczenie fail2ban

    +

    + Wystawiając otwarty port 22/TCP czyli SSH, możemy zauwać w plikach + dzienników systemowych (plik /var/log/btmp - polecenie + lastb - nieudane próby logowania) wiele prób logowania się, + odgadywania nazwy użytkownika oraz hasła. Możemy wpaść na pomysł + wyłączenia wyłaczenia logowania za pomocą hasła. Jest to pewne + rozwiązanie, jednak: +

    + +

    + Co jeśli serwer ma być podpięty do domeny, i umożliwiać logowania + dużej ilości użytkowników? Wtenczas administrator będzie musiał + spędzić trochę kariery na dodaniu tych wszystkich kluczy. A to + nie koniec, ponieważ rotacje pracowników zdarzają się dość często. + W tym wypadku nie możemy zablokować logowania za pomocą hasła. +

    +

    + Istnieje kompromis między logowaniem za pomocą hasła a ograniczeniem + odgadywania dostępu przez różnego rodzaju automaty. Jest nim + fail2ban. Jest to usługa monitorująca próby + uwierzytelnienia się i po przekroczeniu nie udanych prób odcinająca + dostęp do usługi na jakiś czas. Usługa ta opiera swoje działanie na + dynamicznym tworzeniu i usuwaniu reguł zapory sieciowej. +

    +

    + Uwaga! Na Debianie fail2ban nie posiada w swoich zależnościach + pakietu zapory, dlatego też należy pamiętać, żeby dopisać go podczas + instalacji programu. Pakiet fail2ban znajduje się w + repozytoriach. +

    +

    + Aby banowanie miało skutek konfiguracja narzędzia musi + znaleźć się w pliku /etc/fail2ban/jail.conf. Domyślnie ten + plik zawiera bardzo dużo różnych opcji, sekcji oraz wartości. + Poniżej umieściłem minimalną działającą konfigurację narzędzia dla + SSH. Fail2ban może rownież działać z innymi usługami. +

    +
    +[INCLUDES]
    +before = paths-debian.conf
    +
    +[DEFAULT]
    +protocol = tcp
    +chain = <known/chain>
    +port = 0:65535
    +
    +banaction = iptables-multiport
    +action = %(banaction)s[port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]
    +
    +[sshd]
    +enabled = true
    +port = 2022
    +filter = sshd
    +maxretry = 3
    +findtime = 5m
    +bantime = 30m
    +backend = systemd
    +
    +

    + W piewszej sekcji ([INCLUDES]) + znajduje się jedna opcja wskazująca plik z konfiguracją scieżek + przeznaczoną + dla wybranej dystrybucji. Każda dystrybucja może zawierać w różnych + miejscach komponenty potrzebne mu do działania stąd ten plik. Sama + sekcja zawiera może zawierać dodatkowe konfiguracje, które mogą być + interpretowane przez program przed interpretacją sekcji przeznaczonej + dla wybranej usługi (opcja before). +

    2022; COPYLEFT; ALL RIGHTS REVERSED;