Podstawowy podkład do zabezpieczenia SSH

(Super Secure) Secure Shell Uproszczony

Wymiana kluczy jest ważna dla bezpiecznego SSH
Wymiana kluczy jest ważna dla bezpiecznego SSH

Spójrzmy prawdzie w oczy, zabezpieczając Secure Shell (lub SSH) może być mniej więcej tak samo myląca jak fabuła podkład filmowy. Ale, podobnie jak w filmie, jest to warte wysiłku. Chociaż możesz znaleźć pełny przewodnik na temat bezpiecznej bezpiecznej powłoki online, przedstawimy Ci przegląd niektórych najlepszych praktyk, których musisz przestrzegać, jeśli naprawdę chcesz być bezpieczny podczas korzystania z SSH. Możesz być zaskoczony, jak łatwo jest słuchać, jeśli nie jest prawidłowo skonfigurowany.

Najlepsze praktyki dotyczące zabezpieczania SSH

Oto podsumowanie głównych rzeczy, które należy dokładnie rozważyć, jeśli korzystasz z SSH i chcesz pozostać bezpieczny.

  • Wymiana kluczy - Zasadniczo będziesz chciał użyć: Diffie-Hellman lub Elliptic Curve Diffie-Hellman, aby dokonać wymiany kluczy. Dzieje się tak, ponieważ oba zapewniają poufność, co utrudnia ludziom szpiegowanie. Jak zapewne wiesz, OpenSSH obsługuje obecnie 8 protokołów wymiany kluczy. Te, których chcesz użyć, to krzywa25519-sha256: ECDH ponad Curve25519 z SHA2 OR Diffie-Hellman-Grupa-Wymiana-sha256: Niestandardowy DH z SHA2.
  • Uwierzytelnianie serwera - Do uwierzytelnienia serwera można użyć czterech algorytmów klucza publicznego. Spośród tych czterech najlepszym rozwiązaniem (ze względu na bezpieczeństwo) jest użycie RSA z SHA1 do celów uwierzytelniania serwera. Sztuczka polega na tym, aby upewnić się, że wyłączysz algorytmy klucza publicznego, których NIE będziesz używać. Można to łatwo obsłużyć za pomocą kilku poleceń. Upewnij się, że pliki inicjujące nie ładują ponownie kluczy, których nie chcesz używać.
  • Uwierzytelnianie klienta - Po skonfigurowaniu czegoś bezpieczniejszego chcesz się upewnić, że wyłączysz uwierzytelnianie za pomocą hasła, które jest podatne na ataki siłowe. O wiele lepiej jest używać uwierzytelniania za pomocą klucza publicznego - tak jak po stronie serwera. Inną opcją jest użycie OTP (jednorazowych haseł), aby utrudnić złym osobom podsłuchiwanie bezpiecznego połączenia danych, aby dowiedzieć się więcej o Tobie.
  • Uwierzytelnianie użytkownika - Jest to ważny aspekt konfiguracji serwera, aby akceptował naprawdę bezpieczne połączenia SSH. Zasadniczo chcesz utworzyć białą listę dozwolonych użytkowników. Spowoduje to zablokowanie nikomu spoza listy nawet próby zalogowania się. Jeśli masz dużą liczbę użytkowników, którzy będą łączyć się z serwerem przez SSH, będziesz chciał użyć AllowGroups zamiast AllowUser, ale nadal jest to stosunkowo łatwe do skonfigurowania.
  • Szyfry symetryczne - Jeśli chodzi o szyfry symetryczne, masz do dyspozycji kilka algorytmów. Po raz kolejny to od Ciebie zależy, czy wybierzesz te najlepsze pod względem bezpieczeństwa. W takim przypadku będziesz chciał użyć chacha20-poly1305@openssh.com, aes256-gcm@openssh.com, aes128-gcm@openssh.com, aes256-ctr, aes192-ctr i aes128-ctr.
  • Kody uwierzytelniania wiadomości - Jeśli używasz trybu szyfrowania AE, nie musisz martwić się o adresy MAC, ponieważ są one już uwzględnione. Z drugiej strony, jeśli wybrałeś trasę CTR, będziesz chciał użyć MAC do tagowania każdej wiadomości. Encrypt-then-MAC to jedyna metoda, której należy użyć, jeśli chcesz mieć pewność, że podczas korzystania z SSH jesteś tak bezpieczny, jak to tylko możliwe.
  • Analiza ruchu - Last but not least, będziesz chciał użyć Usługi ukryte Tora dla Twoich serwerów SSH. Używając tego, sprawisz, że złoczyńcy będą jeszcze trudniejsze, dodając kolejną warstwę ochrony. Jeśli nie korzystasz z sieci LAN, wyłącz ją.

Kiedy skończysz sprawdzać i zmieniać wszystkie powyższe, będziesz chciał uruchomić ssh-v w celu sprawdzenia zmian wprowadzonych w systemie. To proste polecenie wyświetli listę wszystkich algorytmów, których zdecydowałeś się użyć, dzięki czemu możesz łatwo dwukrotnie sprawdzić swoją pracę.

Zaostrz swój system!

To są dobre wskazówki dla każdy serwer podłączony do Internetu, ale są one również niezwykle przydatne, aby upewnić się, że połączenia SSH są tak bezpieczne, jak to tylko możliwe.

  • Instaluj tylko niezbędne oprogramowanie. Więcej kodu oznacza więcej możliwości błędów i exploitów, które mogą być wykorzystane przez złośliwych hakerów.
  • Zastosowanie FOSS (Oprogramowanie bezpłatne / otwarte), jeśli to możliwe, aby zapewnić sobie dostęp do kodu źródłowego. Umożliwi to samodzielne sprawdzenie kodu.
  • Zaktualizuj swoje oprogramowanie tak często jak to możliwe. Pomoże ci to uniknąć znanych problemów, które mogą zostać wykorzystane przez złoczyńców.

Jak wspomniano, powyższe wskazówki to rzeczy, które powinieneś robić, niezależnie od tego, czy próbujesz zabezpieczyć połączenia SSH z serwerem.

SSL na wynos

Wniosek SSL jest taki, że nawet jeśli coś ma w nazwie słowo „bezpieczne” lub „bezpieczeństwo”, nie oznacza to, że będzie tak odporne na ataki, jak to tylko możliwe, jeśli nie skonfigurujesz go poprawnie. Jeśli zarządzasz serwerem i często używasz SSH do łączenia się z nim (lub pozwalasz innym na to), będziesz chciał poświęcić trochę czasu, aby go poprawnie skonfigurować, aby upewnić się, że masz maksymalne bezpieczeństwo.

W SSL.com wierzymy w tworzenie Najlepsze praktyki SSL tak łatwe do zrozumienia i wdrożenia, jak to możliwe.

Subskrybuj biuletyn SSL.com

Nie przegap nowych artykułów i aktualizacji z SSL.com

Bądź na bieżąco i bezpiecznie

SSL.com jest światowym liderem w dziedzinie cyberbezpieczeństwa, PKI i certyfikaty cyfrowe. Zarejestruj się, aby otrzymywać najnowsze wiadomości branżowe, wskazówki i ogłoszenia o produktach od SSL.com.

Będziemy wdzięczni za Twoją opinię

Weź udział w naszej ankiecie i daj nam znać, co myślisz o swoim ostatnim zakupie.