VeraCrypt สามารถใช้จุดเชื่อมต่อแบบถาวรบน Linux ได้หรือไม่


12

VeraCrypt สามารถใช้จุดเชื่อมต่อแบบถาวรบน Linux ได้หรือไม่


พา ธ สัมบูรณ์ระดับเสียงที่เข้ารหัสของ Windows + VeraCrypt +

บน Windows ฉันสามารถติด veracrypt เข้ารหัส / พาร์ติชั่ดิสก์ผ่านสคริปต์ชุดซึ่งมีพนักงานชื่ออุปกรณ์mountvol.exeที่แสดงโดย แอ็ตทริบิวต์ดังกล่าวมีประโยชน์อย่างมากเนื่องจากการรีบูตเครื่องสามารถนำไปสู่การเปลี่ยนแปลงพา ธ สัมพัทธ์ ( \Device\Harddisk1\Partition3-> reboot -> \Device\Harddisk3\Partition3)

แบตช์สคริปต์ของฉันสำหรับ veracrypt volume บน Windows (รูปแบบย่อ):

@echo
"C:\Program Files\VeraCrypt\VeraCrypt.exe" /v \\?\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\ /l z /m label=Encrypted_1 /q
"C:\Program Files\VeraCrypt\VeraCrypt.exe" /v \\?\Volume{yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy}\ /l f /m label=Encrypted_2 /q
[...]
pause


เส้นทางสัมพัทธ์ของโวลุ่มที่เข้ารหัสด้วย Linux + VeraCrypt + เท่านั้น?

ฉันไม่มีความรู้เกี่ยวกับการมีอยู่ของคำสั่งแบบขนานกับ Windows 'ที่/v \\?\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\ใช้ได้สำหรับ commandline Linux ฉันพยายาม--mount=/dev/disk/by-uuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxตั้งค่าสถานะ(ในไร้สาระ) เนื่องจากmountvol.exe ชื่อไดรฟ์ข้อมูล (อาจ) ขึ้นอยู่กับจำนวน UUID (มองไม่เห็นblkidแม้ว่า) เอกสาร veracrypt / truecrypt อย่างเป็นทางการอนุญาตให้ผู้ใช้ Linux สามารถใช้งานได้เฉพาะกับเส้นทางสัมพัทธ์ (ตัวแปร) ( /dev/sda3-> รีบูต -> /dev/sdc3) เนื่องจากความไม่แน่นอนจึงต้องตรวจสอบเส้นทางทุกครั้งหลังจากโหลดระบบปฏิบัติการ

สคริปต์ทุบตีของฉันสำหรับการติดตั้งปริมาณ veracrypt บน Linux (รูปแบบย่อ):

#! /bin/bash
#
echo "Encrypted_1" && veracrypt --mount /dev/sdq --slot=12 --verbose && echo "Encrypted_1"
echo "Encrypted_2" && veracrypt --mount /dev/sdz3 --slot=1 --verbose && echo "Encrypted_2"
[...]


สารละลาย?

มีใครรู้บ้างไหมว่าสถานที่ตั้งของโวราคริปต์สามารถอธิบายได้ในแง่สมบูรณ์บน Linux หรือไม่

หากเป็นไปไม่ได้โปรดให้คำแนะนำเพื่อให้บรรลุวัตถุประสงค์เดียวกัน (เช่น: udev? fstab?)

ความผิดในเขียนหรือพิมพ์

mountvol.exeรับรู้GUIDไม่ใช่UUIDตามที่เขียนไว้ด้านบน

คำตอบ:


7

ฉันได้อธิบายคำตอบที่โพสต์โดยDavid Foersterไว้ด้านล่างและทำให้มีความหมายและชัดเจนยิ่งขึ้นสำหรับผู้ใช้ Linux รายอื่น ๆ ที่สนใจในหัวข้อที่นำเสนอ

พา ธ สัมบูรณ์ของโวลุ่มการเข้ารหัส Linux + VeraCrypt +

จากการวิจัยของฉันดูเหมือนว่าการกำหนดเส้นทางแบบสัมบูรณ์ไปยังไดรฟ์ข้อมูล VeraCrypt นั้นเป็นไปไม่ได้ (อย่างน้อยในปัจจุบัน) ( vide : by-id และ by-pathบนwiki.archlinux.orgภายใต้การตั้งชื่ออุปกรณ์บล็อกแบบถาวร ( 1 ))

