среда, 22 февраля 2012 г.

Доступ в git поверх ssh для группы разработчиков

Задача довольна типичная - дать доступ в git группе разработчиков.
Для начала устанавливаем git стандартным системным способом, далее создаем аккаунты для разработчиков. При этом важно, чтобы основая группа ( в passwd) была одинаковой:
user1:*:1001:1000:User &:/home/user1:/usr/local/bin/bash
user2:*:1002:1000:User &:/home/user2:/usr/local/bin/bash 
Группа - это четвертое поле, у меня 1000, но это значение может быть любым.
Разумеется, ее перед этим нужно создать в /etc/group:
git:*:1000:
Теперь самое главное, при создании репозитория, важно включить шаринг по группе:
$ cd /home/git/ && mkdir repo
$ cd repo
git init  --bare --share=group  
Initialized empty shared Git repository in /home/git//repo/
Эти команды нужно выполнять из под аккаунта с gid равном группе разработчиков, иначе нужно будет поменять группу.
Дополнительно можно указать кастомные параметры в sshd_config для группы разработчиков
Match Group git
  AllowTcpForwarding no
  X11Forwarding no
  AllowAgentForwarding no
  PasswordAuthentication no
 Отключен форвардинг портов и парольная авторизация.

1 комментарий:

  1. епт как же я ненавжу git под ssh
    вот нормальные ребята в гитхабе делают SSL/TLS

    ОтветитьУдалить