Hướng dẫn này sẽ chỉ cho bạn từng bước cách mã hóa toàn bộ ổ đĩa bằng Cryptsetup trên Debian 9.4 hoặc Ubuntu 18.04 LTS (Bionic Beaver). Ổ đĩa được mã hóa có thể không phải là một phần của ổ đĩa LVM.
2. cryptsetup đã được cài đặt
3. Bạn đã biết thiết bị bạn muốn mã hóa (tôi sẽ sử dụng /dev/sdb1 trong ví dụ này)
4. Bạn đã lưu mọi dữ liệu trên ổ đĩa mà bạn muốn mã hóa nếu không, bạn sẽ mất tất cả
5. Bạn cần biết cách sử dụng sudo hoặc su -
Ghi chú & CẢNH BÁO
Bạn đã lưu mọi dữ liệu trên ổ đĩa mà bạn muốn mã hóa nếu không, bạn sẽ mất tất cả
Quy trình tôi đang trình bày đã hiệu quả với tôi - YMMV
Vui lòng xem các liên kết giới thiệu ở cuối để biết tổng quan đầy đủ về các tùy chọn và quy trình khác vì hướng dẫn này là bản tổng hợp từ các liên kết này để phù hợp với nhu cầu của tôi.
... và cuối cùng, Bạn đã lưu mọi dữ liệu trên ổ đĩa mà bạn muốn mã hóa nếu không, bạn sẽ mất tất cả
Bảo vệ tệp khóa chỉ được đọc bởi root:
Khởi tạo hệ thống tệp LUKS và sử dụng tệp khóa để xác thực thay vì mật khẩu:
Tạo ánh xạ LUKS bằng tệp khóa:
Tạo hệ thống tệp của bạn (tôi sử dụng ext4):
Tạo điểm gắn kết của bạn trên hệ thống (một số người sử dụng /media):
Gắn kết hệ thống tệp mới tại mount điểm:
Tạo trình ánh xạ để fstab sử dụng bằng cách thêm dòng sau vào /etc/crypttab:
Thêm điểm gắn kết vào /etc/fstab:
Tại thời điểm này, tất cả những gì bạn cần làm là khởi động lại hoặc sử dụng mount -a. Bản thân tôi thấy rằng chỉ cần khởi động lại hệ thống sẽ sạch hơn nhiều.
Thiết lập này hoạt động rất tốt với cả Debian hoặc Ubuntu. Tôi cũng đã hoán đổi thiết lập này giữa hai thiết lập.
Điều này có nghĩa là, nếu bạn tạo một ổ đĩa được mã hóa được nêu ở trên trong Debian (như tôi đã làm với 9.4), tôi có thể gắn ổ đĩa đó vào Ubuntu 18.04 miễn là tôi sử dụng cùng một quy trình và tệp khóa được nêu ở trên.
Điều quan trọng là đảm bảo bạn đã nén ít nhất một tệp tarball thư mục gốc (hoặc ít nhất là tệp khóa) và di chuyển nó đến cùng một vị trí có cùng quyền như trong hệ điều hành trước đó.
Giả định
1. Ổ đĩa được mã hóa không phải là một phần của LVM.2. cryptsetup đã được cài đặt
3. Bạn đã biết thiết bị bạn muốn mã hóa (tôi sẽ sử dụng /dev/sdb1 trong ví dụ này)
4. Bạn đã lưu mọi dữ liệu trên ổ đĩa mà bạn muốn mã hóa nếu không, bạn sẽ mất tất cả
5. Bạn cần biết cách sử dụng sudo hoặc su -
Ghi chú & CẢNH BÁO
Bạn đã lưu mọi dữ liệu trên ổ đĩa mà bạn muốn mã hóa nếu không, bạn sẽ mất tất cả
Quy trình tôi đang trình bày đã hiệu quả với tôi - YMMV
Vui lòng xem các liên kết giới thiệu ở cuối để biết tổng quan đầy đủ về các tùy chọn và quy trình khác vì hướng dẫn này là bản tổng hợp từ các liên kết này để phù hợp với nhu cầu của tôi.
... và cuối cùng, Bạn đã lưu mọi dữ liệu trên ổ đĩa mà bạn muốn mã hóa nếu không, bạn sẽ mất tất cả
Và bây giờ, đối với một thứ hoàn toàn khác... Quy trình:
Tạo tệp khóa để xác thực - bạn sẽ muốn tệp này nếu bạn định sử dụng tính năng tự động gắn kết khi khởi động:
Mã:
dd if=/dev/urandom of=/root/drive_key bs=1024 count=4
Mã:
chmod 0400 /root/drive_key
Mã:
cryptsetup -d=/root/drive_key -v luksFormat /dev/sdb1
Mã:
cryptsetup -d=/root/drive_key luksOpen /dev/sdb1 data
Mã:
mkfs.ext4 /dev/mapper/data
Mã:
mkdir /mnt/data
Mã:
mount /dev/mapper/data /mnt/data
Mã:
data /dev/sdb1 /root/drive_key luks
Mã:
/dev/mapper/data /mnt/data ext4 defaults 0 2
Thiết lập này hoạt động rất tốt với cả Debian hoặc Ubuntu. Tôi cũng đã hoán đổi thiết lập này giữa hai thiết lập.
Điều này có nghĩa là, nếu bạn tạo một ổ đĩa được mã hóa được nêu ở trên trong Debian (như tôi đã làm với 9.4), tôi có thể gắn ổ đĩa đó vào Ubuntu 18.04 miễn là tôi sử dụng cùng một quy trình và tệp khóa được nêu ở trên.
Điều quan trọng là đảm bảo bạn đã nén ít nhất một tệp tarball thư mục gốc (hoặc ít nhất là tệp khóa) và di chuyển nó đến cùng một vị trí có cùng quyền như trong hệ điều hành trước đó.
Liên kết tham chiếu để đọc thêm:
-
Mã hóa ổ cứng Linux bằng LUKS
-
Tự động mở khóa ổ đĩa được mã hóa bằng LUKS bằng Keyfile
-
Cách khôi phục đĩa được mã hóa LUKS