Jak skonfigurować SSH bez haseł

Jak skonfigurować SSH bez haseł
SSH służy do zdalnego logowania się do serwerów do uruchamiania poleceń i programów. Możesz zalogować się do systemów zdalnych za pośrednictwem uwierzytelniania hasła i uwierzytelniania klucza publicznego. Jeśli regularnie używasz SSH do łączenia się ze zdalnymi serwerami, metoda uwierzytelniania klucza publicznego jest dla Ciebie najlepsza. Ta metoda jest bezpieczną i bez hasła metodę logowania.

W tym artykule wyjaśnimy, jak skonfigurować SSH bez haseł w systemie operacyjnym Linux. W tym celu będziemy używać aplikacji terminalowej wiersza poleceń. Aby otworzyć terminal wiersza poleceń, użyj skrót klawiszowy.

Wyjaśniliśmy procedurę wymienioną w tym artykule na temat Ubuntu 20.04 System. Mniej więcej tę samą procedurę można zastosować w wersjach Debian i poprzednich Ubuntu.

Wykonaj poniższe czynności, aby skonfigurować SSH bez haseł w systemie Linux.

Wygeneruj nową parę klucza SSH na komputerze lokalnym

Pierwszym krokiem będzie wygenerowanie nowego klucza SSH w systemie lokalnym. Aby to zrobić, wydaj następujące polecenie w terminalu:

$ ssh -keygen -t rsa

Naciśnij Enter, aby zaakceptować wszystkie pola jako domyślne.

Powyższe polecenie utworzy klawiaturę, i.mi., klucz publiczny i klucz prywatny. Klucz prywatny jest przechowywany w systemie, a klucz publiczny jest udostępniany. Te klucze są przechowywane w .Folder SSH.

Możesz wyświetlić klawiaturę generowany, wprowadzając następujące polecenie:

$ ls -l .ssh

Skopiuj klucz publiczny do zdalnego maszyny

W następnym kroku skopiuj klucz publiczny do systemu zdalnego, do którego chcesz uzyskać dostęp z systemu lokalnego bez haseł. Użyjemy polecenia SSH-Copy-ID, które jest domyślnie dostępne w większości dystrybucji Linux. To polecenie skopiuje klucz publiczny ID_RSA.pub do .plik ssh/autoryzowany_keys w systemie zdalnym.

Składnia dla SSH-Copy-ID jest następująca:

$ ssh-copy-id remote_user@remote_ip

W naszym przykładzie poleceniem byłoby:

$ SSH-COPY-ID [email protected]

W systemie zdalnym możesz zweryfikować przeniesienie klucza publicznego, przeglądając plik autoryzowanego_keys.

$ cat .ssh/autoryzowane_keys

Ustaw uprawnienie w pliku autoryzowanym_keys w systemie zdalnym na 600. Użyj następującego polecenia, aby to zrobić:

$ CHMOD 600 .ssh/autoryzowane_keys

Ustaw zgodę na .Katalog SSH w systemie zdalnym do 700. Użyj następującego polecenia, aby to zrobić:

$ CHMOD 700 .ssh

Dodaj klucz prywatny do agenta uwierzytelniania SSH na serwerze lokalnym

Na naszym komputerze lokalnym dodamy klucz prywatny do agenta uwierzytelniania SSH. To pozwoli nam zalogować się na zdalnym serwerze bez konieczności wprowadzania hasła za każdym razem.

Oto polecenie:

$ ssh-add

Zaloguj się do zdalnego serwera za pomocą klawiszy SSH

Po wykonaniu powyższych kroków spróbuj zalogować się do pilota. Tym razem będziesz mógł zalogować się na swoim zdalnym serwerze bez wprowadzania hasła.

To wszystko, czego potrzebujesz, aby skonfigurować login SSH bez haseł w Ubuntu 20.04 System. Pamiętaj, że możesz udostępnić klucz publiczny z każdym, ale nigdy nie udostępniać swojego klucza prywatnego. Każdy, kto ma klucz prywatny, będzie mógł zalogować się do dowolnego systemu z pasującym kluczem publicznym.