Làm thế nào để thiết lập mã hóa toàn bộ đĩa trên OpenBSD?


19

Có phương pháp ưa thích nào để thiết lập mã hóa toàn bộ đĩa trong OpenBSD, tương tự như dm-crypttrong Linux không?

Tôi đang tìm kiếm mã hóa toàn bộ đĩa, như thể ai đó đã đánh cắp máy tính xách tay của tôi, họ có khả năng truy cập dữ liệu được lưu trữ trên đó. Một lý do khác là tôi không phải lúc nào cũng ở bên cạnh máy tính xách tay của mình, vì vậy ai đó có khả năng ảnh hưởng đến tính toàn vẹn của netbook của tôi. Đây là hai vấn đề chính khiến tôi tin rằng mã hóa toàn bộ đĩa rất quan trọng đối với tôi.


Bạn đã có hai câu hỏi hoàn toàn không liên quan. Vì tôi đã trả lời một và chưa có ai trả lời câu hỏi khác, tôi đã xóa phần về Chrome khỏi câu hỏi của bạn. Vui lòng gửi câu hỏi mới về việc chạy Chrome trên OpenBSD.
Gilles 'SO- ngừng trở nên xấu xa'


Từ OpenBSD 5.3 , mã hóa toàn bộ đĩa có sẵn! > softston (4) Khối lượng RAID1 và tiền điện tử hiện có thể khởi động được trên i386 và> amd64 (mã hóa toàn bộ đĩa). Vì vậy, bên cạnh bộ nạp khởi động, MỌI THỨ đều được mã hóa. :)
evachristine

Câu trả lời:


15

OpenBSD chỉ hỗ trợ mã hóa toàn bộ đĩa kể từ OpenBSD 5.3 . Các phiên bản trước yêu cầu phân vùng khởi động Cleartext. Tôi không biết khi nào trình cài đặt được sửa đổi để hỗ trợ cài đặt trực tiếp vào phân vùng được mã hóa (tất nhiên với bộ tải khởi động vẫn chưa được mã hóa, bởi vì có gì đó phải giải mã bit tiếp theo).

Dù sao cũng có ít sử dụng trong việc mã hóa phân vùng hệ thống¹. Vì vậy, tôi khuyên bạn nên cài đặt hệ thống bình thường, sau đó tạo một hình ảnh hệ thống tập tin được mã hóa và đưa dữ liệu nhạy cảm của bạn ( /home, một phần /var, có lẽ một vài tệp vào /etcđó).

Nếu bạn muốn mã hóa phân vùng hệ thống (vì bạn có một số trường hợp sử dụng đặc biệt, như một số phần mềm bí mật) và ban đầu bạn không cài đặt một hệ thống được mã hóa, đây là cách bạn có thể làm điều đó.

Khởi động vào bản cài đặt OpenBSD của bạn và tạo một tệp sẽ chứa hình ảnh hệ thống tệp được mã hóa. Đảm bảo chọn kích thước hợp lý vì sẽ khó thay đổi sau này (bạn có thể tạo thêm một hình ảnh, nhưng bạn sẽ phải nhập cụm mật khẩu riêng cho mỗi hình ảnh). Các vnconfigtrang người đàn ông có ví dụ (mặc dù họ đang bỏ lỡ một vài bước). Tóm lại:

