Verwenden von git-shell und Beschränken von Entwicklern zum Commit für ihre eigenen Projekte

8

Wir verwenden git-shell , um sicherzustellen, dass das Git-Konto nur für Git-Operationen verwendet wird. Das funktioniert großartig.

Aber bevor wir uns ganz auf git konzentrieren, wie richten wir es ähnlich wie github ein, wobei Sie abhängig von Ihrem öffentlichen Schlüssel nur Ihre eigenen Repositories einsetzen können?

Soweit ich das sagen kann, können die Github-Leute ihre eigene git-shell rollen, die Quellcode scheint sehr einfach zu hacken

    
corydoras 18.01.2010, 03:52
quelle

3 Antworten

14

Ich benutze etwas Einfacheres, alles was Sie brauchen, ist drei Dateien zu erstellen, die authorized_keys Datei, die gitsecurity.rb Datei und eine Berechtigungsdatei gitpermissions . Zur Vereinfachung können sie alle in den Git-Ordner .ssh gehen. (Grundlegende Unix-Admin-Fähigkeiten erforderlich, um hier zu verstehen)

Die Datei gitpermissions sieht so aus und sollte ziemlich selbst erklärend sein:

%Vor%

Die Datei autorized_keys sieht ungefähr so ​​aus:

%Vor%

Zum Schluss das Skript gitsecurity.rb , einfach kopieren und einfügen:

%Vor%     
Jacob 18.01.2010, 21:20
quelle
2

Eine Option könnte sein, gitosis . (schöne Zusammenfassung hier )

    
Thilo 18.01.2010 04:01
quelle
2

Dieses Skript ermöglicht es authentifizierten Benutzern, beliebigen Code als git-Benutzer auszuführen.

Beispiel Exploit: Ссылка Vorgeschlagener Fix: Ссылка

Beachten Sie, dass exec zwei Parameter erhält. Der erste ist der auszuführende Befehl (Konstante) und der zweite ist das Argument (das von der Shell nicht interpretiert wird).

    
ranmrdrakono 15.02.2013 11:05
quelle

Tags und Links