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

Упрощение ssh для нашего сообщества пользователей Windows

Я работаю в академической среде, где мы предоставляем множество доступных по ssh вычислительных ресурсов. Мы также предоставляем git хостинг репозиториев, и нам требуется ssh для доступа на чтение / запись к репозиториям.

Наши инструкции для пользователей OS X и Linux относительно просты и, что наиболее важно, согласованы как с OS X, так и с большинством современных дистрибутивов Linux, OpenSSH включен "из коробки" и, что более важно, ssh-agent предварительно настроен для запуска всякий раз, когда активен сеанс рабочего стола. Обычно мы поощряем людей назначать парольные фразы своим ключам, чтобы жизнь без агента аутентификации быстро стала раздражать.

Наши решения для пользователей Windows на данный момент более фрагментированы и сложны в целом. Исторически люди использовали PuTTY, но это требует дополнительных действий для создания ключей, совместимых с OpenSSH. Это также делает более трудным - хотя не, как я понимаю, невозможным - использование git инструменты командной строки, которые лучше всего работают с OpenSSH при взаимодействии с репозиториями, доступными по ssh.

Мы просто хотим, чтобы люди установили msysgit, но мы ищем хороший способ интегрировать ssh-agent в среду рабочего стола Windows. Наиболее распространенное решение - запустить агент через записи в .bashrc, но в лучшем случае это кажется хакерским, и это означает, что мы должны направлять в основном нетехнических пользователей через процесс редактирования их .bashrc под виндой.

Дополнительная сложность заключается в том, что WinSCP часто используется в качестве инструмента для передачи файлов - и, конечно, он не разговаривает с ssh-agent. Он поговорит с pagent, от людей PuTTY, но pagent не говорит ssh-agent поэтому он не будет работать из командной строки.

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

ОБНОВИТЬ

Я нашел две программы, которые действуют как прокладка между OpenSSH и pagent. У вас есть опыт работы с шарада или ssh-pagent?

Я не знаком с msysgit, но может ли он использовать PuTTY plink? Если ты не знаешь, plink это простой клиент ssh командной строки, который может использовать Pageant для аутентификации.

Обновление: Да, вы должны предоставить пользователям Windows другую документацию. (Если вы не думаете, что пользователи Windows собираются использовать OpenSSH для чего-то другого, кроме доступа к git.) Я думаю, вы пытаетесь добиться эквивалентности, которой не существует. Мне кажется, что вы пытаетесь «упростить [] ssh», усложняя его.

Я бы предложил использовать Cygwin и через него установить SSH. Затем вы можете настроить ssh-agent и даже автоматически настроить его с помощью сценариев оболочки. Таким образом, вы можете использовать SSH почти так, как если бы вы использовали его в Linux, вместо использования PuTTY или msysgit. Кроме того, вы получаете возможность автоматизировать работу с помощью сценариев оболочки и Cygwin. Вот это лишь один из множества различных скриптов ssh-agent, которые я нашел, чтобы заставить его работать с Cygwin. Кроме того, я считаю, что настройка и установка Cygwin очень гибкие. Поскольку он просто загружает файлы с зеркала и помещает их в корень вашего диска C :, я почти уверен, что вы можете взять эту установку и распространить ее среди других людей, просто предоставив им копию каталога. Я сам не тестировал эту часть ...