Cách cài đặt Arch Linux với Full Disk Encryption

theanh

Administrator
Nhân viên
Trong hướng dẫn hôm nay, chúng ta sẽ cài đặt Arch Linux với mã hóa toàn bộ ổ đĩa.

Trước khi tiến hành, tôi muốn bạn sao lưu dữ liệu hiện có của mình.

Trong hướng dẫn trước, chúng ta đã tìm hiểu dm-crypt và LUKS là gì và cách mã hóa phân vùng đĩa đơn. Trong bài đăng hôm nay, chúng ta sẽ áp dụng một cách tiếp cận hơi khác một chút để mã hóa toàn bộ ổ đĩa bằng dm-crypt LUKS và cài đặt Archlinux trên đó.

Chúng ta hãy bắt đầu bằng cách xóa ổ đĩa. Chạy lsblk để tìm ổ đĩa chính của bạn và thay thế /dev/sda khi cần:
Mã:
shred --verbose --random-source=/dev/urandom --iterations=3 /dev/sda
Tôi đã chạy lệnh trên với '--iterations=15' trên ổ SSD 120GB của mình qua đêm và lệnh đã hoàn tất sau 7 giờ.

Sau khi hoàn tất, hãy phân vùng ổ đĩa. Trừ khi bo mạch chủ của bạn đang sử dụng chương trình cơ sở UEFI, hãy đảm bảo chọn nhãn 'dos' (msdos), nếu không, hãy sử dụng 'gpt' khi bạn nhập:
Mã:
cfdisk /dev/sda


Sau đó, tạo phân vùng bộ nạp khởi động:
Mã:
Mới-> Kích thước phân vùng: 100M -> chính -> Có thể khởi động
Phân vùng cuối cùng sẽ là phân vùng gốc. Kích thước phân vùng sẽ được tự động đặt thành dung lượng trống còn lại của bạn.
Mã:
Mới-> Kích thước phân vùng: xxxGB -> chính
Ghi các thay đổi và thoát khỏi cfdisk.

Để khởi động phân vùng gốc được mã hóa của bạn, phân vùng bộ nạp khởi động /dev/sda1 sẽ được gắn kết trong /boot sẽ không được mã hóa. Tôi sẽ đặt một số liên kết ở cuối bài đăng này để hướng dẫn bạn cách mã hóa và thậm chí di chuyển phân vùng khởi động trên CD/DVD/USB.

Tạo thiết bị ánh xạ thiết bị mật mã ở chế độ mã hóa LUKS:
Mã:
cryptsetup --verbose --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 5000 --use-random luksFormat /dev/sda2
Mở khóa phân vùng, lưu ý rằng cryptroot sẽ là tên thiết bị ánh xạ mà chúng ta sẽ thao tác.
Mã:
cryptsetup open --type luks /dev/sda2 cryptroot
Tạo hệ thống tệp khởi động và gốc:
Mã:
mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/mapper/cryptroot
Gắn kết chúng:
Mã:
mount -t ext4 /dev/mapper/cryptroot /mnt
mkdir -p /mnt/boot
mount -t ext4 /dev/sda1 /mnt/boot
Cài đặt các hệ thống cơ sở và phát triển cơ sở:
Mã:
pacstrap -i /mnt base base-devel
Tạo fstab:
Mã:
genfstab -U -p /mnt >> /mnt/etc/fstab
Chroot để cấu hình hệ thống cơ sở:
Mã:
arch-chroot /mnt
Bỏ ghi chú cho ngôn ngữ en_US:
Mã:
sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g' /etc/locale.gen
Tạo ngôn ngữ:
Mã:
locale-gen
Tạo tệp cấu hình hướng dẫn hệ thống ngôn ngữ ngôn ngữ nào cần sử dụng:
Mã:
echo LANG=en_US.UTF-8 > /etc/locale.conf
Xuất ngôn ngữ
Mã:
export LANG=en_US.UTF-8
Tạo liên kết tượng trưng với múi giờ mong muốn:
Mã:
ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Đặt đồng hồ phần cứng thành UTC:
Mã:
hwclock --systohc --utc
Đặt tên máy chủ mong muốn:
Mã:
echo CookieMonster > /etc/hostname
Đặt mật khẩu gốc:
Mã:
passwd
Thêm người dùng hệ thống:
Mã:
useradd -m -g users -G wheel,games,power,optical,storage,scanner,lp,audio,video -s /bin/bash username
Đặt mật khẩu người dùng hệ thống:
Mã:
passwd username
Cài đặt sudo (base-devel) và bộ nạp khởi động grub và os-prober:
Mã:
pacman -S sudo grub-bios os-prober
Cho phép người dùng hệ thống sử dụng sudo và chạy lệnh (tạm thời) dưới dạng gốc:
Mã:
EDITOR=nano visudo
Nhấn CTRL + W và nhập wheel, sau đó bỏ chú thích dòng sau:



