Установить gitolite без необходимости использования открытого ключа(ей)?

Установить gitolite без необходимости использования открытого ключа(ей)?

Все наши разработчики используют рабочие станции Windows. Мы используем сервер разработки Linux. Я хотел попробовать запустить наш собственный сервер git на сервере разработки.

После некоторых исследований я решил попробовать установитьгитолит. Многие руководства по установке очень похожи, я следовал имВот этот.

Один шаг, который мне кажется бессмысленным, заключается в том, что он требует, чтобы вы сгенерировали открытый ключ на клиентской машине, а затем загрузили его на сервер и использовали следующим образом:

$ gl-setup YourName.pub

Я не понимаю, для чего этот шаг... Будет около дюжины клиентских машин, к которым я хочу подключиться и использовать репозитории git... какая машина является «клиентской»? Нужно ли мне делать этот шаг больше одного раза, по одному для каждой клиентской машины? Что произойдет, когда мне позже понадобится добавить новую клиентскую машину? Зачем этот шаг необходим?

Я предполагаю, что ключи нужны для того, чтобы клиентские машины могли аутентифицироваться на сервере без необходимости вводить логин/пароль? Разве я не могу просто настроить систему логин/пароль, которую клиентские рабочие станции будут использовать для доступа к репозиториям git? Могу ли я просто интегрировать наши логины LDAP? Нужны ли открытые ключи?

Кроме того, мы используем рабочие станции Windows, а не Linux, поэтому генерация открытых ключей не так проста, как простая установка OpenSSL и ее выполнение.

Кажется, что установка чего-то подобного должна быть более простой...

решение1

Вам нужно сгенерировать/добавить ключ для каждой комбинации пользователь/клиентская машина, которая будет использовать gitolite. Ключи копируются в ваш каталог gitolite-admin/keydir (я использую соглашение об именовании $USERNAME-$HOSTNAME-id_rsa.pub — не уверен, является ли это обязательным, но у меня это работает). После добавления ключей в каталог keydir вам нужно обновить файл gitolite-admin/conf/gitolite.conf, чтобы настроить соответствующий доступ для проектов/пользователей (используя $USERNAME-$HOSTNAME-id_rsa в качестве соглашения об именовании).

Как только это будет сделано, вы сможете выполнить команду git add conf keydir, commit -m "blah blah blah", и git push origin masterdance , и, если все пойдет хорошо, соответствующие пользователи смогут получить доступ к соответствующим репозиториям git на вашем сервере.

Редактировать:Я не помню, какую настройку клиента git используют пользователи Windows, но в ней есть все необходимое для генерации ключей (они недоступны, поэтому я не могу их спросить). Мне потребовалось несколько попыток, чтобы разобраться и заставить это работать, но, похоже, после настройки все работает хорошо.

решение2

Gitolite использует только одного пользователя, обычно gitoliteна сервере для аутентификации. Вот почему вы добавляете открытые ключи других пользователей в keydirкаталог gitolite, чтобы добавлять пользователей. В официальных документах вы можете увидеть, что gitolite is (usually) heavily dependent on ssh.http://sitaramc.github.com/gitolite/gl_ssh.html.

Связанный контент