Jak mogę dodać dostęp http do istniejącego repozytorium svn bez wyłączania dostępu svn + ssh?

1

Próbuję dodać dostęp HTTP tylko do odczytu do istniejącego svnrepozytorium, jednocześnie umożliwiając dostęp do zapisu przez svn+ssh.

Zainstalowałem Apache, mod_dav_svn itp. I wskazałem Apache na svnrepozytorium, ale kiedy próbuję uzyskać dostęp do repozytorium przez HTTP, pojawia się następujący błąd:

Could not open the requested SVN filesystem

Kiedy patrzę na dziennik błędów dla Apache, widzę, że nie może otworzyć formatpliku w moim repozytorium. Ten plik jest czytelny dla wszystkich, ale nikt nie może go zapisać i wydaje się, że działa w celu svn+sshuzyskania dostępu. Jak rozwiązać problem z Apache bez wpływu na svn+sshdostęp dla programistów?

Dzięki.

AKTUALIZACJA : Wygląda na to, że nie jest to ograniczone do istniejącego repozytorium. Właśnie stworzyłem zupełnie nowe repozytorium testowe, uruchomiłem chown -R apache:apachego i nadal mam ten sam problem. I zostały zweryfikowane, że apacheużytkownik musi posiadać uprawnienia do wykonywania na każdym katalogu w drodze do formati czytać uprawnienia format. Jeśli jednak utworzę repozytorium testowe gdzieś w drzewie katalogów, z którego korzysta Apache jako katalog główny dokumentu, wszystko działa poprawnie. Czy Apache jest chrooted (lub podobny) na CentOS 5.3? Jeśli tak, czy mogę to obejść? Dzięki jeszcze raz.

Hank Gay
źródło

Odpowiedzi:

1

Brzmi jak problem z SELinux ... czy masz odmowy w /var/log/audit/audit.log?

Ophidian
źródło
1

Myślę, że możesz to zrobić, tworząc grupę svn i umieszczając w niej wszystkich użytkowników, a także apache (lub www-run lub cokolwiek innego użytkownika, pod którym działa apache). Następnie możesz zmienić uprawnienia repozytorium, tak aby było ono własnością grupy svn .

Biorąc to pod uwagę, myślę, że preferowaną drogą byłoby przeniesienie wszystkiego do WebDAV. Powodem jest to, że aby svn + ssh działał, użytkownicy muszą mieć bezpośredni dostęp do zapisu do repozytorium, a także dostęp SSH do serwera. Daje to wiele możliwości uszkodzenia repozytorium, a także innych potencjalnych zagrożeń bezpieczeństwa.

Dzięki WebDAV użytkownicy mogą wykonywać tylko operacje za pośrednictwem serwera WebDAV. Podejście to ma wiele zalet, w tym między innymi drobnoziarnistą kontrolę dostępu, więcej opcji uwierzytelniania, audyt itp.

Kamil Kisiel
źródło
Apache jest już członkiem mojej grupy svnusers, która jest właścicielem repozytorium, podobnie jak programiści, którzy mogą z powodzeniem korzystać z repo przez svn + ssh. Plik formatu ma chmoded 444.
Hank Gay