Witam
Mam pewien problem z konfiguracją gitosis po stronie serwera. Problem jest to, że osoby nie mające odpowiednich uprawnień mogą klonować projekty i wysyłać comity na serwer.
Powiedzmy, że mamy użytkownika A i B. Każdy z nich wygenerował sobie klucze publiczne i prywatne. Na serwer klucze publiczne dodałem do pliku: ~/.ssh/authorized_keys (autoryzacja poprzez ssh).
Sklonowałem sobie projekt ~/repositories/gitosis-admin.git
Utworzyłem dwa pliki "a.pub" oraz "b.pub" w katalogu "gitosis-admin/keydir/"
Konfiguracja pliku gitosis-admin/gitosis.conf wygląda następująco:
[gitosis]
loglevel = DEBUG
[group gitosis-admin]
writable = gitosis-admin
members = a b
[group project1]
writable = project1
members = a
Podczas wypychaniu zmian na serwer dostaję następujący komunikat:
$ git push origin master
Enter passphrase for key '/c/Documents and Settings/mlubanski/.ssh/id_rsa':
Counting objects: 5, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 371 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: INFO:gitosis.run_hook:Running hook post-update
remote: DEBUG:gitosis.gitdaemon:Global default is 'deny'
remote: DEBUG:gitosis.gitdaemon:Walking '.', seeing ['testowe', 'gitosis-admin.git', 'test.git', 'testrepo.git']
remote: DEBUG:gitosis.gitdaemon:Deny 'gitosis-admin'
remote: DEBUG:gitosis.gitdaemon:Deny 'test'
remote: DEBUG:gitosis.gitdaemon:Deny 'testrepo'
remote: DEBUG:gitosis.gitdaemon:Walking 'testowe', seeing ['test.git']
remote: DEBUG:gitosis.gitdaemon:Deny 'testowe/test'
remote: INFO:gitosis.run_hook:Done.
Przy takich ustawieniach obaj użytkownicy A i B mogą sklonować "project1" oraz komitować zmiany do tego projektu. Dlaczego?? skoro w ustawieniach dla tego projektu takie uprawnienia dałem tylko użytkownikowi A??