การตั้งชื่ออุปกรณ์บล็อก Linux + VeraCrypt + กึ่งถาวร

อย่างไรก็ตามเราสามารถใช้การตั้งชื่ออุปกรณ์บล็อกกึ่งถาวร

1. โดยเส้นทาง

/dev/disk/by-path/ขึ้นอยู่กับเส้นทางกายภาพที่สั้นที่สุด ( 2 ) และการเปลี่ยนแปลงเมื่อพอร์ตของคอนโทรลเลอร์ถูกเปลี่ยน ( 3 )

ในการรับ/dev/disk/by-path/descriptor ให้พิมพ์:

ls -l /dev/disk/by-path/

คุณสามารถใช้การตั้งชื่อที่ได้รับเพื่อเมานต์วอลลุ่ม VeraCrypt:

veracrypt --mount /dev/disk/by-path/[by-path] --slot=6 --verbose

/dev/disk/by-path/[by-path] สามารถแทนที่เส้นทางสัมพัทธ์ในสคริปต์ทุบตี:

#! /bin/bash
#
echo "Encrypted_1" && veracrypt --mount /dev/disk/by-path/[by-path1] --slot=12 --verbose && echo "Encrypted_1"
echo "Encrypted_2" && veracrypt --mount /dev/disk/by-path/[by-path2] --slot=1 --verbose && echo "Encrypted_2"
[...]

2. by-id

/dev/disk/by-id/ถูกสร้างขึ้นตามหมายเลขซีเรียลของอุปกรณ์ ( 4 ) wiki.archlinux.orgระบุว่า/dev/disk/by-id/ไม่สามารถอยู่รอดได้การเปลี่ยนแปลงฮาร์ดแวร์เช่นสถานการณ์ที่อุปกรณ์ถูกเสียบเข้ากับพอร์ตของตัวควบคุมภายใต้ระบบย่อยที่แตกต่างกัน ( 5 ) access.redhat.comในอีกด้านหนึ่งอ้างว่า/dev/disk/by-id/สามารถรักษาได้แม้ว่าอุปกรณ์จะเข้าถึงได้โดยระบบที่แตกต่าง ( 6 ) ดังนั้นจึงsymlinkดูเหมือนว่าจะค่อนข้างเสถียรในกรณีที่/dev/disk/by-id/ถูกนำไปใช้

ในการรับ/dev/disk/by-id/การตั้งชื่ออุปกรณ์ให้พิมพ์:

ls -l /dev/disk/by-id/

ตอนนี้เมื่อคุณแก้ไขให้ถูกต้องแล้วก็สามารถใช้เพื่อเมานต์วอลลุ่มของเวราคริปต์ได้:

veracrypt --mount /dev/disk/by-id/[id] --slot=6 --verbose

คล้ายคลึงกับสิ่งที่บันทึกไว้ในวรรคหนึ่ง/dev/disk/by-id/สามารถใช้ในสคริปต์ทุบตี:

#! /bin/bash
#
echo "Encrypted_1" && veracrypt --mount /dev/disk/by-id/[id1] --slot=12 --verbose && echo "Encrypted_1"
echo "Encrypted_2" && veracrypt --mount /dev/disk/by-id/[id2] --slot=1 --verbose && echo "Encrypted_2"

อาจจะเป็นประโยชน์สำหรับใครบางคน

ภาคผนวก

/dev/disk/by-id/ ไม่เสถียรพอที่จะลืมการแก้ไขสคริปต์การติดตั้งหลังจากรีบูต


3

น่าเสียดายที่ UUID และเลเบลของระบบไฟล์ภายในคอนเทนเนอร์ที่เข้ารหัสไม่สามารถเข้าถึงได้เนื่องจากการเข้ารหัสและคอนเทนเนอร์ TrueCrypt / VeraCrypt ไม่ได้พก UUID หรือป้ายกำกับด้วยตนเอง

มีอยู่คนหนึ่งระบุมีเสถียรภาพเพียงพอที่อื่น ๆ สำหรับปริมาณการจัดเก็บในลินุกซ์: รหัสดิสก์ คุณสามารถพบพวกเขาใน:

/dev/disk/by-id/