Thêm tham số hạt nhân sau để có thể mở khóa Phân vùng gốc được mã hóa LUKS trong khi khởi động hệ thống:



Thêm hook encrypt:



Vì chúng ta đã thêm hook mới vào tệp cấu hình mkinitcpio, chúng ta nên tạo lại ảnh initrams (ramdisk):
Mã:
mkinitcpio -p linux
Cài đặt grub và lưu tệp cấu hình của nó:
Mã:
grub-install --recheck /dev/sda
grub-mkconfig --output /boot/grub/grub.cfg
Thoát khỏi chroot, hủy gắn các phân vùng, đóng thiết bị và khởi động lại (gỡ bỏ phương tiện cài đặt):
Mã:
exit
umount -R /mnt/boot
umount -R /mnt
cryptsetup close cryptroot
 systemctl reboot
Sau khi bạn nhập mật khẩu và đăng nhập với tư cách hệ thống người dùng, khởi động dhcpcd.


Mã:
sudo systemctl start dhcpcd
ping -c2 youtube.com
Cài đặt Xorg và sao chép .xinitrc vào thư mục $HOME của bạn:
Mã:
sudo pacman -S xorg-server xorg-server-utils xorg-xinit mesa xterm xorg-twm xorg-xclock
cp /etc/X11/xinit/xinitrc ~/.xinitrc
Có một trang wiki đặc biệt chứa thông tin hữu ích về trình điều khiển GPU, hãy kiểm tra https://wiki.archlinux.org/index.php/xorg#Driver_installation và nếu thương hiệu GPU của bạn là amd/ati, intel hoặc nvidia, hãy cài đặt trình điều khiển phù hợp được liệt kê ở đó.

startx và bạn sẽ thấy một vài thiết bị đầu cuối cạnh nhau, bây giờ hãy nhập exit

Bình luận vào các dòng sau trong .xinitrc và thêm một số để chỉ định rằng chúng ta muốn môi trường máy tính để bàn xfce được khởi động sau khi đăng nhập thành công:



Cài đặt xfce, trình quản lý hiển thị ngoài và trình quản lý mạng:
Mã:
sudo pacman -S slim archlinux-themes-slim xfce4 networkmanager network-manager-applet
Đổi chủ đề slim mặc định:



Dừng dhcpcd, bật slim, bật NetworkManager, startx:
Mã:
sudo systemctl stop dhcpcd
sudo systemctl enable NetworkManager
sudo systemctl enable slim
startx
Vậy là xong, hy vọng bạn thích bài viết này bài đăng.



Nếu bạn có bao giờ làm hỏng hệ thống của mình và phải chroot từ phương tiện di động, thứ tự là:
Mã:
cryptsetup open --type luks /dev/sda2 cryptroot
mount -t ext4 /dev/mapper/cryptroot /mnt
mount -t ext4 /dev/sda1 /mnt/boot
arch-chroot /mnt
Để hủy gắn kết chúng:
Mã:
umount -R /mnt/boot
 umount -R /mnt
 cryptsetup close cryptroot

Liên kết​

Các liên kết đã hứa, hãy đọc kỹ liên kết thứ 8 và thứ 9 nếu bạn có SSD:
 
Back
Bên trên