ใช้ ecryptfs สำหรับ Ubuntu One ด้วยโฮมไดเร็กตอรี่ที่เข้ารหัสแล้ว


9

ฉันต้องการความคิดที่จะมีโฟลเดอร์เข้ารหัสหนึ่งโฟลเดอร์ใน Ubuntu One มี howtos ปัจจุบันในอินเทอร์เน็ตวิธีการตั้งค่าด้วย EncFS หรือ ecryptfs ฉันต้องการใช้ ecryptfs - ไม่ใช่เพราะความเร็วเนื่องจากความเร็วไม่สำคัญเท่าไรถ้าคุณเก็บข้อมูลของคุณไว้ในคลาวด์ - แต่เมื่อฉันใช้ ecryptfs อยู่แล้วก็ชินกับมันแล้วจึงไม่ใช้ ' ไม่ต้องการใช้โซลูชันอื่นเช่นกัน

ปัญหาเกี่ยวกับโฟลเดอร์ Ubuntu One คือเป็นส่วนหนึ่งของโฟลเดอร์หลักของผู้ใช้ ด้วย Ubuntu รุ่นล่าสุดในหลายกรณีโฟลเดอร์หลักของผู้ใช้จะถูกเข้ารหัสด้วย ecryptfs และคุณไม่สามารถใช้ ecryptfs (สำหรับโฟลเดอร์ Ubuntu One) ที่ด้านบนของ ecryptfs (ของโฮมไดเรกทอรีของผู้ใช้)

แล้วเราจะทำอะไรได้บ้าง? แน่นอนใช้ EncFS แทน หรือย้ายโฟลเดอร์ Ubuntu One ออกจากโฟลเดอร์หลักของผู้ใช้

ความคิดหรือข้อเสนอแนะอื่น ๆ ?

คำตอบ:


4

ตามที่ระบุไว้แล้ว ecryptfs ไม่ได้แก้ปัญหาของฉันเพราะโฟลเดอร์บ้านของฉันถูกเข้ารหัสโดย ecryptfs การย้ายโฟลเดอร์ "Ubuntu One" ออกจากทรีโฮมไม่ใช่วิธีแก้ปัญหาเช่นนั้นเนื้อหาส่วนที่เหลือของ "Ubuntu One" จะไม่ถูกเข้ารหัสอีกต่อไป

ฉันตัดสินใจใช้ EncFS แทน การตั้งค่าโฟลเดอร์ที่เข้ารหัสนั้นค่อนข้างง่าย แต่วิธีการติดตั้งโดยอัตโนมัติเพื่อให้แอปพลิเคชันสามารถใช้เพื่อจัดเก็บไฟล์ปรับแต่งได้ มีวิธีแก้ไขปัญหาบางอย่าง:

  1. pam_mount
  2. gnome-EncFS
  3. autofs
  4. afuse

ฉันไม่ชอบความคิดที่ 1 เพราะฉันไม่ต้องการใช้รหัสผ่านเดียวกันสำหรับ EncFS เป็นรหัสผ่านการเข้าสู่ระบบของฉัน

โซลูชันที่ 2 ฉันไม่ชอบด้วยมือข้างเดียวเพราะไม่มีแพ็คเกจ apt สำหรับ Ubuntu และในทางกลับกันฉันไม่ต้องการให้ติดตั้งโฟลเดอร์ EncFS หลังจากเข้าสู่ระบบเท่านั้นหากมีสิ่งใดล้มเหลวหรือโฟลเดอร์ถูก unmount ทุกครั้ง การเข้าถึงที่ตามมาจะล้มเหลว

โซลูชัน 3 ไม่ทำงาน ฉันใช้ autofs มาระยะหนึ่งแล้วในการเมานต์แชร์ CIFS และโฟลเดอร์ผ่าน sshfs แต่ EncFS ไม่รองรับ ฉันได้เล่นกับสคริปต์หลาย ๆ ตัวเพื่อติดตั้ง EncFS โดย autofs แต่มันก็ซับซ้อนเกินไปและเกิดข้อผิดพลาดได้ง่าย

ดังนั้นสิ่งที่ฉันใช้อยู่ในปัจจุบันคือโซลูชัน 4 Afuse พร้อมใช้งานเป็นแพ็คเกจ apt Afuse จะเมานท์โฟลเดอร์ EncFS โดยอัตโนมัติทันทีที่เข้าถึงโฟลเดอร์และเลิกเมานต์อีกครั้งหลังจากเวลาว่าง

นี่คือขั้นตอนวิธีการตั้งค่าทุกอย่างอย่างรวดเร็ว (บางทีฉันอาจเพิ่มรายละเอียดในอนาคต):

  • ติดตั้ง afuse
  • สร้างโฟลเดอร์ "Ubuntu One" เพื่อจัดเก็บเนื้อหาที่เข้ารหัส

ตัวอย่าง:

~ / Ubuntu \ One /. เข้ารหัส

  • สร้างโฟลเดอร์เป็นโฟลเดอร์ด้านบนเพื่อเก็บโฟลเดอร์ไว้ภายใน

ตัวอย่าง:

~ / .fuse

  • สร้างสคริปต์ผู้ช่วย
  • สร้างรายการเริ่มอัตโนมัติใน Gnome เพื่อเริ่มการโจมตี

