ฉันจะเข้ารหัส git บนเซิร์ฟเวอร์ของฉันได้อย่างไร


12

นี่คือที่ใกล้เคียงที่สุดผมเคย: ผมติดตั้ง gitolite ใน/Privateโฟลเดอร์ที่ใช้ecryptfs-utils ( sudo apt-get install ecryptfs-utils adduser git ecryptfs-setup-privateแล้วส่วนที่เหลือได้รับการกำหนดค่า gitolite ใช้รากติดตั้ง)

มันทำงานได้ดีตราบใดที่มีคนเข้าสู่ระบบในฐานะผู้gitใช้ที่ใช้รหัสผ่าน (การsu gitใช้รูทไม่ทำงาน) เนื่องจากโฟลเดอร์ส่วนตัวเปิดใช้งานผ่านการเข้าสู่ระบบด้วยรหัสผ่านและ gitolite ใช้คีย์ RSA (จำเป็น) โฟลเดอร์ส่วนตัวจึงถูกซ่อนจึงเกิดข้อผิดพลาด

มีวิธีที่ฉันสามารถเข้าสู่เซิร์ฟเวอร์ของฉันหลังจากรีบูตพิมพ์รหัสผ่านและมีโฟลเดอร์ส่วนตัวของผู้ใช้ git จนกว่าจะมีการรีสตาร์ทเครื่องครั้งต่อไปหรือไม่

หรืออาจจะมีวิธีที่ง่ายในการเข้ารหัสโฟลเดอร์สำหรับที่เก็บคอมไพล์?


ฉันไม่แน่ใจว่าคุณหมายถึงอะไร การกดและดึงผ่าน SSH นั้นได้รับการเข้ารหัสแล้ว คุณต้องการการเข้ารหัสมากกว่านั้นหรือไม่?
jonescb

ไม่su - gitทำงานหรือไม่ นอกจากนี้จุดของการเข้ารหัส FS คืออะไรถ้าคุณต้องการให้มันพร้อมใช้งานเสมอหากเปิดเครื่องอยู่ เป็นการป้องกันการโจมตีแบบออฟไลน์หรือไม่
แฮงค์ Gay

การเข้ารหัสระบบไฟล์ @jonescb

@Hank Gay: ใช่ การโจมตีออฟไลน์คือทั้งหมดที่ฉันต้องการได้รับความปลอดภัย มันควรจะใช้ได้เสมอดังนั้นออฟไลน์ + การรักษาความปลอดภัยผู้ใช้ที่เข้าถึงไฟล์เข้ารหัส + โดยใช้ซอฟต์แวร์ที่ดีที่การเข้าถึงไฟล์ดังกล่าวเป็นสิ่งที่ฉันทำได้จริงๆ - แก้ไข - และsu - gitไม่ได้แก้มันอย่างน่าเสียดาย

บางทีคุณอาจต้องการปิดหัวข้ออื่น ๆ : unix.stackexchange.com/questions/10355/…
D4RIO

คำตอบ:


4

~/.ecryptfs/auto-umountคุณก็ต้องลบไฟล์

ไฟล์นี้เป็นธงที่ pam_ecryptfs ตรวจสอบเมื่อออกจากระบบ ไฟล์นี้มีอยู่ตามค่าเริ่มต้นเมื่อตั้งค่าพร้อมกับ~/.ecryptfs/auto-mountให้ไดเรกทอรีส่วนตัวของคุณถูกเมาท์โดยอัตโนมัติและยกเลิกการต่อเชื่อมเมื่อเข้าสู่ระบบ / ออกจากระบบ แต่แต่ละคนสามารถลบออกได้อย่างอิสระเพื่อเปลี่ยนพฤติกรรมที่ สนุก!


2

คุณสามารถใช้แนวทางตัวกรอง smudge / clean git; สิ่งนี้จะเข้ารหัสเนื้อหาของที่เก็บและถอดรหัสเพื่อทำงานกับในแผนผังการทำงาน

ดูhttps://gist.github.com/873637

มันจะไม่เข้ารหัสชื่อของไฟล์อย่างไรก็ตาม


1

ขออภัยไม่สามารถโพสต์เป็นความคิดเห็น ...

บางทีคุณสามารถเมาน ssh ผ่าน sshfs และใช้ encfs ข้างใน


คอมไพล์อัตโนมัติสวย ฉันไม่คิดว่าฉันสามารถบอกคอมไพล์ให้รันคำสั่งผ่าน ssh ก่อน / หลังทำสิ่งคอมไพล์

ฉันหมายถึงการเมานต์ dir ระยะไกลของคุณเป็น dir ท้องถิ่นด้วย sshfs แล้วติดตั้งโฟลเดอร์ที่เข้ารหัสไว้ภายในนั้นด้วยการเข้ารหัสแล้วใช้โฟลเดอร์ git ของคุณภายในนั้น Git ไม่จำเป็นต้องรู้ว่าเกิดอะไรขึ้น
solarc

1

screenใช้ เพียงแค่สร้างหน้าจอ su เป็นผู้ใช้และทำสิ่งที่คุณต้องทำ แยกออกโดยใช้ Ctrl + A, d จากนั้นคุณควรจะสามารถตัดการเชื่อมต่อโดยไม่ฆ่ากระบวนการดังนั้นบางคนเข้าสู่ระบบตลอดเวลา


0

อาจบรรจุ repo ของคุณใน tar เข้ารหัส GPG เป็นไปได้ที่จะลบคีย์ส่วนตัวออกจากบ้านของคุณในแต่ละครั้งดังนั้น repo ของคุณจะไม่สามารถเข้ารหัสได้ ทุกครั้งที่คุณลงชื่อเข้าใช้คุณเขียนรหัสส่วนตัวไปที่บ้านถอดรหัส repo และใช้งาน


0

หากคุณสามารถปิดการใช้งานโมดูลเซสชัน pam_ecryptfs กว่าจุดเชื่อมต่อ ecryptfs จะไม่ถูก unmount เมื่อออกจากระบบ แต่สิ่งนี้จะมีผลกับทุกคน แนวคิดอื่นคือการใช้วลีรหัสผ่านที่แตกต่างจากการเข้าสู่ระบบของคุณเพื่อตัดเฟสเฟสบุ๊คของคุณ ในกรณีนี้มันจะล้มเหลวในการติดตั้งโดยอัตโนมัติเมื่อเข้าสู่ระบบและดังนั้นจึงไม่ควร (ไม่?) ยกเลิกการต่อเชื่อมเมื่อออกจากระบบ จากนั้นคุณสามารถเมานต์ ecryptfs ด้วยตนเองและควรจะยังคงอยู่จนกว่าจะรีบูตครั้งต่อไป:

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

0

หากคุณกำลังมองหาการป้องกันออฟไลน์อย่างเคร่งครัดสิ่งที่คล้ายกับพาร์ติชันเข้ารหัสที่ติดตั้งอัตโนมัติควรทำเคล็ดลับ ฉันเห็นว่าคุณกำลังใช้apt-getงานอยู่ดังนั้นจึงมีโอกาสพอสมควรที่คุณใช้งาน Ubuntu ในกรณีที่มันอาจจะสนใจที่จะรู้ว่าอูบุนตูมีการเข้ารหัสเป็นตัวเลือกในระหว่างการติดตั้ง หากคุณใช้ Debian นี่คือบทความที่ฉันพบว่าครอบคลุมวิธีการตั้งค่าระบบไฟล์ที่เข้ารหัสในขั้นตอนง่าย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.