RU 
Регистрация

хостинг: ValueHost 2.0
           

Помощь


Акции:

Бонус за друга!

SSH: авторизация по ключу

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

Делается это в два приема - на сервере и на локальной машине. В этом примере мы рассмотрим настройку такого подключения с машины под управлением ОС Windows


На сервере выполняем следующие действия:

1. Создаем файлы ключа:


ssh-keygen -t rsa -b 2048 -f ~/.ssh/auth_key_rsa_1042 -N ""


Опция -f задает имя файла. На разных версиях ssh-keygen эта опция может вести себя по-разному, поэтому в случае возникновения неожиданных сообщений рекомендуется убрать эту опцию из команды и использовать стандартное имя файла.
Если ранее был создан ключ, может потребоваться подтвердить создание ключа, написать yes и нажать "Enter".

2. На этом шаге мы разрешаем использование созданного ключа при авторизации:


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


В зависимости от версии ПО, название файла может быть разным — например, может быть и такой файл: ~/.ssh2/authorized_keys.

3. Устанавливаем права только на владельца:


chmod -R 700 ~/.ssh


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

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


cat ~/.ssh/auth_key_rsa_1042

5. Удаляем приватный ключ с сервера:


rm ~/.ssh/auth_key_rsa_1042


Этот шаг нужен из соображений безопасности.



На локальной машине:

1. Сохраняем содержимое буфера обмена в текстовый файл.

Этот шаг выполняется, если ключ был скопирован через буфер обмена, а не по FTP.

2. Открываем PuttyGen, в меню "Conversions" выбираем пункт "Import". В открывшемся окне выбираем сохраненный ранее текстовый файл. Жмем кнопку "Save private key" и сохраняем ключ на машине в формате .ppk.

Связано это с тем, что Putty не воспринимает обычные ключи в формате OpenSSH, поэтому и требуется использовать конвертер PuttyGen.

3. Открываем Putty, вводим адрес сервера в формате login@hostname. Затем идем во вкладку Connection -> SSH -> Auth -> Credentials , жмем кнопку "Browse" и указываем путь к сохраненному Private-ключу (.ppk).

4. Созданные настройки подключения удобно сохранить, как профиль.

5. Пробуем подключиться.

Если все сделано верно, то подключение откроется без запроса пароля.