Làm cách nào để mã hóa git trên máy chủ của tôi?


12

Đây là lần gần nhất tôi đã nhận được: Tôi đã cài đặt gitolite trong /Privatethư mục bằng cách sử dụng ecryptfs-utils ( sudo apt-get install ecryptfs-utils adduser git ecryptfs-setup-privatephần còn lại là cấu hình gitolite bằng cách sử dụng cài đặt gốc).

Nó chỉ hoạt động tốt miễn là ai đó đã đăng nhập với tư cách là người dùng gitsử dụng mật khẩu ( su gitsử dụng root không hoạt động). Vì thư mục riêng kích hoạt thông qua việc đăng nhập bằng mật khẩu và gitolite sử dụng khóa RSA (bắt buộc), thư mục riêng bị ẩn do đó xảy ra lỗi.

Có cách nào để tôi có thể đăng nhập vào máy chủ của mình sau khi khởi động lại, nhập mật khẩu và có thư mục riêng của người dùng git cho đến khi máy khởi động lại lần sau không?

Hoặc có thể có một cách dễ dàng để mã hóa một thư mục cho kho git?


Tôi không chắc ý của bạn là gì. Đẩy và kéo qua SSH đã được mã hóa. Bạn có cần mã hóa ngoài điều đó?
jonescb

su - githoạt động không? Ngoài ra, điểm mã hóa của FS là gì nếu bạn muốn nó luôn có sẵn nếu máy đang bật? Có nghiêm ngặt để bảo vệ chống lại các cuộc tấn công ngoại tuyến?
Hank Gay

@jonescb mã hóa hệ thống tập tin

@Hank Gay: Vâng. các cuộc tấn công ngoại tuyến là tất cả những gì tôi muốn bảo mật với điều này. Nó phải luôn có sẵn để ngoại tuyến một cách hợp lý + đảm bảo người dùng truy cập các tệp mã hóa + sử dụng phần mềm tốt để truy cập các tệp nói thực sự là tất cả những gì tôi có thể làm. -edit- và không su - gitgiải quyết nó không may.

có lẽ bạn muốn đóng chủ đề khác: unix.stackexchange.com/questions/10355/iêu
D4RIO

Câu trả lời:


4

Bạn chỉ cần loại bỏ các tập tin ~/.ecryptfs/auto-umount.

Tệp này là cờ mà pam_ecryptfs kiểm tra khi đăng xuất. Tệp này tồn tại theo mặc định khi thiết lập, cùng với đó ~/.ecryptfs/auto-mount, sao cho thư mục riêng của bạn được tự động gắn kết và ngắt kết nối khi đăng nhập / đăng xuất. Nhưng mỗi cái có thể được loại bỏ một cách độc lập để thay đổi hành vi đó. Thưởng thức!


2

Bạn có thể sử dụng một cách tiếp cận bộ lọc git smudge / sạch; điều này sẽ mã hóa nội dung của kho lưu trữ và giải mã nó để làm việc với cây làm việc.

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

Tuy nhiên, nó sẽ không mã hóa tên của các tệp.


1

Xin lỗi, không thể đăng bình luận ...

Có lẽ bạn có thể gắn ssh của bạn thông qua sshfs và sử dụng encfs bên trong?


git là khá tự động. Tôi không nghĩ rằng tôi có thể bảo git thực thi các lệnh trên ssh trước / sau khi thực hiện công cụ git của nó

Tôi có nghĩa là gắn thư mục từ xa của bạn dưới dạng một thư mục cục bộ với sshfs, sau đó gắn một thư mục được mã hóa bên trong đó với các bảng mã và sau đó sử dụng thư mục git của bạn bên trong đó. Git không cần biết chuyện gì đang xảy ra.
trời

1

Sử dụng screen. chỉ cần tạo một màn hình, su vào người dùng và làm những gì bạn cần làm. Tách khỏi nó bằng cách sử dụng Ctrl + A, d. Sau đó, bạn sẽ có thể ngắt kết nối mà không giết quá trình do đó ai đó đăng nhập mọi lúc.


0

Có thể đóng gói repo của bạn trong một tar mã hóa GPG. Bạn có thể xóa khóa riêng tư khỏi nhà mỗi lần, vì vậy repo của bạn sẽ gần như không thể giải mã được. Mỗi lần bạn đăng nhập, bạn viết khóa riêng vào nhà, giải mã repo và sử dụng nó.


0

Nếu bạn có thể vô hiệu hóa mô-đun phiên pam_ecryptfs, thì các điểm gắn kết của ecryptfs sẽ không bị ngắt khi đăng xuất, nhưng điều này cũng ảnh hưởng đến tất cả mọi người. Một ý tưởng khác là sử dụng một cụm mật khẩu khác từ thông tin đăng nhập của bạn để bọc cụm từ gắn kết của bạn. Trong trường hợp này, nó sẽ không tự động gắn kết nó khi đăng nhập và do đó, nó sẽ không (không?) Bỏ kết nối khi đăng xuất. Sau đó, bạn có thể gắn ecryptfs theo cách thủ công và nó sẽ được gắn cho đến khi khởi động lại tiếp theo:

ecryptfs-umount-private
ecryptfs-rewrap-passphrase .ecryptfs/wrapped-passphrase
ecryptfs-mount-private

0

Nếu bạn đang tìm kiếm sự bảo vệ ngoại tuyến nghiêm ngặt, thì một cái gì đó như phân vùng được mã hóa được gắn tự động sẽ thực hiện thủ thuật này. Tôi thấy bạn đang sử dụng apt-get, vì vậy có một cơ hội công bằng khi bạn sử dụng Ubuntu. Trong trường hợp đó, bạn có thể quan tâm rằng Ubuntu có mã hóa dưới dạng tùy chọn trong khi cài đặt . Nếu bạn đang sử dụng Debian, đây là một bài viết tôi tìm thấy bao gồm Cách thiết lập hệ thống tệp được mã hóa theo một số bước đơn giản .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.