EQVPS

Cách cấu hình tường lửa UFW trên VPS

Thiết lập một tường lửa đơn giản, hiệu quả với UFW: cho phép SSH trước tiên (để bạn không tự khóa mình ngoài), chỉ mở những cổng bạn cần, rồi bật nó lên. Một tường lửa default-deny sạch sẽ chỉ trong vài lệnh.

Một tường lửa quyết định cổng nào trên máy chủ của bạn chấp nhận kết nối từ bên ngoài. Mọi thứ bạn không mở rõ ràng đều nên bị đóng — đó là default-deny, và nó thu hẹp bề mặt tấn công của bạn xuống chỉ còn các dịch vụ bạn thực sự chạy. UFW làm điều này trở nên đơn giản. Điều duy nhất cần làm đúng là thứ tự: cho phép SSH trước khi bạn bật tường lửa, nếu không bạn sẽ tự khóa mình ngoài.

1. Cài đặt UFW (thường đã có sẵn)

sudo apt update && sudo apt install -y ufw

2. Cho phép SSH TRƯỚC TIÊN — trước bất cứ điều gì khác

Đây là bước ngăn bạn bị khóa ngoài. Hãy làm nó trước enable:

sudo ufw allow OpenSSH
# or, if you use a custom SSH port:
# sudo ufw allow 22/tcp

3. Chỉ mở những cổng bạn cần

sudo ufw allow 80/tcp     # HTTP, if you serve a website
sudo ufw allow 443/tcp    # HTTPS
# add app-specific ports only as needed, e.g.:
# sudo ufw allow 51820/udp   # WireGuard VPN

4. Đặt chính sách mặc định và bật lên

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable           # asks for confirmation

5. Xác minh

sudo ufw status verbose

Bạn nên thấy SSH và các cổng bạn đã chọn được cho phép, mọi thứ khác bị từ chối. Kiểm tra điều này sau mỗi lần thay đổi.

Các tác vụ thường gặp

sudo ufw allow 3000/tcp        # open a port
sudo ufw delete allow 3000/tcp # close it again
sudo ufw status numbered       # list rules with numbers
sudo ufw delete 2              # delete rule #2
sudo ufw disable               # turn the firewall off

Cảnh báo thành thật

Bước tiếp theo

Một tường lửa cộng với key là phần lớn của một máy chủ đã được gia cố bảo mật. Hoàn thiện với danh sách kiểm tra bảo mật cho VPS mới. Đang mở 443 cho một ứng dụng web? Xem cách thiết lập reverse proxy nginx với HTTPS.

FAQ

UFW là gì?

UFW (Uncomplicated Firewall) là một giao diện thân thiện cho tường lửa netfilter của Linux, có sẵn theo mặc định trên Ubuntu và Debian. Thay vì viết các quy tắc iptables thô, bạn chỉ cần nói 'allow 443' và UFW xử lý phần còn lại. Đây là cách nhanh nhất để có một tường lửa default-deny hợp lý.

Tại sao tôi phải cho phép SSH trước khi bật UFW?

Bởi vì ngay khi bạn bật một tường lửa default-deny, bất kỳ cổng nào không được cho phép rõ ràng sẽ bị chặn — kể cả cổng 22. Nếu bạn bật UFW mà chưa cho phép SSH trước, kết nối hiện tại của bạn vẫn sống sót nhưng lần đăng nhập tiếp theo sẽ bị từ chối, và bạn bị khóa ngoài. Luôn chạy 'ufw allow OpenSSH' (hoặc 'ufw allow 22/tcp') trước 'ufw enable'.

Tôi nên mở những cổng nào?

Chỉ những cổng bạn thực sự dùng. SSH (22) để quản lý máy; 80 và 443 nếu bạn chạy một trang web hoặc reverse proxy; và bất kỳ cổng cụ thể nào ứng dụng của bạn cần. Mọi thứ khác vẫn đóng. Càng ít cổng mở, bề mặt tấn công của bạn càng nhỏ.

UFW có bảo vệ chống lại mọi thứ không?

Không — nó kiểm soát cổng nào chấp nhận kết nối, đó là một phần lớn của công việc, nhưng nó không kiểm tra lưu lượng trên các cổng bạn đã mở. Hãy kết hợp nó với SSH key, fail2ban để chống brute-force, và luôn cập nhật bản vá phần mềm. Tường lửa là một lớp, không phải toàn bộ bức tường.

Làm sao để kiểm tra hiện đang cho phép những gì?

Chạy 'sudo ufw status verbose'. Nó liệt kê mọi quy tắc đang hoạt động và cho biết UFW có đang bật hay không. Kiểm tra nó sau mỗi lần thay đổi để bạn luôn biết chính xác cái gì đang mở.

Bình luận

Chưa có bình luận nào. Hãy là người đầu tiên.

Để lại bình luận

Bình luận được kiểm duyệt trước khi hiển thị.