ฉัน/home
ใช้พาร์ติชันLinux ของฉันเข้ารหัสโดยใช้การecryptfs
ติดตั้ง Linux ของฉันไม่ทำงานอีกต่อไปและฉันต้องการเข้าถึงไฟล์ที่เก็บไว้ในพาร์ติชันนั้นจาก Windows มีเครื่องมือ / ขั้นตอนที่จะอนุญาตให้ฉันทำสิ่งนี้หรือไม่?
ฉัน/home
ใช้พาร์ติชันLinux ของฉันเข้ารหัสโดยใช้การecryptfs
ติดตั้ง Linux ของฉันไม่ทำงานอีกต่อไปและฉันต้องการเข้าถึงไฟล์ที่เก็บไว้ในพาร์ติชันนั้นจาก Windows มีเครื่องมือ / ขั้นตอนที่จะอนุญาตให้ฉันทำสิ่งนี้หรือไม่?
คำตอบ:
eCryptfsเป็นระบบไฟล์ที่สร้างขึ้นในเคอร์เนลลินุกซ์ ไม่มีวิธีการถอดรหัสข้อมูลนี้จากใน Windows
อย่างไรก็ตามคุณสามารถบูต Ubuntu LiveCD ถอดรหัสและกู้คืนข้อมูลของคุณได้ (สมมติว่าคุณมีคีย์ที่จำเป็น) โดยใช้ยูทิลิตี้ecryptfs-recovery-private
คำแนะนำที่สมบูรณ์สามารถพบได้ที่นี่:
การเปิดเผยข้อมูลเต็มรูปแบบ: ผมเป็นคนหนึ่งของผู้เขียนและดูแลของeCryptfs
eCryptfs
ใช้งาน Windows ในทางเดียวหรืออีกวิธีหนึ่ง ( Cygwin
, MinGW
) เป็นEncFS
อย่างไร ฉันคิดว่ามันจะล้ำค่าที่จะมีระบบการเข้ารหัส Linux ที่เป็นเจ้าของภาษาที่เข้ากันได้กับ Windows Sarah Dean LUKS
ทำงานกับ Windows ได้FreeOTFE
แต่เธอและ / หรือโครงการเสียชีวิตก่อนลงนาม
เนื่องจาก ecryptfs ถูกเขียนเป็นโมดูลเคอร์เนล "เครื่องมือ" ในการทำเช่นนี้ก็คือเคอร์เนล Linux
แต่เรายังต้องคัดลอกข้อมูลไปยัง windows หรืออ่านจากภายใน linux
โชคดีที่เราสามารถใช้เครื่องมืออัตโนมัติเพื่อดาวน์โหลดติดตั้งตั้งค่าและรันเคอร์เนล Linux ใน windows ด้วยคำสั่ง shell windows ที่ชาญฉลาด Vagrant จัดการโฟลเดอร์แชร์ระหว่าง Windows และ Ubuntu ได้อย่างง่ายดายและสามารถติดตั้งผ่านคำสั่งบางอย่างใน windows
ก่อนที่เราจะเริ่มต้นถ้าคุณต้องการคัดลอกไฟล์ที่เข้ารหัสของคุณ (รวมถึงไดเรกทอรี meta) จากพาร์ติชัน ext4 ไปยัง NTFS ฉันขอแนะนำDisk Internals Linux Readerแต่ถ้าคุณเข้าใจmount
คำสั่งunix คุณสามารถข้ามขั้นตอนนี้ได้ ต้องการ GUI ของmount
คำสั่ง)
ติดตั้งVagrantผ่านทางการติดตั้งอย่างเป็นทางการ (ไม่แนะนำให้ใช้ช่องช็อคโกแลต)
ในหน้าต่างแจ้งเตือนผู้ดูแลระบบ (กดปุ่ม windows และพิมพ์คำสั่งจากนั้นคลิกขวาที่เรียกใช้ในฐานะผู้ดูแลระบบ):
ติดตั้งchocolateyจากนั้นรีสตาร์ทพรอมต์คำสั่ง admin แล้วพิมพ์:
choco install Cygwin cyg-get
ในพร้อมต์ cygwin (กดปุ่ม windows และพิมพ์ cygwin):
cyg-get install
# ASSUMING you copied all the decrypted files to windows, otherwise use mount method below
cd /cygdrive/c/<path to where encryptfs folder is located in windows>
# Either way:
vagrant init ubuntu/xenial64
vagrant up
vagrant ssh
คุณควรอยู่ใน ubuntu shell ผ่าน Virtual Machine ทันที:
sudo apt update
sudo apt install ecrypt-utils tree -y
# At this point you can use mount command, or if you just have the raw files on disk:
cd /vagrant/.ecryptfs
ls
cd myusername
ls .Private
# Either way, let's decrypt
# This WILL fail the first time due a strange bug,
ecrypt-recover-private .Private
# We will start and cancel a mount to fix the bug.
# Choose defaults for everything except passphrase (just press ENTER repeatedly)
sudo mount -t ecryptfs .Private/ decrypted
# Then cancel the mount
Would you like to proceed with the mount (yes/no)? : no
# Now that we fixed the bug with a canceled mount, let's actually recover:
ecrypt-recover-private .Private
# Now that should succeed, so see your data with this
tree /tmp
หากสิ่งนี้ล้มเหลวคุณอาจต้องการตรวจสอบให้แน่ใจว่าคุณมีไฟล์รหัสผ่านที่ถูกห่อ ( sudo updatedb && locate wrapped-passphrase
) หรือดูที่การแทรกข้อความรหัสผ่านที่ห่อไว้ในพวงกุญแจ
ยังมีปัญหาอยู่ใช่ไหม ลองวิธีการติดตั้ง นอกจากนี้คุณยังสามารถทำตามสิ่งต่อไปนี้ ( รายละเอียดเพิ่มเติมที่นี่ ):
sudo mount -t ecryptfs /dev/mydevicehere decrypted
โปรดทราบว่าคุณสามารถทำการเมานต์นี้ได้โดยไม่ต้องคัดลอกไฟล์ใด ๆ จาก ext4 ไปยัง NTFS และข้ามบางขั้นตอน
เมื่อคุณประสบความสำเร็จหากคุณต้องการให้ Windows สามารถเข้าถึงไฟล์เหล่านี้ได้ให้คัดลอกลง/vagrant
ในcp
คำสั่งโปรดระวังว่าคุณกำลังทำสำเนาข้อมูลด้วยการทำเช่นนี้
ทุกอย่างเสร็จเรียบร้อย? มีความสุข? ออกจาก Ubuntu VM โดยพิมพ์exit
จากนั้นปิดโดยพิมพ์vagrant halt
และลบ VM โดยพิมพ์vagrant destroy