Zautomatyzuj login SSH bez hasła

Zautomatyzuj login SSH bez hasła
Jeśli chcesz wykonywać zadania na zdalnym komputerze za pomocą SSH, musisz włączyć automatyczne loginy SSH, aby wyeliminować potrzebę wprowadzenia hasła w każdym przypadku. Może to być niezwykle pomocne, jeśli nazywasz SSH z polecenia powłoki.

W tym samouczku dowiesz się, jak zaimplementować loginy SSH bez hasła w trzech prostych krokach.

Co to jest SSH?

Secure Shell, powszechnie znany jako SSH, to protokół sieciowy używany do bezpiecznych połączeń między klientem a zdalnym serwerem. Jest to usługa kryptograficzna, która umożliwia użytkownikom zdalne logowanie się i zarządzanie maszynami. Domyślnie używa nazwy użytkownika i uwierzytelniania hasła.

Jak włączyć logowanie bez hasła SSH

Konfigurowanie zautomatyzowanego logowania SSH bez hasła w Linux jest bardzo proste. Wszystko, czego potrzebujesz, to wygenerowanie klucza publicznego i skopiowanie go do zdalnego hosta.

Kroki podane poniżej opisują proces tworzenia i kopiowania klucza publicznego do zdalnego hosta.

Krok 1. Generowanie nowego klucza SSH

Aby wygenerować nową parę klucza SSH, użyj poniższego polecenia:

ssh-keygen

Będzie to interaktywnie generować klucz publiczny i prywatny, którego można użyć do uwierzytelnienia SSH.

Wyjście będzie podobne do tego pokazanego poniżej:

[centos@centos8 ~] $ ssh-keygen
Generowanie publicznej/prywatnej pary kluczy RSA.
Wprowadź plik, w którym można zapisać klucz (/home/centos/.ssh/id_rsa):
Wprowadź hasło (pusta dla braku pensy):
Wprowadź ponownie ten sam passfraza:
Twoja identyfikacja została zapisana w id_rsa.
Twój klucz publiczny został zapisany w id_rsa.pub.
Kluczowy odcisk palca to:
SHA256: GKJD1BEFH00O4TP2XD7VPBIBJABC7CJZSGXJDLXGCSS [email protected]
Losowy obraz klucza to:
+---[RSA 3072]----+
|. o+b.+o+o .|
| . o.= OB o.O… o |
|. +o.OB = x + o |
| . o =+o* o . + |
|… +E s + . |
|… |
|. |
|. |
|. |
+----[SHA256]-----+
[centos@centos8 ~] $

NOTATKA: Możesz utworzyć parę klawiszy SSH bez hasła, naciskając Enter podczas procesu tworzenia.

Jeśli szukasz maksymalnego bezpieczeństwa, upewnij się, że ustawienie piszpla. W przypadku zautomatyzowanych loginów po prostu pomiń hasło.

Krok 2. Sprawdź klucz SSH

Aby sprawdzić, czy para klucza SSH wygenerowała pomyślnie, możesz wymienić pliki w ~/.katalog SSH jak pokazano:

$ ls -la ~//.ssh

Wymieśli to klucz prywatny i publiczny, jak pokazano:

DRWX------. 2 centos centu 38 maja 17 01:14 .
DRWX------. 17 centrów 4096 maja 17 01: 14…
-RW-------. 1 Centos Centos 2635 17 01:14 ID_RSA
-RW-R-R--. 1 Centos CentOS 588 17 01:14 ID_RSA.pub

Krok 3. Skopiuj klucz publiczny do zdalnego hosta

Z pary klawiszy SSH musimy skopiować go do hosta zdalnego. Zatem logowanie bez hasła.

Najprostszym sposobem skopiowania klucza publicznego do zdalnego hosta jest użycie polecenia SSH-Copy-ID jako:

SSH-COPY-ID Nazwa użytkownika@remote_ip_address

Uwierzytelni to SET Użytkownik i dołączy klucz publiczny do pliku autoryzowanego_keys w zdalnym hoście.

Po przesłaniu klawisza możesz zalogować się do zdalnego hosta za pomocą polecenia:

SSH Nazwa użytkownika@remote_host

Zaloguje się to automatycznie bez konieczności hasła.

NOTATKA: Upewnij się, że masz swoją prywatną parę kluczy do pomyślnego zalogowania się.

Wniosek

Ten samouczek pokazał, jak skonfigurować logowanie bez hasła SSH za pomocą par kluczowych. To pozwala zautomatyzować zadania i zarządzać wieloma zdalnymi hostami.