Zabezpiecz swój SSH połączeniem bez hasła

Zabezpiecz swój SSH połączeniem bez hasła

Wstęp

SSH jest w niezbędnym narzędziu dla każdego użytkownika Linux, ale wiele osób nie wykorzystuje swoich solidnych możliwości, a mianowicie bezpieczne loginy z klawiszami.

Pary kluczy SSH pozwalają na logowanie znacznie bardziej bezpiecznie poprzez ograniczenie login do tylko tych komputerów, które posiadają zaszyfrowany klucz, który został sparowany z celem logowania. W przeciwieństwie do haseł, klawiszów tych nie można odgrywać, więc nie trzeba się martwić o kogoś, kto próbuje tysięcy haseł, aby włamać się do komputera lub serwera. Brak klucza nie ma dostępu.

Dobra wiadomość jest taka; Te klucze są bardzo łatwe w skonfigurowaniu i użyciu, więc nie musisz się martwić o utrzymanie konfiguracji lub brodzenie przez długi proces konfiguracji.

Potrzeba kluczy

Jeśli uruchamiasz maszynę do skierowania publicznego, potrzebujesz tych kluczy. Przepraszam, ale jeśli używasz uwierzytelniania hasła, jesteś bardziej wrażliwy.

Hasła są okropne. To było dobrze znane od jakiegoś czasu. Większość głównych aplikacji internetowych i narzędzi, które opierają się na hasłach, oferują uwierzytelnianie 2-czynnik. W przypadku SSH klucze są drugim współczynnikiem uwierzytelniania. Zapewniają drugi krok w gwarantowaniu tylko autoryzowanego dostępu do systemu.

Generowanie pary kluczowej

Większość pracy tutaj jest wykonywana na żądanym systemie klienta, a wyślesz jeden z kluczy w pary na serwerze, do którego chcesz uzyskać dostęp.

Jeśli nie chcesz zbytnio zainwestować w dostosowywanie procesu generowania kluczy, to w porządku. Większość opcji zapewnianych przez polecenie, które generuje klucze, nie jest wcale przydatna w powszechnych okolicznościach.

Najbardziej podstawowym sposobem generowania klucza jest następujące polecenie Linux.

$ ssh -keygen -t rsa

Dzięki temu poleceniu uruchamiasz prawie wszystko z domyślnymi. Jedyną rzeczą, którą musisz określić, jest rodzaj używanego szyfrowania, RSA.

Zapyta Cię, czy chcesz podać hasło do klucza. To nie jest całkowicie konieczne, a wiele osób nie. Jeśli chcesz i dodajesz warstwę bezpieczeństwa, dodaj także silną pensję. Pamiętaj, że będziesz musiał go wprowadzić za każdym razem, gdy łączysz się za pomocą tego klucza.

Istnieje inna opcja, której możesz użyć, jeśli chcesz dodać więcej bezpieczeństwa do swojego klucza. Dodając -B flaga do twojego ssh-keygen polecenie, możesz określić ilość użytych bitów. Domyślnie jest 2048, co powinno być w porządku w większości przypadków. Oto jak wygląda przykład.

$ ssh -keygen -b 4096 -t RSA

Przesyłanie klucza do serwera

Aby wszystko działało, musisz podać maszynę, którą próbujesz połączyć z częścią pary kluczowej. W końcu dlatego są generowane w parach. Pliki z .klucz jest twoim kluczem prywatnym. Nie udostępniaj ani nie dajcie tego. Ten z .pub rozszerzenie należy jednak wysłać do maszyn, z którymi chcesz się połączyć.

Większość systemów Linux ma bardzo prosty skrypt, który pozwala nacisnąć klucz publiczny do maszyn, z którymi chcesz się połączyć. Ten skrypt, ssh-copy-id pozwala wysłać klawisz za pomocą tylko jednego polecenia.

$ ssh-copy-id -i ~/.ssh/id_rsa.Nazwa użytkownika [email protected]

Oczywiście zastąpisz nazwę użytkownika użytkownika. Nazwa domeny lub nazwa hosta też by działała.

Jeśli skonfigurowałeś serwer do używania SSH na innym porcie, możesz określić port do ssh-copy-id za pomocą -P flaga, a następnie pożądany numer portu.

Logowanie

Logowanie za pośrednictwem SSH powinno być mniej więcej tak samo jak wcześniej, z wyjątkiem tego, że będziesz używać pary kluczowej do sprawdzania poprawności. Po prostu połącz się z SSH, jak zwykle.

$ ssh uż[email protected]

Jeśli nie skonfigurowałeś hasła dla swojego klucza, automatycznie się zalogujesz. Jeśli dodasz hasło, zostaniesz poproszony o podanie go, zanim system zostanie zalogowany.

Wyłączanie loginów haseł

Teraz, gdy używasz klawiszy SSH do logowania się, dobrym pomysłem jest wyłączenie loginów opartych na hasłach dla SSH. W ten sposób nie jesteś podatny na kogoś odkrywa hasła do jednego z twoich kont i używa. Wszystkie loginy haseł zostaną wyłączone.

Na komputerze, z którym chcesz się połączyć, prawdopodobnie serwer, znajdź plik konfiguracyjny SSH. Zwykle znajduje się pod adresem /etc/ssh/sshd_config. Otwórz ten plik w wybranym edytorze tekstu jako root lub z sudo.

# vim/etc/ssh/sshd_config

Znajdź linię, HasłoAuthentication i odkształcenie, jeśli musisz i ustaw jego wartość NIE.

Hasło Automatyka nr

Istnieje kilka innych opcji, które możesz chcieć zmienić w tej sekcji, aby uzyskać lepsze bezpieczeństwo. W ten sposób tylko logowanie z Twoim kluczem będą dozwolone.

HasłoAuthentication Brak zezwolenia SWORDS BRAK SPADEATAMINETICATIONAT NO 

Po zakończeniu zapisz i wyjdź z pliku. Będziesz musiał ponownie uruchomić usługę SSH, aby zmiany weszły.

Systemctl restart sshd

Lub

/etc/init.D/sshd restart

Zamykanie myśli

Przy minimalnym wysiłku połączenie SSH twojego serwera stało się znacznie bezpieczniejsze. Hasła są problematyczne na wiele sposobów, a SSH jest jedną z najczęściej atakowanych usług w Internecie. Poświęć czas na korzystanie z klawiszy SSH i upewnij się, że serwer jest chroniony przed atakami hasłem.

Powiązane samouczki Linux:

  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Mint 20: Lepsze niż Ubuntu i Microsoft Windows?
  • Jak połączyć się z głośnikiem Bluetooth na XFCE, Mate i…
  • Podstawy matematyki komputerowej: binarny, dziesiętny, sześciokadcica, ośmiorot
  • Ubuntu 20.04 Hadoop
  • Hung Linux System? Jak uciec do wiersza poleceń i…
  • Odzyskaj swoją prywatność i bezpieczeństwo w erze cyfrowej
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Lista najlepszych narzędzi Kali Linux do testowania penetracji i…