четверг, 29 марта 2012 г.

Настройка безпарольной аутентификации c PuTTY по ssh

Всю приблуду для винды можно скачать отсюда.

Запускаем PuTTYgen. 
В настройках указываем размер ключа 4096. 
Нажимаем "Generate"


Ездим мышей по экрану пока полоса прогресса не доберется до правого края.
Ключи сгенерированы.

Сохраним публичный и частный ключи 
"Save private key" > private.ppk (приватный ключ) 


Далее копируем ключ из оконца.


Теперь необходимо публичный ключ добавить на сервер. Заходим на сервер.
В домашней директории создаем папку .ssh (если таковой нет)
# mkdir .ssh
и назначим права доступа
# chmod 700 ~/.ssh/
Добавляем скопированный ранее ключ. (В PuTTY при нажатии правой клавишей мыши происходит вставка из буфера обмена)
# vi /home/user/.ssh/authorized_keys 
Где user - имя учетки пользователя. В моем случае будет:
# vi /root/.ssh/authorized_keys 
Назначим права доступа для authorized_keys
# chmod 600 ~/.ssh/authorized_keys
Если у нас Centos 6.2 или выше, то чтобы все заработало, нужно решить проблему с SELinux, таким вот
# restorecon -R -v /root/.ssh
образом.

В Known Issues описывается проблема с SSH public key и SELinux:
Make sure that you setup correctly the selinux context of the public key if you transfer it to a CentOS 6 server with selinux enabled. Otherwise selinux might forbid access to the ~/.ssh/authorized_keys file and by matter of consequence key authentication will not work. In order to setup the correct context you can use:
# restorecon -R -v /home/$ACCOUNT/.ssh 
Сервер готов к авторизации данного пользователя по ключу. Осталось лишь настроить PuTTY на использование этого самого ключа. Для этого в окне настройки в левой колонке выбираем пункт SSH, а в нем подпункт Auth. В правой половине открывшегося окна жмем  кнопку Browse и указываем месторасположение второго файла ключа -  private.ppk.

Теперь при соединении с сервером PuTTY будет использовать указанный файл ключа вместо пароля. Ну и последнее, что осталось сделать, это указать PuTTY какое имя пользователя подставлять при подключении к серверу. Для этого в окне настройки в левой колонке выбираем пункт Data, а в правой половине окна в поле Auto-login username вводим имя пользователя.

Выполнив эти два пункта (выбор имени и ключа) не забываем сохранить сессию. Отныне при запуске этой сессии PuTTY будет автоматом подставлять и имя пользователя и ключ (вместо пароля). При этом ничего руками вводить не нужно будет.

Комментариев нет:

Отправить комментарий