10 bước bảo mật VPS Linux mới mua (Ubuntu, Debian)
Bảo mật VPS Linux nên làm ngay trong ngày đầu: chỉ vài giờ sau khi có IP, VPS đã bị các bot dò mật khẩu SSH. Bài viết tổng hợp 10 bước bảo mật VPS Ubuntu, Debian dễ làm, đủ cho phần lớn website và ứng dụng, kèm lệnh cụ thể.
Lưu ý trước khi bắt đầu: luôn giữ một cửa sổ SSH đang đăng nhập trong lúc sửa cấu hình SSH và tường lửa. Nếu cấu hình sai, bạn vẫn còn phiên đó để sửa lại, không bị khoá ngoài.
1. Cập nhật hệ thống
apt update && apt upgrade -y
Bản cập nhật vá các lỗ hổng đã biết. Nếu có cập nhật nhân (kernel), khởi động lại VPS khi phù hợp.
2. Đổi mật khẩu root thành mật khẩu mạnh
passwd
Dùng mật khẩu dài từ 16 ký tự, sinh ngẫu nhiên và lưu trong trình quản lý mật khẩu.
3. Tạo tài khoản thường có quyền sudo
adduser deploy
usermod -aG sudo deploy
Dùng tài khoản này cho công việc hằng ngày, chỉ chạy lệnh quản trị bằng sudo.
4. Đăng nhập bằng SSH key
Tạo khoá trên máy bạn bằng ssh-keygen -t ed25519 và đưa khoá công khai vào ~/.ssh/authorized_keys của tài khoản trên VPS. Hướng dẫn chi tiết trong bài kết nối VPS Linux bằng SSH. Thử đăng nhập lại bằng key cho chắc chắn trước khi sang bước 5.
5. Tắt đăng nhập bằng mật khẩu và hạn chế root
Mở file cấu hình SSH:
nano /etc/ssh/sshd_config
Sửa (hoặc thêm) các dòng:
PermitRootLogin prohibit-password
PasswordAuthentication no
Kiểm tra cấu hình rồi khởi động lại SSH:
sshd -t && systemctl restart ssh
Trên một số bản (CentOS, AlmaLinux), dịch vụ tên là sshd thay vì ssh. Mở một cửa sổ mới để thử đăng nhập trước khi đóng phiên cũ.
6. Đổi cổng SSH (tuỳ chọn)
Đổi cổng 22 sang cổng khác giúp giảm đáng kể lượng bot dò mật khẩu, dù không thay được các bước trên. Sửa dòng Port 22 trong /etc/ssh/sshd_config thành cổng mới (ví dụ Port 2222), mở cổng mới trên tường lửa trước (bước 7), rồi khởi động lại SSH.
Trên Ubuntu 24.04, SSH chạy theo cơ chế socket: sau khi sửa cổng cần chạy systemctl daemon-reload && systemctl restart ssh.socket.
7. Bật tường lửa UFW
apt install ufw -y
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp # hoặc cổng SSH bạn đã đổi
ufw allow 80,443/tcp # nếu chạy website
ufw enable
ufw status
Chỉ mở những cổng thật sự cần. Dịch vụ như MySQL, Redis không nên mở ra Internet; ứng dụng trên cùng VPS vẫn kết nối được qua 127.0.0.1.
8. Cài Fail2ban để chặn dò mật khẩu
apt install fail2ban -y
cat > /etc/fail2ban/jail.local <<'EOF'
[sshd]
enabled = true
maxretry = 5
bantime = 1h
EOF
systemctl enable --now fail2ban
fail2ban-client status sshd
Fail2ban tự chặn IP đăng nhập sai nhiều lần. Nếu đã đổi cổng SSH, thêm dòng port = 2222 vào mục [sshd].
9. Bật cập nhật bảo mật tự động
apt install unattended-upgrades -y
dpkg-reconfigure -plow unattended-upgrades
Hệ thống sẽ tự cài các bản vá bảo mật mỗi ngày.
10. Kiểm tra cổng đang mở và sao lưu
Xem dịch vụ nào đang lắng nghe trên VPS:
ss -tulpn
Mọi dịch vụ lắng nghe trên 0.0.0.0 hoặc [::] đều có thể truy cập từ bên ngoài nếu tường lửa cho phép. Từ bên ngoài, bạn có thể kiểm tra bằng công cụ kiểm tra port, hoặc dùng chức năng Bảo mật trong trang quản lý VPS của SuniHost để quét cổng và chấm điểm.
Cuối cùng, hãy sao lưu định kỳ dữ liệu quan trọng ra một nơi khác VPS (máy tính, lưu trữ đám mây). Bảo mật tốt đến đâu cũng không thay được bản sao lưu.
Câu hỏi thường gặp
Lỡ tự khoá mình ngoài VPS thì sao?
Dùng console trong trang quản lý VPS (nếu gói hỗ trợ) để đăng nhập trực tiếp và sửa lại cấu hình SSH hoặc tường lửa. Đó là lý do nên giữ một phiên SSH đang mở khi thay đổi cấu hình.
Có cần cài phần mềm diệt virus trên VPS Linux không?
Với VPS chạy website, quan trọng hơn là cập nhật đều, đặt quyền tệp đúng, không cài plugin/mã nguồn không rõ nguồn gốc và sao lưu. Có thể dùng thêm công cụ quét mã độc nếu chạy nhiều website của khách.
Kết luận
10 bước trên mất khoảng 20–30 phút nhưng chặn được phần lớn các kiểu tấn công tự động nhắm vào VPS mới. Làm xong, bạn có thể yên tâm cài đặt môi trường chạy website. Xem thêm các gói Cloud VPS nếu bạn cần thêm máy chủ.
Bạn thấy bài viết này hữu ích?
Chia sẻ lên Facebook