โฟลเดอร์ EncFS ที่ไม่ได้เข้ารหัสจะถูกเมาท์ภายใต้ ~ / .fuse ในกรณีของฉันโฟลเดอร์ที่มีเนื้อหาที่ไม่ได้เข้ารหัสมีชื่อว่า U1Enc ดังนั้นข้อมูลทั้งหมดจะอยู่ใน ~ / .fuse / U1Enc เพื่อความสะดวกของฉันฉันได้สร้างลิงก์จาก ~ / U1Enc ถึง ~ / .fuse / U1Enc เพื่อให้ง่ายขึ้น

ความคิดและสคริปต์ผู้ช่วยเหลือที่ฉันพบในเว็บไซต์หลายแห่ง ลิงค์มาที่นี่:

การติดตั้งระบบไฟล์ FUSE โดยอัตโนมัติ
autofs: เข้ารหัสผ่าน sshfs

ฉันใช้สคริปต์ต่อไปนี้:

~ / .afuse-fstab

U1Enc  encfs --ondemand --idle=5 --extpass="/home/xxx/.creds/U1.encfs.sh" /home/xxx/Ubuntu\ One/.encrypted %m

~ / .creds / U1.encfs.sh (ทำเครื่องหมายว่าปฏิบัติการได้และเข้าถึงได้โดยผู้ใช้เองเท่านั้น)

#!/bin/sh
echo PASSWORD_FOR_ENCFS_IN_CLEARTEXT

~ / bin / afuse-handler.pl (ทำเครื่องหมายว่าปฏิบัติการได้และมี ~ / bin ใน $ PATH)

#!/usr/bin/perl -w

$fstab="$ENV{HOME}/.afuse-fstab";
$afusedir=$ARGV[0];
$afuse_mountpoint=$ARGV[1];

print "afusedir:$afusedir\n";
print "afuse_mountpoint:$afuse_mountpoint\n";

system("logger -t afuse 1:$ARGV[0] 2:$ARGV[1]");

open(FSTAB, $fstab ) or die("Can not open afuse-fstab at $fstab\n");
while( <FSTAB> ) {
        if( /^$afusedir/ ) {
                s/[^\s\/]+[\s]*//;
                s/%r/$afusedir/g;
                s/%m/$afuse_mountpoint/g;
                chomp;
                $cmd = $_;
                print "$cmd\n";
                system($_) == 0
                        or die "execution of FUSE filesystem failed!\n"
                             . "command:$cmd\n"
                             . "reason:$?\n";
        }
}

และในที่สุด~ / bin / afuse.start.sh (ทำเครื่องหมายอีกครั้งว่าปฏิบัติการ) ซึ่งฉันลงทะเบียนกับ Gnome / ระบบ / การตั้งค่าเพื่อเริ่ม afuse หลังจากเข้าสู่

#!/bin/sh
afuse -o mount_template="/home/xxx/bin/afuse-handler.pl %r %m" -o unmount_template="fusermount -u -z %m" ~/.fuse

สคริปต์ล่าสุดเปิดใช้งาน afuse ซึ่งจะเริ่มตัวจัดการ afuse เพื่อเมานท์โฟลเดอร์ EncFS ใต้ ~ / .fuse ทันทีที่เข้าถึง afuse.handler ตรวจสอบตัวเอง. afuse-fstab วิธีติดตั้งโฟลเดอร์ รหัสผ่าน EncFS ถูกสะท้อนออกมาโดย U1.encfs.sh ดังนั้นจึงไม่จำเป็นต้องมีการแทรกแซงของผู้ใช้ (เนื่องจากไฟล์นี้ถูกเก็บไว้ในโฟลเดอร์บ้านของฉันมันถูกเข้ารหัสโดย ecryptfs ดังนั้นฉันไม่เห็นว่ามีปัญหาด้านความปลอดภัยขนาดใหญ่)

ดูแล EncFS รุ่นต่าง ๆ ใน Natty ปัจจุบัน EncFS รุ่น 1.7.4 ได้รับการติดตั้ง ไม่สามารถเล่นได้ดีกับรุ่น 1.6 เก่ากว่าใน Maverick ฉันต้องอัปเดต EncFS บนผู้ไม่ฝักใฝ่ฝ่ายใดเป็น 1.7.4 เช่นกัน (ทำได้โดยการปักหมุด apt / preferences)


0

วิธีที่เป็นไปได้ที่จะทำคือการใช้สองไดเรกทอรีที่แตกต่างกัน:

~ / my_secret_data จะไม่ถูกซิงค์ แต่จะเข้ารหัสไฟล์ทั้งหมดที่เพิ่มเข้าไปแล้วย้ายไฟล์ที่เข้ารหัสจาก ~ / my_secret_data / โฟลเดอร์ไปที่ ~ / Ubuntu One / โฟลเดอร์ หากคุณเพิ่มคีย์ GPG ของคุณในคอมพิวเตอร์ทุกเครื่องของคุณคุณจะสามารถเปิดไฟล์ที่เข้ารหัสโดยอัตโนมัติ แต่คนอื่น ๆ จะไม่

ฉันคิดว่ามันไม่หรูหรามาก แต่ควรใช้งานได้


นั่นคือสิ่งที่ฉันทำกับ EncFS ข้อมูลที่เข้ารหัสจะถูกเก็บไว้ใน ~ / Ubuntu \ One / .encrypted และไม่ได้เข้ารหัสใน ~ / .fuse / U1Enc ฉันแค่ใช้ EncFS แทน GPG เพื่อความสะดวกของผู้ใช้ - ข้อมูลได้รับการเข้ารหัส / ถอดรหัสในทันที
spi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.