Назад | Перейти на главную страницу

В Windows, как мне настроить sshd, чтобы я мог использовать ssh через аутентификацию на основе ключей из другого окна Windows?

Я работаю над настройкой некоторой автоматизации развертывания, и одна из вещей, которые я пытаюсь сделать, - это использовать Ruby Capistrano для удаленного выполнения команд через ssh. я использовал openssh cygwin для запуска sshd на коробке, которую я использую в качестве тестовой жертвы.

Однако изначально для этого потребуется один и тот же пользователь на каждом ящике жертвы с одинаковым паролем, что явно плохая идея.

Поэтому я хотел бы включить аутентификацию с открытым ключом, но после пары дней ударов головой об стену у меня ничего не получается. Может ли кто-нибудь указать мне на успешное руководство в Интернете для достижения этой цели?

Я так думаю:

Чтобы отключить аутентификацию по паролю, вам нужно отредактировать sshd_config на жертве и установить PasswordAuthentication = no

В качестве альтернативы отредактируйте ssh_config на overlord или используйте параметр -o, чтобы он не предлагал аутентификацию по паролю.

Ты можешь использовать ssh -v -v -v ... чтобы более четко увидеть, что происходит.


редактировать

Я знаком с настройкой аутентификации с открытым ключом SSH с помощью Putty, puttygen и pageant, но не с инструментами OpenSSH. Я считаю, что с OpenSSH процесс

$ ssh-keygen -t rsa

Затем скопируйте ~/.ssh/id_rsa.pub к серверу ~/.ssh/authorized_hosts и убедитесь, что права доступа 600 для файла и 700 для каталога.

Справочная страница ssh-keygen должна объяснить, как сгенерировать закрытый ключ, незащищенный какой-либо парольной фразой. Если вы сделаете это, вам никогда не придется вводить пароль, но он будет небезопасным. Если вы настроите агент аутентификации, я считаю, что любая парольная фраза потребуется только один раз за сеанс на «overlord». Если у вас нет пароля, я не вижу смысла в настройке агента аутентификации, он должен просто прочитать закрытый ключ, не запрашивая пароль.