W tym artykule wyjaśnimy, jak skonfigurować SSH bez haseł w systemie operacyjnym Linux. W tym celu będziemy używać aplikacji Terminal z linii poleceń. Aby otworzyć terminal wiersza poleceń, użyj
Wyjaśniliśmy procedurę opisaną w tym artykule na Ubuntu 20.04 system. Mniej więcej tę samą procedurę można wykonać w Debianie i poprzednich wersjach Ubuntu.
Wykonaj poniższe czynności, aby skonfigurować SSH bez haseł w systemie Linux.
Wygeneruj nową parę kluczy 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 rsaNaciśnij Enter, aby zaakceptować wszystkie pola jako domyślne.
Powyższe polecenie utworzy parę kluczy, i.mi., klucz publiczny i klucz prywatny. Klucz prywatny jest przechowywany w systemie, podczas gdy klucz publiczny jest udostępniany. Te klucze są przechowywane w .folder ssh.
Możesz wyświetlić wygenerowaną parę kluczy, wprowadzając następujące polecenie:
$ ls -l .cisza
Skopiuj klucz publiczny do zdalnego komputera
W następnym kroku skopiuj klucz publiczny do zdalnego systemu, do którego chcesz uzyskać dostęp z systemu lokalnego bez hasła. Użyjemy polecenia ssh-copy-id, które jest domyślnie dostępne w większości dystrybucji Linuksa. To polecenie skopiuje klucz publiczny id_rsa.pub do .plik ssh/authorized_keys w zdalnym systemie.
Składnia ssh-copy-id jest następująca:
$ ssh-copy-id remote_user@remote_IPW naszym przykładzie polecenie to:
$ ssh-copy-id [email protected]
W systemie zdalnym możesz zweryfikować transfer klucza publicznego, wyświetlając plik autoryzowanych_kluczy.
$ kota .ssh/autoryzowane_kluczeUstaw uprawnienia do pliku Authorized_keys w zdalnym systemie na 600. Użyj następującego polecenia, aby to zrobić:
$ chmod 600 .ssh/autoryzowane_kluczeUstaw uprawnienia na .katalog ssh na zdalnym systemie do 700. Użyj następującego polecenia, aby to zrobić:
$ chmod 700 .ciszaDodaj klucz prywatny do agenta uwierzytelniania SSH na serwerze lokalnym
Na naszym lokalnym komputerze dodamy klucz prywatny do agenta uwierzytelniania SSH. Pozwoli nam to zalogować się do zdalnego serwera bez konieczności każdorazowego wpisywania hasła.
Oto polecenie, aby to zrobić:
$ ssh-dodaj
Zaloguj się do zdalnego serwera za pomocą kluczy SSH
Po wykonaniu powyższych kroków spróbuj zalogować się na serwer zdalny. Tym razem będziesz mógł zalogować się na swój zdalny serwer bez podawania hasła.
To wszystko, czego potrzebujesz, aby skonfigurować logowanie SSH bez haseł w Ubuntu 20.04 system. Pamiętaj, że możesz udostępnić klucz publiczny każdemu, ale nigdy nie udostępniaj swojego klucza prywatnego. Każdy, kto ma klucz prywatny, będzie mógł zalogować się do dowolnego systemu posiadającego pasujący klucz publiczny.