Bagaimana cara mengenkripsi git di server saya?

12

Inilah yang paling dekat dengan yang saya dapatkan: Saya menginstal gitolite di /Privatefolder menggunakan ecryptfs-utils ( sudo apt-get install ecryptfs-utils adduser git ecryptfs-setup-privatekemudian sisanya mengkonfigurasi gitolite menggunakan instalasi root).

Ini berfungsi dengan baik selama seseorang masuk sebagai pengguna gitmenggunakan kata sandi ( su gitmenggunakan root tidak berfungsi). Karena folder pribadi diaktifkan melalui masuk dengan kata sandi dan gitolite menggunakan kunci RSA (diperlukan) folder pribadi disembunyikan sehingga kesalahan terjadi.

Apakah ada cara saya bisa login ke server saya setelah reboot, ketik kata sandi dan memiliki folder pribadi pengguna git tersedia sampai waktu berikutnya mesin restart?

Atau mungkin ada cara mudah untuk mengenkripsi folder untuk repositori git?

Tikar
sumber
Saya tidak yakin apa yang Anda maksud. Mendorong dan menarik SSH sudah dienkripsi. Apakah Anda memerlukan enkripsi lebih dari itu?
jonescb
Apakah su - gitbekerja? Juga, apa gunanya mengenkripsi FS jika Anda ingin selalu tersedia jika mesin hidup? Apakah hanya untuk melindungi dari serangan offline?
Hank Gay
Enkripsi sistem file @jonescb
@Hank Gay: Ya. serangan offline adalah semua yang saya ingin amankan dengan ini. Itu harus selalu tersedia sehingga cukup offline + mengamankan pengguna yang mengakses file mengenkripsi + menggunakan perangkat lunak yang baik yang mengakses file tersebut benar-benar yang bisa saya lakukan. -edit- dan su - gitsayangnya tidak menyelesaikannya.
mungkin Anda ingin menutup utas lainnya: unix.stackexchange.com/questions/10355/...
D4RIO

Jawaban:

4

Anda hanya perlu menghapus file ~/.ecryptfs/auto-umount.

File ini adalah flag yang diperiksa pam_ecryptfs saat logout. File ini ada secara default pada pengaturan, bersama dengan ~/.ecryptfs/auto-mount, sehingga direktori pribadi Anda secara otomatis dipasang dan dilepas saat login / logout. Tetapi masing-masing dapat dihilangkan secara independen untuk mengubah perilaku itu. Nikmati!

Dustin Kirkland
sumber
2

Anda bisa menggunakan pendekatan smitge / clean git filter; ini akan mengenkripsi konten repositori, dan mendekripsi untuk bekerja dengan di pohon kerja.

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

Namun, itu tidak akan mengenkripsi nama file.

Peter Mounce
sumber
1

Maaf, tidak dapat memposting sebagai komentar ...

Mungkin Anda bisa me-mount ssh Anda melalui sshfs dan menggunakan encfs di dalam?

solarc
sumber
git cukup otomatis. Saya tidak berpikir saya dapat memberitahu git untuk mengeksekusi perintah lebih dari ssh sebelum / setelah melakukan hal
Maksud saya me-mount dir remote Anda sebagai dir lokal dengan sshfs, kemudian me-mount folder terenkripsi di dalamnya dengan encfs dan kemudian menggunakan folder git Anda di dalamnya. Git tidak perlu tahu apa yang terjadi.
solarc
1

Gunakan screen. cukup buat layar, su ke pengguna dan lakukan apa yang perlu Anda lakukan. Lepaskan dari itu dengan menggunakan Ctrl + A, d. Maka Anda harus dapat memutuskan sambungan tanpa mematikan proses sehingga seseorang masuk setiap saat.


sumber
0

Mungkin mengemas repo Anda di tar terenkripsi GPG. Mungkin untuk menghapus kunci pribadi dari rumah Anda setiap kali, sehingga repo Anda akan hampir tidak dapat dienkripsi. Setiap kali Anda masuk, Anda menulis kunci pribadi ke rumah Anda, mendekripsi repo, dan menggunakannya.

D4RIO
sumber
0

Jika Anda dapat menonaktifkan modul sesi pam_ecryptfs, daripada mount poin ecryptf tidak akan dilepas saat log-out, tetapi ini juga mempengaruhi semua orang. Gagasan lain adalah menggunakan frasa sandi berbeda dari login Anda untuk membungkus frasa mount Anda. Dalam hal ini, itu akan gagal untuk me-mount secara otomatis saat masuk, dan karena itu tidak (tidak akan?) Melonggarkan saat keluar. Anda kemudian dapat secara manual me-mount ecryptfs dan itu harus tetap dipasang sampai reboot berikutnya:

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

Jika Anda benar-benar mencari perlindungan offline, maka sesuatu seperti partisi terenkripsi yang terpasang otomatis akan melakukan trik. Saya melihat Anda menggunakan apt-get, jadi ada kemungkinan Anda berada di Ubuntu. Dalam hal ini, mungkin menarik bagi Anda untuk mengetahui bahwa Ubuntu memiliki enkripsi sebagai opsi selama instalasi . Jika Anda menggunakan Debian, berikut ini adalah artikel yang saya temukan yang membahas Cara mengatur sistem file terenkripsi dalam beberapa langkah mudah .

Hank Gay
sumber