Jak dodać klucz publiczny SSH na serwer?

Opublikowano: 04.05.2021 - tagi: SSH Serwer Linux Komenda Logowanie

Logowanie się poprzez klucz publiczny/prywatny pozwala na szybki dostęp do serwera. Nie musimy pamiętać hasła wystarczy, że mamy dwa klucze: publiczny i prywatny. Oba klucze powinny znajdować się na komputerze z którego chcemy się logować na serwer. Dodatkowo na serwerze musi się znajdować klucz publiczny. Z tego wpisu dowiesz się jak dodać klucz publiczny na serwer.

Zanim zaczniemy zakładam że:

a) Masz już wygenerowane oba klucze: publiczny i prywatny

b) Masz dostęp do serwera na którym chcesz umieścić ten klucz

c) Twój serwer pozwala na logowanie się przez SSH

Opisywany sposób pokazuję na Linuxie(Ubuntu).

Serwis SSH

Zanim zaczniemy upewnijmy się czy mamy zainstalowane w systemie OpenSSH:

sudo systemctl status ssh.service

Jeśli masz zainstalowany ten serwis i status jest ustawiony jako aktywny(ang.: active) możesz przejść dalej. Jeśli jednak nie, wywołaj te komendy:

sudo apt-get update
sudo apt-get install openssh-server

Dodanie klucza publicznego za pomocą komendy

Ta metoda jest bardzo prosta i szybka. Wystarczy jedna komenda.

ssh-copy-id -i ~/.ssh/public_key_file.pub user@server

Komenda ssh-copy-id sprawi, że nasz klucz publiczny znajdzie się na serwerze. Najpierw poprzez flagę -i określamy ścieżkę do klucza publicznego, który chcemy umieścić na serwerze. Zwykle znajduje się ten plik w katalogu głównym ~/.ssh/. Plik publiczny domyślnie ma rozszerzenie .pub. W kolejnym kroku podajemy użytkownika dla którego chcemy ustawić klucz publiczny i oczywiście serwer na który chcemy się logować.

Kiedy wywołasz komendę zostaniesz poproszony o hasło. Po podaniu poprawnego hasła klucz publiczny powinien zostać dodany na serwerze. I od tej pory, gdy wywołasz:

ssh user@server

nie powinienś być pytany o hasło.