Автоматический вход пользователя на сервер посредством putty (протокол SSH)

Задача: полностью автоматизировать вход пользователя на сервер посредством putty (протокол SSH). Порядок действий:
Автологин с помощью ключей

  1. Сгенерировать ключ на сервере: ssh-keygen -t rsa
  2. Сохраняем ключ в предлагаемый файл (/home/myuser/.ssh/id_rsa)
  3. При необходимости указываем пароль на использование приватного ключа (в этом случае его необходимо будет вводить при каждой новой сесии)
  4. Копируем публичный ключ id_rsa.pub в authorized_keys (cp id_rsa.pub authorized_keys)
  5. Проверить права на файл. Должны быть 600, иначе может не сработать (chmod 600 authorized_keys).
  6. Копируем приватный ключ id_rsa (more id_rsa) в файл на локальном комьютере (например my_session.ppk)
  7. Прогоняем скопированный приватный ключ через puttygen.exe делая приватный ключ пригодным к использованию. (Там есть кнопочка "Load", напротив надписи "Load an existing private key file", юзаем сначала ее, а затем теребим баттон "Save private key".)
  8. Открываем Putty, загружаем нашу сессию, идем в SSH->Auth, указываем путь к готовому приватному ключу.
  9. Идем в Connection->Data и в секции Auto-login в поле username указываем логин пользователя
  10. При необходимости в пункте меню SSH в поле Remote Command можно указать команду, которая автоматически будет выполняться при входе пользователя.
  11. Сохраняем сессию - с реальным путем до сервера и портом
Автологин без использования ключей

Используем ярлыки. Командная строка к putty должна выглядеть так: 
[путь к putty.exe] -load SESSION -pw PASSWORD
или же
[путь к putty.exe] USER@SERVER -pw PASSWORD
Можно не указывать загрузку сессии: [путь к putty.exe] -pw PASSWORD
или же не указывать пароль: [путь к putty.exe] -load SESSION,
тогда в первом случае, будет предложено выбрать необходимую сессию, или же во втором случе будет запрошен только пароль.

Комментарии

Популярные сообщения из этого блога

Пишем логи на C# (.NET). Легкий способ.

Учебник yii2