Ubuntu. Настройка ssh ключей для входа в систему

Свежеустановленный сервер Ubuntu 22.04. Настраиваем вход в систему по ssh ключам вместо логина пароля.

Подготовка папок

Выполняем подготовку папок и файла ключа на сервере.

Важный момент при настройке авторизации SSH по ключам — это указать правильные права доступа на папку и файл ключа.

Выполните:

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0644 ~/.ssh/authorized_keys

Предварительная настройка сервера

Разрешим вход с использованием публичного сертификата SHH на сервер и укажем путь до сертификата в настройках SSH, файл sshd_config:

nano /etc/ssh/sshd_config

Раскомментируйте или добавьте значения:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

Настройка SSH сертификатов на сервере

Выполним генерацию ключей SSH:

ssh-keygen -a 1000 -b 4096 -o -t rsa

Укажем путь хранения ключа и его имя:

/root/.ssh/id_rsa

Система так же создаст публичный ключ по данному пути.

Указываем ключевую фразу для доступа к приватному ключу.

Добавляем содержимое файла публичного ключа к файлу сертификата авторизации SSH:

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

Перезапускаем SSH:

sudo service ssh restart 

Настройка подключения PuTTY

Преобразуем приватный ключ в формат ключа PuTTY

При попытке использовать скопированный ключ, PuTTY покажет ошибку: Unable to use key file (OpenSSH SSH-2 private key (new format))
  1. Скопируйте приватный ключ id_rsa (или содержимое ключа в файл) на локальный компьютер;
  2. Запустите программу puttygen (из папки PuTTY);
  3. Нажмите кнопку Load и выберите файл приватного ключа;
  4. Введите пароль на приватный сертификат;
  5. Нажмите Save private key для сохранения приватного ключа в нужном формате (вы можете изменить Key comment, это не повлияет на работу ключа).

Настройка подключения PuTTY с использованием SSH сертификата

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

Connection > SSH > Auth > Private key file for authentication

При успешном подключении после ввода имени пользователя, выйдет запрос ключевой фразы сертификата, после чего вход на сервер должен быть успешно выполнен.

Если при входе на сервер вы получаете сообщение SSH Server refused our key, проверьте правильность прав на папку .ssh и файл authorized_keys, а так же укажите прямой путь до папки с ключами при генерации ключей.

Финальная настройка сервера

Последний шаг настройки SSH — отключение возможности входа на сервер по паролю, в файле конфигурации.

nano /etc/ssh/sshd_config

Раскомментируйте или добавьте значениe:

PasswordAuthentication no

После чего перезапустите службу SSH.

sudo service ssh restart

Настройка авторизации по сертификату SSH — завершена!

Ссылки

https://mhelp.kz/kak-nastroit-ssh-sertifikaty-dlya-vkhoda-na-ubuntu-server/

Оставьте ответ

Ваш адрес email не будет опубликован.

98 ÷ = 98