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ế
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:
Sau đó, tạo phân vùng bộ nạp 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.
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
Tạo thiết bị ánh xạ thiết bị mật mã ở chế độ mã hóa LUKS:
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.
Tạo hệ thống tệp khởi động và gốc:
Gắn kết chúng:
Cài đặt các hệ thống cơ sở và phát triển cơ sở:
Tạo fstab:
Chroot để cấu hình hệ thống cơ sở:
Bỏ ghi chú cho ngôn ngữ en_US:
Tạo ngôn ngữ:
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:
Xuất ngôn ngữ
Tạo liên kết tượng trưng với múi giờ mong muốn:
Đặt đồng hồ phần cứng thành UTC:
Đặt tên máy chủ mong muốn:
Đặt mật khẩu gốc:
Thêm người dùng hệ thống:
Đặt mật khẩu người dùng hệ thống:
Cài đặt sudo (base-devel) và bộ nạp khởi động grub và 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:
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):
Cài đặt grub và lưu tệp cấu hình của nó:
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):
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.
Cài đặt Xorg và sao chép .xinitrc vào thư mục $HOME của bạn:
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ê ở đó.
Gõ
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:
Đổi chủ đề slim mặc định:
Dừng dhcpcd, bật slim, bật NetworkManager, 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à:
Để hủy gắn kết chúng:
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
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
Mã:
Mới-> Kích thước phân vùng: xxxGB -> chính
Để 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ã:
cryptsetup open --type luks /dev/sda2 cryptroot
Mã:
mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/mapper/cryptroot
Mã:
mount -t ext4 /dev/mapper/cryptroot /mnt
mkdir -p /mnt/boot
mount -t ext4 /dev/sda1 /mnt/boot
Mã:
pacstrap -i /mnt base base-devel
Mã:
genfstab -U -p /mnt >> /mnt/etc/fstab
Mã:
arch-chroot /mnt
Mã:
sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g' /etc/locale.gen
Mã:
locale-gen
Mã:
echo LANG=en_US.UTF-8 > /etc/locale.conf
Mã:
export LANG=en_US.UTF-8
Mã:
ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Mã:
hwclock --systohc --utc
Mã:
echo CookieMonster > /etc/hostname
Mã:
passwd
Mã:
useradd -m -g users -G wheel,games,power,optical,storage,scanner,lp,audio,video -s /bin/bash username
Mã:
passwd username
Mã:
pacman -S sudo grub-bios os-prober
Mã:
EDITOR=nano visudo
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
Mã:
grub-install --recheck /dev/sda
grub-mkconfig --output /boot/grub/grub.cfg
Mã:
exit
umount -R /mnt/boot
umount -R /mnt
cryptsetup close cryptroot
systemctl reboot
Mã:
sudo systemctl start dhcpcd
ping -c2 youtube.com
Mã:
sudo pacman -S xorg-server xorg-server-utils xorg-xinit mesa xterm xorg-twm xorg-xclock
cp /etc/X11/xinit/xinitrc ~/.xinitrc
Gõ
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
Dừng dhcpcd, bật slim, bật NetworkManager, startx:
Mã:
sudo systemctl stop dhcpcd
sudo systemctl enable NetworkManager
sudo systemctl enable slim
startx
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
Mã:
umount -R /mnt/boot
umount -R /mnt
cryptsetup close cryptroot