dd if=/dev/urandom of=/ENCRYPTED.img bs=1m count=4096
vnconfig -k svnd0 /ENCRYPTED.img  # type your passphrase
{ echo a a; echo w; echo q; } | disklabel -E /svnd0  # create a single slice
newfs /dev/svnd0a
mount /dev/svnd0a /mnt
mv /home/* /mnt
umount /mnt
umount /dev/svnd0c

Thêm các mục tương ứng vào /etc/fstab:

 /ENCRYPTED.img  /dev/svnd0c  vnd rw,noauto,-k
 /dev/svnd0a     /home        ffs rw,noauto

Thêm các lệnh để gắn kết khối lượng được mã hóa và hệ thống tập tin trong đó tại thời điểm khởi động để /etc/rc.local:

echo "Mounting encrypted volumes:"
mount /dev/svnd0c
fsck -p /dev/svnd0a
mount /home

Kiểm tra xem mọi thứ có hoạt động chính xác không bằng cách chạy các lệnh này ( mount /dev/svnd0c && mount /home).

Lưu ý rằng rc.localđược thực hiện muộn trong quá trình khởi động, vì vậy bạn không thể đặt các tệp được sử dụng bởi các dịch vụ tiêu chuẩn như ssh hoặc sendmail trên ổ đĩa được mã hóa. Nếu bạn muốn làm điều đó, hãy đặt các lệnh này /etc/rcthay vào đó, ngay sau đó mount -a. Sau đó di chuyển các phần của hệ thống tập tin của bạn mà bạn cho là nhạy cảm và di chuyển chúng đến /homeâm lượng.

mkdir /home/etc /home/var
mv /etc/ssh /home/etc
ln -s ../home/etc/ssh /home/etc
mv /var/mail /var/spool /home/var
ln -s ../home/var/mail ../home/var/spool /var

Bạn cũng nên mã hóa trao đổi của mình, nhưng OpenBSD hiện thực hiện điều đó một cách tự động.

Cách mới hơn để có được một hệ thống tập tin được mã hóa là thông qua trình điều khiển đột kích phần mềm softraid . Xem các trang softraidbioctlman hoặc NAS HOWTO được mã hóa OpenBSD của Lykle de Vries để biết thêm thông tin. Các phiên bản gần đây của OpenBSD hỗ trợ khởi động từ ổ đĩa mềm và cài đặt vào ổ đĩa mềm bằng cách thả vào vỏ trong quá trình cài đặt để tạo âm lượng.

¹ Theo như tôi có thể nói, OpenBSD của mã hóa khối lượng được bảo vệ cho bí mật (với Blowfish), không phải cho toàn vẹn . Bảo vệ tính toàn vẹn của HĐH là rất quan trọng, nhưng không cần bảo mật. Cũng có nhiều cách để bảo vệ tính toàn vẹn của HĐH, nhưng chúng nằm ngoài phạm vi của câu trả lời này.


Bạn có thể làm rõ tuyên bố "Bảo vệ tính toàn vẹn của HĐH là quan trọng, nhưng không cần bảo mật"? Bạn có nghĩa là mã hóa âm lượng của OpenBSD chỉ là mánh lới quảng cáo hay không quan trọng?

Tìm hiểu thêm về tính toàn vẹn: unix.stackexchange.com/questions/9998/iêu

3
@hhh: Mã hóa của OpenBSD cung cấp bảo mật. Điều đó quan trọng đối với dữ liệu của riêng bạn, không quan trọng đối với các tệp HĐH mà bất kỳ ai cũng có thể tải xuống. (tức là khối lượng encrpytion là quan trọng nhưng không phải là toàn bộ câu chuyện.) Liêm chính là bảo vệ chống lại một ai đó ngấm ngầm thay đổi dữ liệu của bạn, hoặc tệ hơn, cài đặt phần mềm độc hại nếu họ có quyền truy cập vật lý vào đĩa của bạn - một cuộc tấn công người giúp việc ác . Các cuộc tấn công người giúp việc độc ác rất khó để chống lại (tôi không biết OpenBSD cung cấp những gì), nhưng cũng khó thực hiện.
Gilles 'SO- đừng trở nên xấu xa'

Câu trả lời này không còn chính xác nữa, trên OpenBSD 5.7 trở về trước đã có thể cài đặt HĐH trong phân vùng được mã hóa kể từ đầu
Freedo

@Freedom Tôi đã cập nhật câu trả lời của mình để đề cập đến khả năng này. Rõ ràng là có thể kể từ ngày 5.3, điều đó chưa tồn tại khi tôi viết câu trả lời này.
Gilles 'SO- ngừng trở nên xấu xa'

3

Sợ hãi với kỷ luật CRYPTO được các nhà thiết kế OBSD dự định hỗ trợ mã hóa toàn bộ đĩa. Có một phương pháp khác với SVND hiện không được chấp nhận.


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.