1

Как мне настроить git-сервер без SSH в системе Ubuntu?

Я искал учебники, и каждый учебник описывает только то, как вы настроили SSH или HTTP git. Я хочу настроить собственный сервер git с протоколом git:// по TCP 9418.

Как мне это сделать?

Я не хочу использовать SSH, так как это потребует настройки учетных записей для пользователей.

Мой план состоит в том, чтобы настроить git-репо для чтения / записи без аутентификации, а затем использовать брандмауэр для управления доступом через source-IP (поскольку все мои пользователи, которые должны иметь git-доступ, имеют статический IP-адрес).

1 ответ1

1

Это может быть трудной задачей. Документация по git-серверу довольно четко описывает проблемы, с которыми вы столкнетесь при настройке, включая настройку xinetd:

Минусы

Недостатком протокола Git является отсутствие аутентификации. Обычно нежелательно, чтобы протокол Git был единственным доступом к вашему проекту. Как правило, вы связываете его с доступом по SSH или HTTPS для тех немногих разработчиков, у которых есть доступ push (write), и все остальные используют git:// для доступа только для чтения. Это также, вероятно, самый сложный протокол для настройки. Он должен запустить своего собственного демона, который требует настройки xinetd или чего-то подобного, что не всегда является прогулкой в парке. Это также требует доступа брандмауэра к порту 9418, который не является стандартным портом, который корпоративные брандмауэры всегда разрешают. За большими корпоративными брандмауэрами этот непонятный порт обычно блокируется.

В документации также есть раздел о том, как запустить git как демон с помощью Upstart. xinetd будет указывать на этого демона.

Удачи!


Всё ещё ищете ответ? Посмотрите другие вопросы с метками .