Налаштовуємо ssh ключі в (l)ubuntu/debian

Налаштовуємо вхід на сервер по ssh за допомогою ключів,
відключаємо вхід по паролю

на клієнті ((l)ubuntu) згенеруємо ключі

$ cd /home/my_user/.ssh
$ ssh-keygen -t ed25519

на сервері (debian) пропишемо наш публічний ключ -
додамо строчку нашого my_key.pub -- якщо ми назвали ключ my_key

vim /home/server_user/.ssh/authorized_keys
# or
# vim /root/.ssh/authorized_keys

ssh-ed25519 AAA... my_user@pc

перезапустимо сервіс

service ssh restart

нагадування про роботу з vim -

i -- розпочати редагування
Esc -- закінчити редагування
:w! -- зберегти
:q! -- вийти

на клієнті пропишемо деякі налаштування для зручності -

$ sudo vim /etc/ssh/ssh_config

Host server1
  HostName 127.0.0.1
  IdentityFile /home/my_user/.ssh/my_key
  user server_user
  SendEnv LANG LC_*
  HashKnownHosts yes
  GSSAPIAuthentication yes
  
Host server1r
  HostName 127.0.0.1
  IdentityFile /home/my_user/.ssh/my_key
  user root
  SendEnv LANG LC_*
  HashKnownHosts yes
  GSSAPIAuthentication yes

127.0.0.1 -- замінимо на IP нашого сервера

тепер ми можемо ввійти на сервер по ssh за допомогою ключів,
при цьому скориставшись коротенькою командою -

$ ssh server1
# or
$ ssh server1r

без цих налаштувань-зручності можна обійтись --

$ ssh -i /home/my_user/.ssh/my_key server_user@127.0.0.1

ми можемо відключити вхід по паролю - на сервері -
(після того, як ми переконались, що можемо підключатись до сервера за допомогою ключів)

sudo vim /etc/ssh/sshd_config

# знайти та розкоментувати
PubkeyAuthentication yes
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

sudo service ssh restart