Wie verschlüssele ich Git auf meinem Server?

12

Hier ist der nächste, den ich bekommen habe: Ich habe gitolite mit in den /PrivateOrdner installiert ecryptfs-utils ( sudo apt-get install ecryptfs-utils adduser git ecryptfs-setup-privateder Rest hat gitolite mit einer Root-Installation konfiguriert).

Es hat einwandfrei funktioniert, solange jemand als Benutzer gitmit einem Passwort angemeldet war ( su gitroot funktioniert nicht). Da der private Ordner durch Anmelden mit einem Kennwort aktiviert wird und Gitolite RSA-Schlüssel verwendet (erforderlich), ist der private Ordner ausgeblendet, sodass ein Fehler auftritt.

Gibt es eine Möglichkeit, mich nach einem Neustart bei meinem Server anzumelden, das Kennwort einzugeben und den privaten Ordner des Git-Benutzers bis zum nächsten Neustart des Computers verfügbar zu haben?

Oder gibt es eine einfache Möglichkeit, einen Ordner für Git-Repositorys zu verschlüsseln?

Matte
quelle
Ich bin mir nicht sicher was du meinst. Das Verschieben und Ziehen über SSH ist bereits verschlüsselt. Benötigen Sie darüber hinaus eine Verschlüsselung?
Jonescb
Does su - gitArbeit? Wozu dient die Verschlüsselung des FS, wenn Sie möchten, dass er bei eingeschaltetem Computer immer verfügbar ist? Ist es strengstens gegen Offline-Angriffe zu schützen?
Hank Gay
@ jonescb Dateisystemverschlüsselung
@Hank Gay: Ja. Offline-Angriffe sind alles, was ich damit sichern möchte. Es sollte immer verfügbar sein, also einigermaßen offline + Sichern des Benutzers, der auf die Verschlüsselungsdateien zugreift + Verwenden einer guten Software, die auf diese Dateien zugreift, ist wirklich alles, was ich tun kann. -edit- und su - githabe es leider nicht gelöst.
Vielleicht möchten
D4RIO

Antworten:

4

Sie müssen nur die Datei entfernen ~/.ecryptfs/auto-umount.

Diese Datei ist ein Flag, das pam_ecryptfs beim Abmelden überprüft. Diese Datei ist beim Setup standardmäßig zusammen mit vorhanden ~/.ecryptfs/auto-mount, sodass Ihr privates Verzeichnis beim Anmelden / Abmelden automatisch an- und abgemeldet wird. Jedes kann jedoch unabhängig voneinander entfernt werden, um dieses Verhalten zu ändern. Genießen!

Dustin Kirkland
quelle
2

Sie könnten einen Wisch- / Reinigungs-Git-Filter-Ansatz verwenden. Dadurch wird der Inhalt des Repositorys verschlüsselt und für die Arbeit im Arbeitsbaum entschlüsselt.

Siehe https://gist.github.com/873637 .

Die Namen der Dateien werden jedoch nicht verschlüsselt.

Peter Mounce
quelle
1

Entschuldigung, kann nicht als Kommentar posten ...

Vielleicht könntest du dein ssh über sshfs mounten und encfs verwenden?

solarc
quelle
Git ist ziemlich automatisch. Ich glaube nicht, dass ich git sagen kann, dass er Befehle über ssh ausführen soll, bevor / nachdem er sein Git-Zeug ausgeführt hat
Ich meinte, Sie mounten Ihr Remote-Verzeichnis als lokales Verzeichnis mit sshfs, mounten dann einen verschlüsselten Ordner darin mit encfs und verwenden dann Ihren Git-Ordner darin. Git muss nicht wissen, was los ist.
Solarc
1

Verwenden Sie screen. Erstellen Sie einfach einen Bildschirm, melden Sie sich beim Benutzer an und tun Sie, was Sie tun müssen. Trennen Sie sich davon mit Strg + A, d. Dann sollten Sie in der Lage sein, die Verbindung zu trennen, ohne den Prozess zu beenden, sodass immer jemand angemeldet ist.


quelle
0

Vielleicht packen Sie Ihr Repo in einen GPG-verschlüsselten Teer. Es ist möglich, den privaten Schlüssel jedes Mal von zu Hause aus zu löschen, sodass Ihr Repo fast nicht entschlüsselt werden kann. Jedes Mal, wenn Sie sich anmelden, schreiben Sie den privaten Schlüssel in Ihr Zuhause, entschlüsseln das Repo und verwenden es.

D4RIO
quelle
0

Wenn Sie das Sitzungsmodul pam_ecryptfs deaktivieren können, werden die Bereitstellungspunkte von ecryptfs beim Abmelden nicht entladen, dies betrifft jedoch auch alle anderen. Eine andere Idee ist es, eine andere Passphrase als Ihre Anmeldung zu verwenden, um Ihre Mount-Phasephrase zu umschließen. In diesem Fall wird es beim Anmelden nicht automatisch bereitgestellt und sollte daher beim Abmelden nicht (nicht?) Deaktiviert werden. Sie können dann ecryptfs manuell einbinden und es sollte bis zum nächsten Neustart eingebunden bleiben:

ecryptfs-umount-private
ecryptfs-rewrap-passphrase .ecryptfs/wrapped-passphrase
ecryptfs-mount-private
penguin359
quelle
0

Wenn Sie ausschließlich Offline-Schutz benötigen, ist eine automatisch gemountete verschlüsselte Partition genau das Richtige für Sie. Ich sehe, dass Sie verwenden apt-get, also gibt es eine gute Chance, dass Sie auf Ubuntu sind. In diesem Fall könnte es Sie interessieren, zu wissen, dass Ubuntu während der Installation optional verschlüsselt wird . Wenn Sie Debian verwenden, ist hier ein Artikel, der beschreibt, wie ein verschlüsseltes Dateisystem in mehreren einfachen Schritten eingerichtet wird .

Hank Gay
quelle