Cài tường lửa UFW cơ bản cho VPS Ubuntu
Hướng dẫn Linux Server · cập nhật 29/08/2026
Để cài tường lửa UFW trên VPS Ubuntu, bạn cài gói ufw, cho phép cổng SSH, mở các cổng web cần thiết, rồi bật tường lửa. Việc này mất khoảng 10 phút và chặn mọi kết nối tới các cổng bạn không mở.
UFW viết tắt của Uncomplicated Firewall, là công cụ quản lý tường lửa đơn giản đi kèm Ubuntu. Nó là lớp bảo vệ đầu tiên, chỉ cho phép truy cập vào những cổng bạn khai báo rõ ràng.
- Cài gói ufw nếu chưa có.
- Cho phép cổng SSH trước tiên.
- Mở cổng web 80 và 443.
- Bật tường lửa và kiểm tra trạng thái.
Luôn cho phép cổng SSH TRƯỚC khi bật UFW. Nếu bật tường lửa mà chưa mở SSH, mọi kết nối vào cổng 22 bị chặn ngay và bạn mất luôn phiên đang dùng, phải vào console để cứu.
UFW khác gì CSF firewall trên CentOS
UFW và CSF cùng là công cụ quản lý tường lửa, nhưng khác nền tảng và cách dùng. UFW gọn nhẹ, đi kèm sẵn Ubuntu và Debian, hợp cho người mới cần mở vài cổng. CSF nhiều tính năng hơn, thường cài trên CentOS và các máy có bảng điều khiển, kèm cả chặn dò mật khẩu.
| Tiêu chí | UFW | CSF |
|---|---|---|
| Hệ điều hành | Ubuntu, Debian | CentOS, AlmaLinux |
| Độ phức tạp | Đơn giản, ít lệnh | Nhiều tuỳ chọn |
| Chặn dò mật khẩu | Không, cần thêm Fail2Ban | Có sẵn tích hợp |
| Hợp với | Người mới, VPS thuần | Máy có control panel |
Nếu VPS của bạn chạy CentOS hoặc có bảng điều khiển, xem bài cài ConfigServer Security and Firewall trên CentOS thay vì bài này.
Cài UFW và kiểm tra trạng thái ban đầu
Trên Ubuntu, UFW thường cài sẵn nhưng chưa bật. Bạn kiểm tra bằng lệnh trạng thái, và cài lại nếu thiếu. Trạng thái mặc định là inactive, nghĩa là tường lửa chưa hoạt động và mọi cổng đang mở.
sudo apt update
sudo apt install ufw
sudo ufw status
Các bước mở cổng và bật tường lửa
Bốn bước dưới đây làm theo đúng thứ tự để không tự khoá mình ra ngoài. Bạn cho phép SSH trước, mở cổng web, rồi mới bật tường lửa. Sau khi bật, UFW chặn mọi cổng không được khai báo.
1. Cho phép cổng SSH
Mở cổng SSH trước tiên. Nếu bạn dùng cổng mặc định 22, gõ:
sudo ufw allow ssh
Nếu đã đổi cổng SSH sang số khác, mở đúng cổng đó, ví dụ 2222:
sudo ufw allow 2222/tcp
2. Mở cổng web 80 và 443
Website chạy trên cổng 80 cho HTTP và 443 cho HTTPS. Mở cả hai nếu VPS có chạy web.
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
3. Bật tường lửa
Sau khi đã mở đủ các cổng cần thiết, bật UFW. Lệnh sẽ hỏi xác nhận, gõ y rồi Enter.
sudo ufw enable
4. Kiểm tra danh sách cổng đã mở
Xem lại toàn bộ luật đang áp để chắc không thiếu cổng nào.
sudo ufw status numbered
Mở thêm hoặc xoá cổng khi cần
Sau này khi cài dịch vụ mới, bạn mở thêm cổng bằng lệnh allow. Muốn gỡ một cổng đã mở, dùng delete kèm số luật hiện trong bảng status. Ví dụ đóng cổng 80 nếu website chuyển hết sang HTTPS.
sudo ufw delete allow 80/tcp
Mỗi lần đổi luật, chạy lại sudo ufw status để xác nhận. Danh sách này là bản ghi rõ ràng những gì VPS đang mở ra internet.
Việc nên làm tiếp sau khi có tường lửa
Tường lửa chặn được kết nối tới cổng lạ, nhưng không ngăn được ai đó dò mật khẩu ngay trên cổng SSH bạn đã mở. Vì vậy bước tiếp theo hợp lý là cài Fail2Ban để tự khoá IP dò sai nhiều lần, và chuyển sang đăng nhập bằng khoá SSH.
UFW giữ cấu hình qua các lần khởi động lại máy, nên bạn không phải bật lại sau mỗi lần reboot. Chỉ cần nhớ mỗi khi cài dịch vụ mới nghe cổng nào thì mở cổng đó, nếu không dịch vụ chạy mà bên ngoài không kết nối được.
Bài khác trong Linux Server
Xem cả 22 bàiLàm theo vẫn chưa được?
Gửi yêu cầu hỗ trợ, kỹ thuật xem trực tiếp trên dịch vụ của Anh/Chị.