Последнее время меня частенько спрашивают как можно заходить в ssh не вводя пароля, ну или как вариант обезопасить себя. Для этого в OpenSSH предусмотрена авторизация по RSA ключу. Создавать ключи мы будем для пользователя root, по аналогии можно сделать для любого юзера. За генерацию пары ключей отвечает команда ssh-keygen.
Переходим в папку пользователя root:
cd /root
Создаем папку:
mkdir .ssh
Для генерации пары ключей выполняем:
ssh-keygen -t rsa
В процесса увидим:
[root@zahostim ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): (путь к ключу жмем ENTER)
Enter passphrase (empty for no passphrase): (пароль для ключа, если нужен водим если нет жмем ENTER)
Enter same passphrase again: (повторяем пароль)
После увидим:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
Ключи готовы. Мы получили id_rsa (приватный) и id_rsa.pub (публичный) Теперь публичный ключ нужно переименовать.
mv id_rsa.pub authorized_keys
Приватный ключ не стоит хранить на сервере любым удобным способом забираем его к себе на локальную машину.
Настройка SSH сервера для авторизации по ключу.
В файле sshd_config:
ee /etc/ssh/sshd_config
находим и раскоментируем строки:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
Перегружаем ssh:
service sshd restart
Все теперь можно использовать авторизацию по ключам. Единственная проблема если будете авторизовываться с windows, а точнее с putty, то в ответ вы получите ошибку
Unable to use key file (OpenSSH SSH2 private key).
Для использования в putty его нужно сконвертировать программой puttygen.
Запускаем, загружаем туда приватный ключ и дальше жмем save private key. Сохраняем…
Теперь в putty, добавляем сгенерированный приватный ключ и авторизовываемся по ssh…
p
5,183 всего просмотров, 1 за сегодня