จนถึงตอนนี้ฉันไม่เคยสังเกตเห็นการเปลี่ยนแปลงใด ๆ ที่น่าทึ่งของลิงก์สัญลักษณ์ในนั้นเนื่องจากมีการสร้างชื่อโดย

  • udev, ซึ่งการกำหนดค่าการจัดเก็บพื้นฐานไม่เปลี่ยนแปลงบ่อย,
  • ตามชื่อผู้ผลิตชื่อรุ่นและหมายเลขซีเรียลที่รายงานโดยเฟิร์มแวร์ของไดรฟ์ซึ่งไม่เปลี่ยนแปลงบ่อยนัก

มันได้ผล. อย่างไรก็ตามฉันต้องทดสอบวิธีแก้ปัญหาความมั่นคงให้ ในขณะเดียวกันฉันได้พัฒนาคำตอบของคุณในรูปแบบที่คุณสามารถดูด้านล่าง มันอาจกลายเป็นว่าเรื่องนั้นมีประโยชน์สำหรับคนอื่นเช่นกัน
Christianus

/dev/disk/by-id/วิธีการไม่เสถียรเกินไปสำหรับรสนิยมของฉัน หลังจากหนึ่งรีบูตสองลิงก์ที่มีการเปลี่ยนแปลง มันจะดีถ้า veracrypt ใช้เช่น dm-crypt, UUID ภายนอกและภายในอื่น
Christianus

แปลก ฉันไม่เคยมีการเปลี่ยนแปลงอะไรในมีที่เกี่ยวข้องกับไดรฟ์ทางกายภาพและเริ่มต้นด้วยata-*, scsi-*หรือแม้กระทั่งการusb-*ยกเว้น 1) *-part*ต่อท้ายหลังจากเปลี่ยนตารางพาร์ทิชันหรือ 2) หลังจากที่มีการปรับรุ่นการเปิดตัวรวมถึงการเปลี่ยนแปลงที่สำคัญในการ udev ฉันถอดปลั๊กและแลกเปลี่ยนไดรฟ์ในเวลาเฉลี่ยและชื่อเคอร์เนล ( sd*) มีแนวโน้มที่จะเปลี่ยนการบู๊ตทุกสองสามครั้ง
David Foerster

ในกรณีของฉันata-*ถูกแทนที่ด้วยusb-*HD ภายนอกสองตัวที่ทำโดย WD: WDC WD15NMVW-11AV3S3 และ WD Elements 107C (1042)
Christianus

คำนำหน้าอย่างน้อยหนึ่งคำสั่งคงอยู่สำหรับไดรฟ์ตัวใดตัวหนึ่งหรือไม่
David Foerster

0

ก่อนที่จะแนบไดรฟ์ของคุณให้ใช้ "ภาพรวม"

$> ll /dev/disk/by-id > ~/before.txt

อีกครั้งหลังจากติดตั้งไดรฟ์ของคุณ และดูความแตกต่าง:

$> ll /dev/disk/by-id > ~/after.txt
$> diff ~/before.txt ~/after.txt

คุณควรเห็น (เช่นบนไดรฟ์ Samsung ภายนอกสองส่วน)

> [...] usb-Samsung_M2_Portable_D3F12345678FE094-0:0 -> ../../sdd
> [...] usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part1 -> ../../sdd1
> [...] usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part2 -> ../../sdd2

หากต้องการเมาท์ให้พูด partition2 ของสิ่งนั้นถึง/mnt/m(ตัวอย่างของฉัน: ด้วยสวิตช์ truecrypt)

veracrypt -t -tc -pPasswordIfYouLike -k "" --protect-hidden=no /dev/disk/by-id/usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part2 /mnt/m

ตอนนี้คุณสามารถใช้สคริปต์การเชื่อมต่อที่เกี่ยวข้องสำหรับไดรฟ์นี้ได้อย่างน่าเชื่อถือไม่ว่าจะเป็นพอร์ต USB หรือลำดับใดก็ตามที่เชื่อมต่อกับไดรฟ์อื่น ๆ


และสำหรับสคริปต์ unmount ที่เหมาะสมและเชื่อถือได้:

veracrypt -t -d /dev/disk/by-id/usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part2


ความมั่นคง?

ฉันใช้มือแรกนี้ในสถานีเชื่อมต่อต่างๆในสถานที่ทำงานที่มีไดรฟ์ภายนอกหลายยี่ห้อที่แตกต่างกันสำหรับเดือน ไม่มีปัญหา.

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