Создание ssh ключей

Всегда делаю по алгоритму ed25519. Все же гораздо лучше производительность, чем у RSA, ну и говорит еще и безопасность.

Генерируем ключ:

ssh-keygen -t ed25519

Просмотр публичного ключа:

cat ~/.ssh/id_ed25519.pub

Просмотр приватного ключа:

cat ~/.ssh/id_ed25519

Кидаем ключ в авторизованные, чтобы потом можно было подключиться к серверу:

cat ~/.ssh/id_ed25519.pub >> ~/.ssh/authorized_keys

Дальше я обычно удаляю приватный ключ с сервера:

rm ~/.ssh/id_ed25519

Теперь, если нужно, идем в конфиг SSH:

nano /etc/ssh/sshd_config

Находим строку PasswordAuthentication и меняем yes на no. Если ее нет, то нужно добавить.

Проверяем:

sshd -T | grep authentication

Если высвечивается строка с параметром YES, значит SSH использует какой-то еще конфиг. Обычно это актуально на VPS, которые разворачиваются с помощью cloud-init.

ls -l /etc/ssh/sshd_config.d/

Нужно отредактировать строку в файле, который отобразился, или добавить ее.