Bảo mật cPanel cơ bản cho VPS mới
Giới Thiệu
Khi bạn triển khai một VPS mới với cPanel, việc thiết lập các biện pháp bảo mật cơ bản ngay từ đầu là cực kỳ quan trọng. Điều này giúp bảo vệ máy chủ của bạn khỏi các mối đe dọa phổ biến, ngăn chặn truy cập trái phép và đảm bảo hoạt động ổn định cho các website và dịch vụ của bạn. Một VPS không được bảo mật đúng cách cđ thể trở thành mục tiêu dễ dàng cho tin tặc, dẫn đến mất dữ liệu, gián đoạn dịch vụ hoặc thậm chí là bị lợi dụng cho các hoạt động độc hại.
📋 Thời gian: 20-30 phút | Độ khó: Cơ bản
Yêu Cầu
Để thực hiện hướng dẫn này, bạn cần có:
- Một VPS mới đã cài đặt cPanel/WHM.
- Quyền truy cập root hoặc người dùng có quyền sudo vào VPS qua SSH.
- Mật khẩu đăng nhập vào WHM (Web Host Manager).
Các Bước Thực Hiện
Bước 1: Cập nhật hệ thống
Luôn bắt đầu bằng việc cập nhật toàn bộ hệ thống để đảm bảo tất cả các gói phần mềm và kernel đều ở phiên bản mới nhất, vá các lỗ hổng bảo mật đã biết.
# Đối với CentOS/AlmaLinux/Rocky Linux (phổ biến với cPanel)
sudo yum update -y
sudo yum upgrade -y # Đảm bảo tất cả các gói được nâng cấp
sudo reboot # Khởi động lại nếu kernel được cập nhật
# Đối với Ubuntu/Debian (ít phổ biến hơn cho cPanel, nhưng là ví dụ)
# sudo apt update && sudo apt upgrade -y
# sudo reboot # Khởi động lại nếu kernel được cập nhật
💡 Mẹo: Sau khi cập nhật kernel, hãy khởi động lại VPS để áp dụng các thay đổi mới.
Bước 2: Đổi mật khẩu mặc định mạnh
Mật khẩu mặc định hoặc mật khẩu yếu là một trong những điểm yếu bảo mật lớn nhất. Hãy thay đổi mật khẩu root, mật khẩu WHM và tất cả các tài khoản cPanel đã tạo.
- Đổi mật khẩu root (qua SSH):
passwd root
# Nhập mật khẩu mới hai lần. Đảm bảo mật khẩu mạnh, bao gồm chữ hoa, chữ thường, số và ký tự đặc biệt. - Đổi mật khẩu WHM:
Đăng nhập vào WHM (thường là
https://your_vps_ip:2087hoặchttps://your_vps_ip/whm), điều hướng đếnSecurity Center>Change Root Password. ✅ Lưu ý: Mật khẩu WHM và mật khẩu root thường đồng bộ, nhưng việc đổi cả hai cách đảm bảo. - Đổi mật khẩu tài khoản cPanel:
Trong WHM, đi tới
Account Functions>Password Modificationđể thay đổi mật khẩu cho các tài khoản cPanel của người dùng.
Bước 3: Bảo mật SSH
SSH là cổng chính để quản lý VPS của bạn. Bảo mật SSH là tối quan trọng.
-
Vô hiệu hóa đăng nhập root trực tiếp: Thay vì đăng nhập trực tiếp bằng tài khoản root, bạn nên tạo một ngưđi dùng mới và sử dụng
sudođể thực hiện các tác vụ quản trị.# Tạo người dùng mới (ví dụ: adminuser)
sudo adduser adminuser
# Đặt mật khẩu cho người dùng mới
sudo passwd adminuser
# Thêm người dùng vào nhóm wheel (để có thể sử dụng sudo trên CentOS/AlmaLinux/Rocky Linux)
sudo usermod -aG wheel adminuserSau đó, chỉnh sửa file cấu hình SSH:
sudo vi /etc/ssh/sshd_configTìm dòng
PermitRootLoginvà thay đổi thành:PermitRootLogin no -
Thay đổi cổng SSH mặc định (từ 22 sang một cổng khác): Tìm dòng
#Port 22hoặcPort 22và thay đổi nó thành một số cổng khác (ví dụ: 2222, 54321).Port 2222⚠️ Quan trọng: Sau khi thay đổi cổng, bạn cần mở cổng mới này trong firewall.
-
Khởi động lại dịch vụ SSH:
sudo systemctl restart sshd💡 Mẹo: Đừng đóng phiên SSH hiện tại cho đến khi bạn đã kiểm tra và xác nhận có thể đăng nhập lại bằng cổng và người dùng mới.
Bước 4: Cài đặt và cấu hình Firewall (CSF/LFD)
ConfigServer Security & Firewall (CSF/LFD) là một firewall rất mạnh mẽ và phổ biến cho cPanel. Nó cung cấp bảo vệ chống lại các cuộc tấn công DDoS, brute-force và nhiều mối đe dọa khác.
-
Cài đặt CSF/LFD (nếu chưa có):
cd /usr/local/src
rm -fv csf.tgz
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.shSau khi cài đặt, chạy kiểm tra các mô-đun cần thiết:
perl /usr/local/csf/bin/csftest.plNếu có bất kỳ cảnh báo nào, hãy cài đặt các mô-đun đó.
-
Cấu hình cơ bản: Mở file cấu hình chính:
sudo vi /etc/csf/csf.conf- Thay đổi
TESTING = "1"thànhTESTING = "0"để kích hoạt firewall. - Cập nhật
TCP_INvàTCP_OUTđể bao gồm cổng SSH mới của bạn (ví dụ: 2222). - Lưu lại file.
- Thay đổi
-
Khởi động lại CSF:
csf -r✅ Xác minh: Truy cập WHM >
Plugins>ConfigServer Security & Firewall. Đảm bảo CSF đang chạy và bạn có thể quản lý nó từ giao diện WHM.
Bước 5: Kích hoạt AutoSSL và Force HTTPS
Mã hóa lưu lượng truy cập là cần thiết cho bảo mật và SEO. cPanel cung cấp AutoSSL miđơn phí.
-
Kích hoạt AutoSSL: Trong WHM, điều hướng đến
SSL/TLS>Manage AutoSSL. Chọn một nhà cung cấp AutoSSL (ví dụ: cPanel (powered by Sectigo)) và nhấnEnable AutoSSL. Sau đó, chạyRun AutoSSL for all usersđể cấp phát chứng chỉ cho tất cả các domain. -
Force HTTPS: Sau khi chứng chỉ SSL được cấp phát, bạn nên buộc tất cả các truy cập web qua HTTPS.
- Trong WHM, đi tới
SSL/TLS>Force HTTPS Redirect. Bật tính năng này cho các domain của bạn. - Hoặc, bạn có thể thêm cấu hình chuyển hướng vào file
.htaccesscủa từng website:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] - Trong WHM, đi tới
Bước 6: Cấu hình Xác thực hai yếu tố (2FA)
Xác thực hai yếu tố (2FA) bổ sung một lớp bảo mật quan trọng cho việc đăng nhập WHM và cPanel.
- Kích hoạt 2FA trong WHM:
Trong WHM, đi tới
Security Center>Two-Factor Authentication. NhấnManage My Issuersđể thêm và cấu hình các ứng dụng xác thực như Google Authenticator. Sau khi cấu hình, bạn có thể buộc người dùng sử dụng 2FA cho các tài khoản cPanel của họ thông quaManage My Users.
Troubleshooting
-
Lỗi không thể đăng nhập SSH sau khi thay đổi cổng hoặc tắt root:
- Nguyên nhân: Có thể bạn đã cấu hình sai cổng trong
sshd_confighoặc firewall chưa được cập nhật. - Cách xử lý: Nếu bạn vẫn còn phiên SSH cũ đang mở, hãy kiểm tra lại cấu hình. Nếu không, bạn có thể cần truy cập VPS qua bảng điều khiển của nhà cung cấp (Console Access) để sửa lỗi hoặc mở cổng.
- Giải pháp: Đảm bảo cổng mới được thêm vào
TCP_INcủa CSF (/etc/csf/csf.conf) và khởi động lại CSF (csf -r).
- Nguyên nhân: Có thể bạn đã cấu hình sai cổng trong
-
Website không hoạt động hoặc không truy cập được sau khi cấu hình firewall:
- Nguyên nhân: Firewall có thể đã chặn các cổng cần thiết (ví dụ: 80 cho HTTP, 443 cho HTTPS).
- Cách xử lý: Kiểm tra lại cấu hình
TCP_INtrong/etc/csf/csf.conf. Đảm bảo các cổng 80, 443, 2082, 2083, 2086, 2087, 2095, 2096 (cho cPanel/WHM/webmail) đã được mở. - Giải pháp: Thêm các cổng bị thiếu vào
TCP_INvà khởi động lại CSF (csf -r).
-
Quên mật khẩu cPanel/WHM:
- Cách xử lý: Bạn có thể đặt lại mật khđu WHM qua SSH bằng lệnh
passwd root. Đối với tài khoản cPanel, đăng nhập vào WHM với quyền root, sau đó đi tớiAccount Functions>Password Modificationđể đặt lại mật khẩu cho tài khoản cPanel cụ thể.
- Cách xử lý: Bạn có thể đặt lại mật khđu WHM qua SSH bằng lệnh
Kết Luận
Bảo mật cPanel trên VPS mới là một quá trình liên tục, nhưng việc thiết lập các biện pháp cơ bản ngay từ đầu sẽ tạo ra một nền tảng vững chắc. Bằng cách thực hiện các bước như cập nhật hệ thống, sử dụng mật khẩu mạnh, bảo mật SSH, triển khai firewall (CSF/LFD), kích hoạt SSL và 2FA, bạn đã giảm thiểu đáng kể rủi ro bị tấn công.
Best practices:
- Thường xuyên cập nhật: Luôn giữ hệ thống và cPanel ở phiên bản mới nhất.
- Sao lưu định kỳ: Đảm bảo bạn có các bản sao lưu đầy đủ và thường xuyên của dữ liệu.
- Kiểm tra nhật ký (logs): Định kỳ kiểm tra nhật ký hệ thống và cPanel để phát hiện hoạt động đáng ngờ.
- Sử dụng mật khẩu mạnh: Luôn sử dụng mật khẩu phức tạp và duy nhất cho mọi dịch vụ.
- Giới hạn quyền truy cập: Chỉ cấp quyền truy cập cần thiết và xem xét lại định kỳ.
Hãy biến bảo mật thành ưu tiên hàng đầu để đảm bảo VPS và website của bạn luôn an toàn và hoạt động hiệu quả.
Xem thêm: