Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


07.08.2019

Kurzinformation it-sa, 8-10...

It-sa is one of the leading international trade fairs for IT security. With around 700...
08.07.2019

Narzędzie EDR

ESET Enterprise Inspector
08.07.2019

Usuwanie skutków awarii

Veeam Availability Orchestrator v2
08.07.2019

Indywidualna konfiguracja

baramundi Management Suite 2019
05.07.2019

Technologia Ceph

SUSE Enterprise Storage 6
05.07.2019

Szybkie i bezpieczne...

Konica Minolta bizhub i-Series
05.07.2019

Edge computing

Atos BullSequana Edge
04.07.2019

Terabitowa ochrona

Check Point 16000 i 26000
04.07.2019

Obsługa wideokonferencji

Poly G7500

Ochrona usługi SSH

Data publikacji: 21-01-2019 Autor: Konrad Kubecki
Zapisy z aktywności usługi...

Secure Shell od wielu lat jest podstawowym składnikiem systemów Linux/Unix. Trudno wyobrazić sobie zarządzanie serwerami bez zastosowania usługi SSH. Jednocześnie jest ona jednym z tych elementów, które wymagają najlepszych środków bezpieczeństwa.

 

Brute force to stara, lecz nadal popularna metoda ataku. W kontekście usługi SSH polega na sprawdzaniu kolejnych kombinacji znaków w celu ustalenia hasła dającego dostęp do obranego na cel serwera. Są to więc powtarzające się w dużej ilości próby zalogowania się. Ataki wykorzystujące tę metodę są jednymi z najczęściej spotykanych na serwerach mających bezpośrednie połączenie z internetem, np. serwery hostingowe i routery. W artykule zostały opisane narzędzia ograniczające zagrożenie atakiem brute force oraz metody konfiguracji, które istotnie wpływają na poziom bezpieczeństwa usługi SSH.

> FAIL2BAN

Fail2ban jest usługą, która śledzi bieżące zdarzenia pojawiające się w logach różnych usług sieciowych. Wyszukuje w nich przede wszystkim powtarzające się, nieudane próby logowania.

Reakcją na niepożądane zdarzenia jest czasowe zablokowanie komunikacji ze źródłowym adresem IP poprzez dodanie odpowiedniej reguły do firewalla. Dodatkowo możliwe jest także wysłanie podsumowania z takiej operacji na wskazany adres poczty elektronicznej (np. adres e-mail administratora lub grupowa skrzynka zespołu).

W opisanym przykładzie skupimy się na wykorzystaniu Fail2ban do ochrony usługi SSH przed atakami brute force. Możliwości tego narzędzia są jednak znacznie większe – jest ono niezwykle użyteczne podczas ochrony wielu usług sieciowych. Twórcy Fail2ban zadbali o jego wszechstronność, dzięki czemu wspieranymi i chronionymi produktami są m.in.:

 

  • serwer SSHD,
  • serwery WWW – apache,
  • webowi klienci poczty elektronicznej: roundcube, openwebmail,
  • webowe narzędzia administracyjne: webmin,
  • serwery proxy: squid,
  • serwery FTP: proftpd, pureftpd, wuftpd, vsftpd,
  • serwery pocztowe: postfix, qmail, dovecot,
  • bazy danych: mysql, mongodb.


Instalacja pakietu Fail2ban w systemie CentOS wymaga konfiguracji repozytorium EPEL (Extra Packages for Enterprise Linux). Jest to jedno z popularniejszych i przydatniejszych repozytoriów, zawierających kilkadziesiąt tysięcy pakietów z różnych kategorii, takich jak bezpieczeństwo, development czy narzędzia. Jego instalację w systemie operacyjnym realizuje komenda yum install epel-release -y.

Następnym krokiem może być już instalacja Fail2ban przez komendę yum install fail2ban -y. Narzędzie pracuje jako usługa, więc należy je skonfigurować do automatycznego uruchamiania podczas startu systemu operacyjnego: systemctl enable fail2ban.

Pliki konfiguracyjne usługi znajdują się w katalogu /etc/fail2ban. Można wyróżnić ich cztery kategorie:
 

  • Plik /etc/fail2ban/fail2ban.conf – główny plik konfiguracyjny usługi, zawierający ustawienia globalne. Wśród nich są m.in. target do logowania, poziom logowania, plik logu dla usługi Fail2ban, umiejscowienie pliku pid usługi. Domyślne ustawienia Fail2ban powodują, że traci on dane historyczne/statystyczne po każdym restarcie usługi. W pliku fail2ban.conf znajdują się opcje pozwalające na trwały zapis informacji o blokadach w lokalnej bazie sqlite.
  • Plik /etc/fail2ban/jail.conf – plik konfiguracyjny, w którym znajdują się ustawienia takie jak: czas trwania blokady na firewallu, liczba nieudanych prób wystarczających do zablokowania podejrzanego adresu IP, rodzaj podejmowanej akcji (samo założenie blokady, blokada oraz mail informacyjny), usługa poczty do wysyłania maili, zakres blokowanych portów oraz parametry chronionych usług. Te parametry to przede wszystkim port, na którym dana usługa nasłuchuje, i ścieżka do jej logów.
  • Pliki w katalogu /etc/fail2ban/filter.d – powiązane z poszczególnymi usługami, definiują podstawy do blokad ruchu z danego adresu IP. Zawierają informacje o ochronionej usłudze oraz wzorce komunikatów występujących w logach. Te wzorce to szablonowe komunikaty, jakie mogą wystąpić podczas niechcianych prób logowania do usługi lub podczas podejrzanej aktywności. Przykładowe wzorce dla usługi SSH zostały opisane w ramce obok.
  • Pliki w katalogu /etc/fail2ban/action.d – definiują rodzaj akcji, jaki zostanie podjęty podczas blokowania komunikacji z danym adresem IP.


Plik /etc/fail2ban/jail.conf zawiera konfigurację dla wszystkich usług, które Fail2ban potrafi chronić, jednak ochrona jest domyślnie wyłączona. Zalecanym scenariuszem jest utworzenie pliku /etc/fail2ban/jail.local i włączenie w nim ochrony dla usług, które rzeczywiście tego wymagają. Plik fail­2ban.conf, zgodnie z rekomendacją twórców narzędzia, powinien pozostać w oryginalnej postaci.

Można zatem skopiować plik jail.conf, nadając kopii nazwę jail.local, lub utworzyć pusty plik jail.local i w nim zapisać docelowe ustawienia.

 

[...]

 

Specjalista ds. utrzymania infrastruktury i operacji. Zajmuje się problematyką budowy i utrzymania centrów przetwarzania danych oraz zarządzania nimi i koordynowaniem zmian dotyczących krytycznej infrastruktury IT.  

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"