5 najlepszych praktyk bezpieczeństwa serwera OpenSSH

5 najlepszych praktyk bezpieczeństwa serwera OpenSSH

Ssh (Bezpieczny shelL) to protokół sieciowy open source, który służy do łączenia lokalnych lub zdalnych serwerów Linux do przesyłania plików, wykonania zdalnych kopii zapasowych, zdalnego wykonywania poleceń i innych zadań związanych z siecią przez polecenie SCP lub polecenie SFTP między dwoma serwerami, które łączą się na a bezpieczny kanał przez sieć.

W tym artykule pokażę ci kilka prostych narzędzi i sztuczek, które pomogą ci zaostrzyć bezpieczeństwo serwera SSH. Tutaj znajdziesz kilka przydatnych informacji o tym, jak zabezpieczyć i zapobiegać serwerom SSH brutalna siła I Ataki słownika.

1. Odmowa

Odmowa to oparty na otwartych źródłoch skrypt bezpieczeństwa zapobiegania zapobiegawcom dla serwerów SSH, który został napisany w języku programowania Python, który ma być uruchamiany przez administratorów systemu Linux i użytkowników do monitorowania i analizy dzienników dostępu do serwera SSH dla nieudanych prób logowania wie jako Ataki oparte na słowniku I Ataki brutalnej siły.

Skrypt działa przez zakaz Ip adresy po ustalonej liczbie nieudanych prób logowania, a także zapobiegają uzyskaniu dostępu do serwera.

Funkcje DenyHosts
  • Śledzi /var/log/bezpiecznie Aby znaleźć wszystkie udane i nieudane próby logowania i filtruje je.
  • Miej oko na wszystkie nieudane próby logowania przez użytkownika i obrażającego hosta.
  • Obserwuje każdego istniejącego i nieistniejącego użytkownika (np. XYZ) Gdy próba nieudanego logowania.
  • Śledzi każdego obrażającego się użytkownika, hosta i podejrzanych prób logowania (jeśli wiele awarii logowania) zakazuje hosta Ip adres, dodając wpis do /etc/hosts.zaprzeczyć plik.
  • Opcjonalnie wysyła powiadomienie e -mail o nowo zablokowanych hostach i podejrzanych loginach.
  • Utrzymuje również wszystkie prawidłowe i nieprawidłowe próby logowania użytkownika w osobnych plikach, dzięki. Że możemy usunąć to konto lub zmienić hasło lub wyłączyć powłokę dla tego użytkownika.

[Możesz także polubił: jak blokować ataki Brute Force SSH przy użyciu odmowy]

2. Fail2ban

Fail2ban jest jednym z najpopularniejszych wtargnięć typu open source wykrycie/zapobieganie ramy napisane w pyton język programowania. Działa przez skanowanie plików dziennika, takich jak /var/log/bezpiecznie, /var/log/auth.dziennik, /var/log/pwdfail itp. Dla zbyt wielu nieudanych prób logowania.

Fail2ban służy do aktualizacji Netfilter/iptables lub opakowanie TCP zastępy niebieskie.zaprzeczyć plik, aby odrzucić atakującego Ip Adres dla określonego czasu. Ma również zdolność do odłączenia zablokowanego adresu IP przez określony czas ustalony przez administratorów. Jednak pewna minuta oddziału jest więcej niż wystarczająca, aby zatrzymać takie złośliwe ataki.

Funkcje Fail2ban
  • Wielokrotnie I Wysoko konfigurowalne.
  • Obsługa rotacji plików dziennika i może obsłużyć wiele usług, takich jak (Sshd, VSFTPD, Apache, itp).
  • Monitoruje pliki dziennika i szukaj znanych i nieznanych wzorów.
  • Zastosowania Netfilter/iptables I Opakowanie TCP (/etc/hosts.zaprzeczyć) Tabela, aby zakazać atakujących IP.
  • Uruchamia skrypty, gdy dany wzór został zidentyfikowany dla tego samego adresu IP, więcej niż X czasy.

[Może się również spodobać: Jak używać fail2ban, aby zabezpieczyć serwer Linux]

3. Wyłącz logowanie root

Domyślnie systemy Linux są wstępnie skonfigurowane, aby umożliwić zdalne loginy SSH dla wszystkich, w tym źródło Sam użytkownik, który pozwala wszystkim bezpośrednio zalogować się do systemu i uzyskać dostęp do root. Pomimo faktu, że serwer SSH pozwala na bezpieczniejszy sposób wyłączyć Lub włącz loginy root, zawsze dobrym pomysłem jest wyłączenie dostępu do korzeni, utrzymując serwery nieco bezpieczne.

Jest tak wiele osób próbujących brutalnie siły relacje korzeniowe za pośrednictwem Ataki SSH po prostu dostarczając różne nazwy konta i hasła, jeden po drugim. Jeśli jesteś administratorem systemu, możesz sprawdzić dzienniki serwera SSH, gdzie znajdziesz szereg nieudanych prób logowania. Głównym powodem wielu nieudanych prób logowania jest posiadanie wystarczająco słabych haseł Hakerzy/atakujący próbować.

Jeśli masz silne hasła, prawdopodobnie jesteś bezpieczny, lepiej jest wyłączyć login root i mieć regularne osobne konto do zalogowania się, a następnie użyć sudo Lub Su Aby uzyskać dostęp do korzenia, gdy jest to wymagane.

[Może się również polubił: Jak wyłączyć login SSH Root i ograniczyć dostęp SSH w Linux]

4. Wyświetl sztandar SSH

To jedna z najstarszych funkcji dostępnych od początku Projekt SSH, Ale prawie nie widziałem, aby ktokolwiek go używał. W każdym razie uważam, że jest to ważna i bardzo przydatna funkcja, której użyłem dla wszystkich moich serwerów Linux.

Nie dotyczy to żadnych celów bezpieczeństwa, ale największą zaletą tego banera jest to, że jest on używany do wyświetlania SSH Wiadomości ostrzegawcze Do Nieautoryzowany Uzyskaj dostęp do wiadomości dla autoryzowanych użytkowników przed monitem hasła i po zalogowaniu użytkownika.

[Może się również polubił: jak chronić loginy SSH za pomocą komunikatów banerowych SSH i MOTD]

5. Logowanie bez hasła SSH

Jakiś Logowanie bez hasła SSH z Ssh keygen ustanowi relację zaufania między dwoma Serwery Linux który robi transfer plików I synchronizacja dużo łatwiej.

Jest to bardzo przydatne, jeśli masz do czynienia ze zdalnym zautomatyzowanym kopią zapasową, zdalne wykonywanie skryptów, przesyłanie plików, zdalne zarządzanie skryptami itp. Bez wprowadzania hasła za każdym razem.

[Może się również spodobać: Jak skonfigurować logowanie SSH bez hasła w Linux [3 łatwe kroki]]]

Aby dodatkowo zabezpieczyć serwer SSH, przeczytaj nasz artykuł na temat bezpieczeństwa i harten OpenSsh Server