четверг, 15 сентября 2011 г.

Автологин по SSH в PuTTY

Я раньше никогда не заморачивался по поводу постоянных вводов паролей, на различные ssh, rdp подключения, но недавно наткнулся на способ входа по ssh с использованием ключа. В общем суть такова, на сервере генерируется два ключа, приватный и публичный, приватный передаётся на другую машину, модифицируется с помощью puttygen и предъявляется при логине на сервер.

  1. Первое что нужно сделать, это сгенерировать ключь на сервере:
    $ ssh-keygen -t rsa
    При генерации можно указать защитить ли файл ключей паролем. Можно ничего не вводить.
  2. После этого в каталлоге "~/.ssh" появится два файла "id_rsa" и "id_rsa.pub", его нужно скопировать в authorized_keys.
    $ cat id_rsa.pub >> authorized_keys
  3. Установить на него права на чтение и запись только владельцу:
    $ chmod 600 authorized_keys
  4. Далее копируем приватный ключ "id_rsa" на нашу машину и называем его каким-нибудь именем с расширением ".ppk", например fileserver-key.pkk.
  5. Теперь прогоним ключь через puttygen. В окне puttygen нажимаем кнопку Load напротив "Load an existing private key file", и сохраним результат, "Save private key" например как "fileserver.ppk".
  6. Теперь добавим ключ в сеанс. Запускаем PuTTY, загружаем нужный сеанс или вводим данные для соединения и идём в "SSH - Auth", выбираем наш приватный ключ, который был получен через обработку "puttygen".
  7. Идём в меню "Connection - Data" и в поле "Auto-login username" вводим логин под которым генерировали ключ.
  8. Сохраняем сеанс.
  9. PROFIT! Пробуем!

2 комментария:

  1. $ cp id_rsa.pub authorized_keys

    замени на

    $ cat id_rsa.pub >> authorized_keys

    ОтветитьУдалить
  2. Пожалуй да, хотя у меня это не особо важно, я с этого сервера всё равно по ssh никуда не подключаюсь, а только к нему.

    ОтветитьУдалить