Trên Ubuntu 11.10, có thể giải mã 2 đĩa cứng được mã hóa bằng LUKS / LVM bằng cách chỉ nhập một cụm mật khẩu khi khởi động không?


8

Ở đây cấu hình tôi có: - 2 ổ cứng, - ổ đầu tiên được mã hóa bằng LUKS và LVM. Tôi muốn thêm vào nhóm âm lượng được mã hóa ổ cứng thứ hai. Tôi đã cài đặt thành công và mã hóa nó. Nhưng khi tôi khởi động, tôi phải nhập 2 cụm mật khẩu để giải mã cả hai ổ cứng.

Không có cách nào để chỉ sử dụng một?



cái này hiệu quả với tôi: unix.stackexchange.com/a/110102/50601
Tim Abell

Câu trả lời:


4

Cuối cùng tôi cũng tìm thấy một mẹo để chỉ nhập một mật khẩu và mã hóa tất cả các đĩa vật lý của mình.

Tôi mã hóa cái đầu tiên bằng cụm mật khẩu, tôi mã hóa cái thứ hai bằng một keyfile mà tôi lưu trữ trên ổ cứng đầu tiên (/ root / mykeyfile).

Và với dòng sửa trong tệp / etc / crypttab, nó thực hiện thủ thuật.

Cập nhật / etc / crypttab

sda5_crypt UUID = fb07f1e8-a569-4db9-9fd7-fc1994e093b5 không luks

sdb1_crypt UUID = 4c0687f0-d7af-4f2e-9c57-5ca8e909d492 / root / mykeyfile luks


dd if = / dev / urandom of = / root / mykeyfile bs = 1024 Count = 20 Đây là một ví dụ về cách tạo một chuỗi ngẫu nhiên được sử dụng làm 'keyfile'.
earthmeLon

1
Vấn đề với điều này là một sự thỏa hiệp liên quan đến quyền truy cập vào hệ thống tập tin của bạn (ví dụ như vấn đề về quyền hoặc vấn đề nhỏ) sẽ dẫn đến thỏa hiệp chính, một vấn đề lớn hơn nhiều. Tôi đề nghị mạnh mẽ chống lại thực hành này. Xem câu trả lời của tôi cho một phương pháp tốt hơn (và tự động).
lẻn vào

Bạn có thể giải thích làm thế nào điều này được cho là làm việc? LVM có bắt đầu ở chế độ xuống cấp và sau đó tự khắc phục sau khi PV thứ hai khả dụng không?
aij

0

Trên Ubuntu, có thể sử dụng khóa dẫn xuất từ ​​gốc làm khóa bổ sung trên các hệ thống tệp khác. Điều này có lợi ích là giữ khóa của bạn cho các ổ đĩa khác ra khỏi hệ thống tập tin.

Trước khi thực hiện việc này, trước tiên, hãy đảm bảo / tmp chỉ được gắn trên ram! Tôi đề nghị chế độ một người dùng cho sự thay đổi này.

mount -t ramfs none /tmp

Sau đó, bạn có thể xuất khóa dẫn xuất:

# replace vda5_crypt with the cryptsetup name of your root luks
# have a look in /dev/mapper or 'pvdisplay' to find it...
/lib/cryptsetup/scripts/decrypt_derived vda5_crypt > /tmp/key

Và sau đó thêm nó vào (các) thiết bị khác của bạn:

# use your own disks here instead of sdb1 sdc1 sdd1 etc
cryptsetup luksAddKey /dev/sdb1 /tmp/key
cryptsetup luksAddKey /dev/sdc1 /tmp/key
cryptsetup luksAddKey /dev/sdd1 /tmp/key
rm /tmp/key

Điều này sẽ cho phép các tập lệnh init ubfox sử dụng khóa dẫn xuất sau khi root được mở khóa để mở khóa phần còn lại của các thiết bị khối và làm cho chúng có sẵn tương tự dưới / dev / mapper. Tôi không chắc liệu họ có yêu cầu các mục nhập / etc / crypttab hay không - hãy thử chúng trước mà không xuất hiện, hãy đặt chúng vào crypttab mà không cần khóa và nó sẽ mở khóa chúng.

(Tôi chưa thử nghiệm bất kỳ thứ gì trong số này.)


Tôi đã thử mà không có tiền điện tử trên Debian và nó không hoạt động. Ngay cả với tiền điện tử, nó không hoạt động, nhưng tôi đã tiến gần hơn. sdb3_crypt UUID = 4a ... sda3_crypt luks, initramfs, keycript = decrypt_derured. Tùy chọn initramfs là cần thiết để có được đoạn mã decrypt_derive có trong initramfs. Nhưng nó vẫn không tải được khi khởi động.
aij

-1

Về mặt lý thuyết, bạn có thể đặt biến môi trường tạm thời trong tập lệnh khởi động tùy chỉnh, sau đó được tham chiếu bởi tập lệnh khởi tạo cho quá trình giải mã của bạn. Tôi thực sự đã làm điều này một vài năm trước.

Tùy chọn khác của bạn là tìm kiếm các tập lệnh init hiện có cho ổ cứng của bạn và viết một tập lệnh tùy chỉnh nhập mật khẩu của bạn một lần và sau đó tiến hành hai quá trình giải mã.

Thay vào đó, bạn có thể mở rộng âm lượng LVM của mình sang ổ đĩa thứ hai. Nếu tôi nhớ chính xác, mã hóa sẽ mang qua.


1
LVM được xây dựng dựa trên khối lượng mã hóa cơ bản. Mở rộng LVM mà không tạo một khối được mã hóa khác sẽ không mã hóa bộ nhớ bổ sung được thêm vào nhóm âm lượng.
lẻn

-2

Không, không có cách nào để làm điều đó.

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.