Cài Đặt Rocky Linux Cho Môi Trường Production
Tổng Quan
Rocky Linux là một hệ điều hành mã nguồn mở, miễn phí, là bản build nhị phân tương thích 1:1 với Red Hat Enterprise Linux (RHEL). Nó ra đời nhằm lấp đầy khoảng trống do sự thay đổi định hướng của CentOS Linux, cung cấp một lựa chọn ổn định, đáng tin cậy và có vòng đời hỗ trợ dài hạn (LTS) cho các môi trường sản xuất.
Việc cài đặt và cấu hình Rocky Linux đúng cách cho môi trường production là vô cùng quan trọng để đảm bảo tính sẵn sàng cao, bảo mật chặt chẽ và hiệu suất tối ưu cho các ứng dụng và dịch vụ của bạn. Từ web server, database server, ứng dụng doanh nghiệp cho đến các giải pháp ảo hóa và container, Rocky Linux đều là một nền tảng vững chắc.
Metadata:
- Thời gian thực hiện: Khoảng 30-60 phút (không bao gồm thời gian tải ISO và tạo USB bootable).
- Độ khó: Trung bình.
- Yêu cầu: Kiến thức cơ bản về Linux Command Line Interface (CLI), hiểu biết về BIOS/UEFI, và khái niệm về phân vùng đĩa.
Yêu Cầu Hệ Thống
Để đảm bảo Rocky Linux hoạt động ổn định và hiệu quả trong môi trường production, hãy xem xét các cấu hình sau:
Cấu hình Tối Thiểu
- CPU: 2 lõi (core) x86-64
- RAM: 2 GB
- Ổ đĩa: 20 GB HDD/SSD
- Mạng: 1 card mạng Ethernet
Cấu hình Khuyến Nghị cho Production
- CPU: 4 lõi trở lên, kiến trúc x86-64
- RAM: 4 GB trở lên (tùy thuộc vào ứng dụng)
- Ổ đĩa: 50 GB SSD trở lên (để đạt hiệu suất I/O tốt nhất)
- Lưu ý: Sử dụng RAID phần cứng hoặc phần mềm (MDADM) nếu cần độ bền và hiệu suất cao.
- Mạng: 1 hoặc 2 card mạng Ethernet Gigabit trở lên (để dự phòng hoặc tách biệt mạng).
Các Bước Thực Hiện Chi Tiết
Bước 1: Chuẩn Bị Phương Tiện Cài Đặt
-
Tải xuống File ISO của Rocky Linux: Truy cập trang web chính thức của Rocky Linux và tải xuống phiên bản ISO mới nhất. Chọn bản "Minimal" hoặc "DVD" tùy theo nhu cầu. 🌐 Tải xuống từ: https://rockylinux.org/download/
-
Tạo USB bootable hoặc gắn ISO vào máy ảo:
- Đối với máy vật lý: Sử dụng các công cụ như
Rufus(Windows),Ventoy(Windows/Linux) hoặc lệnhdd(Linux) để tạo USB bootable.# Ví dụ sử dụng lệnh dd trên Linux (thay /dev/sdX bằng thiết bị USB của bạn)
# ⚠️ Cẩn thận: Lệnh này sẽ xóa toàn bộ dữ liệu trên USB.
sudo dd if=/path/to/Rocky-x.x-x86_64-dvd.iso of=/dev/sdX bs=4M status=progress
sudo sync - Đối với máy ảo (VMware, VirtualBox, KVM, Hyper-V): Gắn trực tiếp file ISO đã tải vào ổ đĩa quang ảo của máy ảo.
- Đối với máy vật lý: Sử dụng các công cụ như
Bước 2: Khởi Động Từ Phương Tiện Cài Đặt
- Cắm USB bootable vào máy vật lý hoặc đảm bảo ISO đã được gắn vào máy ảo.
- Khởi động lại hệ thống và truy cập vào menu BIOS/UEFI để thay đổi thứ tự khởi động, ưu tiên boot từ USB hoặc ổ đĩa quang (nếu là máy ảo).
- Khi màn hình khởi động của Rocky Linux xuất hiện, chọn "Install Rocky Linux" và nhấn
Enter.
Bước 3: Cấu Hình Ban Đầu Với Anaconda Installer
Trình cài đặt Anaconda sẽ hướng dẫn bạn qua các bước.
-
Ngôn ngữ và Bàn phím:
- Chọn ngôn ngữ cài đặt (ví dụ: English (United States)) và bố cục bàn phím phù hợp.
- Nhấn
Continue.
-
Màn hình "Installation Summary": Đây là trung tâm cấu hình chính. Bạn cần chú ý đến các mục sau:
-
LOCALIZATION
- Time & Date: 🌐 Chọn khu vực và thành phố của bạn (ví dụ: Asia/Ho_Chi_Minh). Đảm bảo "Network Time" được bật để đồng bộ thời gian.
- Keyboard: Kiểm tra lại nếu cần.
- Language Support: Để mặc định hoặc thêm ngôn ngữ nếu cần.
-
SOFTWARE
- Installation Source: Để mặc định là "Auto-detected installation media".
- ⚙️ Software Selection: Đây là một bước quan trọng cho production.
- "Server with GUI": Nếu bạn cần giao diện đồ họa.
- "Server": Cài đặt tối thiểu với các công cụ quản lý cơ bản, không có GUI. Khuyến nghị cho hầu hết các production server.
- "Minimal Install": Chỉ cài đặt các gói cơ bản nhất. Phù hợp nếu bạn muốn kiểm soát hoàn toàn các gói cài đặt và giảm thiểu footprint.
- 💡 Lời khuyên: Đối với production server, nên chọn "Minimal Install" hoặc "Server" để giảm thiểu các lỗ hổng bảo mật tiềm ẩn và tài nguyên tiêu thụ. Bạn có thể cài đặt thêm các gói sau này.
-
SYSTEM
- 🔒 Installation Destination: Đây là nơi bạn cấu hình phân vùng đĩa.
- Chọn ổ đĩa mà bạn muốn cài đặt.
- ⚠️ Quan trọng: Đối với production, KHUYẾN NGHỊ chọn "Custom" để phân vùng thủ công.
- Nhấn
Doneđể vào màn hình phân vùng thủ công. - Chọn "Standard Partition" hoặc "LVM" (Logical Volume Management). LVM được khuyến nghị cho production vì nó cung cấp sự linh hoạt cao hơn trong việc quản lý và mở rộng dung lượng ổ đĩa sau này.
- Ví dụ về phân vùng khuyến nghị cho LVM:
/boot(Standard Partition, ext4, 1GB): Chứa kernel và các file liên quan đến boot.- Tạo một Volume Group (VG) từ phần còn lại của ổ đĩa.
- Tạo các Logical Volume (LV) trong VG:
/(root, xfs/ext4, khoảng 30GB-50GB): Hệ thống gốc./home(xfs/ext4, nếu cần, dung lượng nhỏ hoặc không cần): Thư mục người dùng./var(xfs/ext4, khoảng 20GB-50GB): Chứa logs, spool files, web data. Tách riêng/vargiúp tránh việc log đầy làm sập hệ thống./opt(xfs/ext4, dung lượng còn lại hoặc tùy nhu cầu): Nơi cài đặt các ứng dụng của bên thứ ba.swap(swap, 2GB-4GB hoặc bằng RAM nếu RAM < 4GB): Vùng nhớ ảo.
- Nhấn
Donesau khi hoàn tất phân vùng. Chấp nhận các thay đổi.
- 🔒 Network & Host Name:
- Bật card mạng của bạn (chuyển công tắc từ OFF sang ON).
- Đặt Hostname cho server (ví dụ:
webserver01.yourdomain.com). - Cấu hình IP tĩnh nếu cần thiết cho production. Nhấn
Configure..., vào tabIPv4 Settings, chọnManual, thêm địa chỉ IP, Netmask, Gateway và DNS Servers. - Nhấn
Done.
- Kdump: 📊 Tắt Kdump nếu bạn không có yêu cầu cụ thể về phân tích kernel crash dump để tiết kiệm tài nguyên.
- Security Policy: Để mặc định trừ khi có yêu cầu bảo mật đặc biệt (ví dụ: STIG).
- 🔒 Installation Destination: Đây là nơi bạn cấu hình phân vùng đĩa.
-
USER SETTINGS
- 🔒 Root Password: Đặt mật khẩu mạnh cho tài khoản root.
- ⚠️ Cảnh báo: Mật khẩu root là cực kỳ quan trọng. Hãy đảm bảo nó đủ mạnh và được ghi nhớ hoặc lưu trữ an toàn.
- User Creation: Tạo một tài khoản người dùng thông thường và đặt mật khẩu.
- Chọn "Make this user administrator" để cấp quyền
sudocho người dùng này. Đây là best practice để tránh sử dụng tài khoản root trực tiếp cho các tác vụ hàng ngày.
- Chọn "Make this user administrator" để cấp quyền
- 🔒 Root Password: Đặt mật khẩu mạnh cho tài khoản root.
-
-
Bắt đầu Cài Đặt:
- Sau khi cấu hình xong tất cả các mục, nhấn "Begin Installation".
- Hệ thống sẽ bắt đầu cài đặt các gói phần mềm.
Bước 4: Hoàn Tất Cài Đặt và Khởi Động Lại
- Khi quá trình cài đặt hoàn tất, bạn sẽ thấy thông báo "Rocky Linux is now successfully installed...".
- Nhấn "Reboot System".
- ⚠️ Lưu ý: Sau khi khởi động lại, hãy rút USB bootable ra khỏi máy vật lý hoặc ngắt kết nối ISO khỏi máy ảo để hệ thống boot từ ổ đĩa cứng.
Bước 5: Cấu Hình Sau Cài Đặt (Post-Installation)
Sau khi Rocky Linux khởi động lần đầu, hãy đăng nhập bằng tài khoản người dùng bạn đã tạo (hoặc root nếu cần) và thực hiện các cấu hình cơ bản sau:
-
Cập nhật hệ thống: Luôn cập nhật hệ thống lên phiên bản mới nhất để đảm bảo các bản vá bảo mật và sửa lỗi được áp dụng.
sudo dnf update -y
sudo dnf upgrade -y -
Cài đặt các công cụ cơ bản: Các công cụ này hữu ích cho việc quản trị và gỡ lỗi.
sudo dnf install -y vim git net-tools htop firewalld epel-releaseepel-release: Cần thiết để truy cập các gói bổ sung từ kho EPEL.
-
Cấu hình Firewall (Firewalld): Rocky Linux sử dụng
firewalldlàm tường lửa mặc định. Đảm bảo nó được bật và cấu hình đúng cách.sudo systemctl enable --now firewalld # Bật và khởi động firewalld
sudo firewall-cmd --permanent --add-service=ssh # Cho phép SSH
# Ví dụ: Mở port 80 cho Web Server (HTTP)
# sudo firewall-cmd --permanent --add-service=http
# Ví dụ: Mở port 443 cho Web Server (HTTPS)
# sudo firewall-cmd --permanent --add-service=https
# Ví dụ: Mở port tùy chỉnh
# sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload # Áp dụng các thay đổi
sudo firewall-cmd --list-all # Kiểm tra cấu hình hiện tại -
Cấu hình SSH an toàn: 🔒 Để tăng cường bảo mật, hãy cấu hình SSH.
- Tắt đăng nhập root trực tiếp:
sudo vim /etc/ssh/sshd_config
# Tìm dòng "PermitRootLogin yes" và thay đổi thành:
PermitRootLogin no - Sử dụng xác thực bằng khóa SSH (Key-based authentication):
Đây là phương pháp bảo mật hơn so với mật khẩu.
- Tạo cặp khóa SSH trên máy client của bạn.
- Copy public key lên server.
- Cấu hình
sshd_configđể chỉ cho phép xác thực bằng khóa.
# Trên server, đảm bảo các dòng này được cấu hình:
PubkeyAuthentication yes
PasswordAuthentication no # Sau khi đã cấu hình key-based login thành công - Khởi động lại dịch vụ SSH sau khi thay đổi:
sudo systemctl restart sshd
- Tắt đăng nhập root trực tiếp:
-
Cấu hình SELinux: SELinux (Security-Enhanced Linux) là một cơ chế bảo mật quan trọng.
- 💡 Khuyến nghị: Luôn để SELinux ở chế độ
enforcingtrong môi trường production. - Kiểm tra trạng thái SELinux:
sestatus - Nếu cần thay đổi (chỉ khi bạn hiểu rõ):
# Để thay đổi sang chế độ Permissive (không chặn, chỉ ghi log)
sudo setenforce 0
# Để thay đổi sang chế độ Enforcing
sudo setenforce 1
# Để thay đổi vĩnh viễn (sau khi reboot)
sudo vim /etc/selinux/config
# Thay đổi SELINUX=enforcing thành SELINUX=permissive hoặc SELINUX=disabled (không khuyến nghị)
- 💡 Khuyến nghị: Luôn để SELinux ở chế độ
-
Cấu hình múi giờ (Time Zone): Đảm bảo múi giờ được đặt chính xác.
timedatectl set-timezone Asia/Ho_Chi_Minh
timedatectl status -
Đồng bộ thời gian (NTP): Đảm bảo hệ thống luôn đồng bộ thời gian với các máy chủ NTP để tránh các vấn đề liên quan đến chứng chỉ, nhật ký và giao dịch.
sudo dnf install -y chrony
sudo systemctl enable --now chronyd
sudo chronyc sources # Kiểm tra các nguồn NTP -
Giám sát và Backup:
- Giám sát: Cài đặt các công cụ giám sát hệ thống (ví dụ: Prometheus, Grafana, Nagios, Zabbix) để theo dõi hiệu suất và tình trạng server.
- Backup: Thiết lập giải pháp backup định kỳ cho dữ liệu quan trọng. Đây là yếu tố sống còn trong môi trường production.
Troubleshooting hoặc Các Vấn Đề Thường Gặp
- Không boot được từ USB/ISO:
- Kiểm tra lại cài đặt BIOS/UEFI về thứ tự boot.
- Đảm bảo USB/ISO đã được tạo/gắn đúng cách.
- Thử dùng một công cụ tạo bootable khác hoặc một USB khác.
- Không nhận diện ổ cứng trong quá trình cài đặt:
- Kiểm tra kết nối cáp SATA/NVMe.
- Nếu là RAID controller, bạn có thể cần cung cấp driver RAID trong quá trình cài đặt (thường không cần với các hệ thống hiện đại).
- Đảm bảo ổ đĩa không bị hỏng.
- Lỗi mạng sau cài đặt:
- Kiểm tra lại cấu hình IP trong
/etc/sysconfig/network-scripts/ifcfg-enpXsY. - Đảm bảo dịch vụ
NetworkManagerhoặcnetworkđang chạy:sudo systemctl status NetworkManager. - Kiểm tra trạng thái card mạng:
ip a. - Kiểm tra cấu hình firewall:
sudo firewall-cmd --list-all.
- Kiểm tra lại cấu hình IP trong
- SELinux ngăn chặn dịch vụ:
- Nếu một dịch vụ không hoạt động và bạn nghi ngờ SELinux, hãy kiểm tra log:
sudo tail -f /var/log/audit/audit.loghoặcsudo journalctl -xe. - Sử dụng lệnh
sudo ausearch -c <tên_dịch_vụ> | audit2allow -M mypolicyđể tạo policy tùy chỉnh nếu bạn chắc chắn hành vi đó là hợp lệ. - Tạm thời chuyển SELinux sang
permissive(sudo setenforce 0) để kiểm tra xem lỗi có phải do SELinux không.
- Nếu một dịch vụ không hoạt động và bạn nghi ngờ SELinux, hãy kiểm tra log:
- Quên mật khẩu root:
- Khởi động lại hệ thống.
- Khi màn hình GRUB xuất hiện, nhấn
eđể chỉnh sửa mục boot. - Tìm dòng bắt đầu bằng
linuxvà thêmrd.break enforcing=0vào cuối dòng. - Nhấn
Ctrl+xhoặcF10để boot. - Sau khi boot vào shell, thực hiện:
mount -o remount,rw /sysroot
chroot /sysroot
passwd root
touch /.autorelabel # Để SELinux tự động re-label sau khi reboot
exit
reboot
Kết Luận
Việc cài đặt Rocky Linux cho môi trường production đòi hỏi sự cẩn trọng và tuân thủ các best practices về cấu hình hệ thống và bảo mật. Bằng cách làm theo các bước hướng dẫn chi tiết này, bạn đã thiết lập một nền tảng vững chắc, ổn định và bảo mật cho các ứng dụng và dịch vụ của mình.
Best Practices Quan Trọng:
- Bảo mật: Luôn sử dụng mật khẩu mạnh, xác thực bằng khóa SSH, cấu hình firewall chặt chẽ và giữ SELinux ở chế độ
enforcing. - Cập nhật: Thường xuyên cập nhật hệ thống để nhận các bản vá bảo mật và cải tiến.
- Backup: Triển khai giải pháp backup đáng tin cậy cho tất cả dữ liệu quan trọng.
- Giám sát: Theo dõi hiệu suất và tình trạng của server để phát hiện sớm các vấn đề.
- Tài liệu hóa: Ghi lại tất cả các thay đổi cấu hình và quy trình quản lý.
Chúc mừng bạn đã cài đặt thành công Rocky Linux, một lựa chọn tuyệt vời cho môi trường production của bạn!
Tài liệu tham khảo
- Trang chủ Rocky Linux: https://rockylinux.org/
- Tài liệu Rocky Linux: https://docs.rockylinux.org/
- Tài liệu Red Hat Enterprise Linux (có thể áp dụng cho Rocky Linux): https://access.redhat.com/documentation/