Girar/Руководство оператора

Материал из ALT Linux Wiki


girar - это система, обеспечивающая функционирование многопользовательского git-хостинга Git.alt.

Пользовательский доступ к girar производится в основном с помощью протокола SSH2, а для аутентификации используются SSH-ключи.

Управление аккаунтами пользователей производится непосредственно на сервере, на котором установлен girar, с помощью утилит, входящих в состав пакета.

Задачи

Оператор girar выполняет задачи управления аккаунтами пользователей:

  • Создание и удаление аккаунтов пользователей.
  • Блокировка и разблокировка аккаунтов пользователей.
  • Добавление аккаунта пользователя в группу мантейнеров и удаление из нее.
  • Регистрация и отмена регистрации SSH-ключей пользователей.

Создание пользователя

Для добавления аккаунта пользователя в систему используется команда girar-add:

girar-add <имя> <файл SSH-ключа> <GECOS-запись>

где

имя
имя пользователя girar (на имя налагаются такие же ограничения, как на имена системных пользовательских аккаунтов, кроме максимальной длины, которая на 4 символа меньше максимальной длины системных пользовательских аккаунтов)
файл SSH-ключа
имя файла, содержащего один или несколько публичных SSH-ключей в формате OpenSSH
GECOS-запись
Информация о пользователе в формате GECOS

Для вновь созданного аккаунта пользователя создаются git-репозитории

/people/<имя>/etc/packages.git
/people/<имя>/etc/private.git
/people/<имя>/etc/public.git

служащие для управления email-подпиской на изменения в репозиториях, а также каталоги для хранения репозиториев

/people/<имя>/public
/people/<имя>/private
/people/<имя>/packages

Удаление аккаунта пользователя

Для удаления аккаунта пользователя из girar используется команда girar-del:

girar-del <имя>

При удалении аккаунта пользователя удаляются все его git-репозитории. Если требуется временно ограничить пользователю доступ к системе, вместо удаления рекомендуется его заблокировать.

Блокировка аккаунта пользователя

Для временной блокировки аккаунта пользователя используется команда girar-disable:

girar-disable <имя>

Пользователь заблокированного аккаунта теряет доступ к git-репозиториям и SSH-интерфейсу girar.

Разблокировка аккаунта пользователя

Для разблокировки аккаунта пользователя используется команда girar-enable:

girar-enable <имя>

Добавление аккаунта пользователя в группу мантейнеров

Для добавления аккаунта пользователя в группу мантейнеров используется команда girar-maintainer-add:

girar-maintainer-add <имя>

Удаление аккаунта пользователя из группы мантейнеров

Для удаления аккаунта пользователя из группы мантейнеров используется команда girar-maintainer-del:

girar-maintainer-del <имя>

Регистрация SSH-ключей пользователя

Для регистрации новых SSH-ключей пользователя используется команда girar-auth-add:

girar-auth-add <имя> <файл SSH-ключа>

Файл SSH-ключа должен содержать публичные SSH-ключи в формате OpenSSH. Эти ключи добавляются к списку зарегистрированных ключей указанного пользователя.

Отмена регистрации SSH-ключей

Для отмены регистрации всех SSH-ключей пользователя используется команда girar-auth-zero:

girar-auth-zero <имя>

Пользователь без зарегистрированных SSH-ключей не имеет доступа к git-репозиториям и SSH-интерфейсу girar. Для временного ограничения доступа вместо удаления ключей рекомендуется использовать блокировку аккаунта пользователя.