Site icon Cung cấp dịch vụ Cloud VPS, Server, Hosting Việt Nam & Thế giới

Cài Đặt và Sử Dụng UFW Firewall Trên Ubuntu, Debian và CentOS

Cài Đặt và Sử Dụng UFW Firewall Trên Ubuntu, Debian và CentOS

UFW (Uncomplicated Firewall) là một giao diện thân thiện dành cho iptables, giúp đơn giản hóa quá trình thiết lập và quản lý tường lửa trên Linux. Công cụ này đặc biệt hữu ích cho các máy chủ, cung cấp phương thức cấu hình dễ dàng ngay cả đối với người mới làm quen với hệ thống bảo mật mạng. Là tường lửa mặc định trên Ubuntu, UFW hỗ trợ cả giao thức IPv4 và IPv6, đảm bảo tính linh hoạt và khả năng bảo vệ toàn diện.

Nếu bạn đang sử dụng VPS Windows và muốn tìm hiểu cách bảo mật hiệu quả hơn, hãy tham khảo thêm các giải pháp tường lửa tương ứng để bảo vệ hệ thống của bạn trước các mối đe dọa mạng.

Tiếp theo, chúng ta sẽ cùng nhau khám phá cách cài đặt và sử dụng UFW Firewall trên Linux để tăng cường bảo mật hệ thống.

Yêu cầu tiên quyết

Cài đặt UFW

Ubuntu

Theo mặc định, UFW có sẵn trong hầu hết các bản phân phối dựa trên Ubuntu. Nếu UFW bị gỡ bỏ, bạn có thể cài đặt lại bằng cách chạy lệnh linux sau:

# apt-get install ufw -y

Debian

Bạn có thể cài đặt UFW trên Debian bằng lệnh sau:

# apt-get install ufw -y

CentOS

Theo mặc định, UFW không có sẵn trong kho CentOS. Vì vậy, bạn sẽ cần cài đặt kho EPEL vào hệ thống của mình. Bạn có thể thực hiện điều này bằng cách chạy lệnh Linux sau:

# yum install epel-release -y

Sau khi cài đặt kho EPEL, cài đặt UFW bằng lệnh:

# yum install --enablerepo="epel" ufw -y

Sau khi cài đặt UFW, hãy khởi động dịch vụ và bật nó để tự động khởi động cùng hệ thống bằng lệnh:

# ufw enable

Tiếp theo, kiểm tra trạng thái của UFW:

# ufw status 
Status: active

(Để tắt UFW, bạn có thể dùng lệnh sau:)

# ufw disable

Cài đặt chính sách mặc định của UFW

Theo mặc định, UFW được cấu hình để chặn tất cả lưu lượng truy cập đến (incoming) và cho phép tất cả lưu lượng đi ra (outgoing).

Bạn có thể thay đổi chính sách mặc định theo ý muốn bằng các lệnh sau:

ufw default allow outgoing ufw default deny incoming

Thêm và xóa quy tắc tường lửa

Bạn có thể thêm quy tắc để cho phép lưu lượng truy cập đến hoặc đi ra bằng cách chỉ định số cổng hoặc tên dịch vụ.

Cho phép dịch vụ HTTP:
Sử dụng tên dịch vụ:

ufw allow http

Hoặc sử dụng số cổng:

ufw allow 80

Lọc theo giao thức TCP/UDP:

ufw allow 80/tcp 
ufw allow 21/udp

Để kiểm tra các quy tắc đã thêm, chạy:

ufw status verbose

Ví dụ, kết quả hiển thị có thể như sau:

Status: active 
Logging: on (low) 
Default: deny (incoming), allow (outgoing), deny (routed) 
New profiles: skip 

To                         Action      From 
--                         ------      ---- 
80/tcp                     ALLOW IN    Anywhere 
21/udp                     ALLOW IN    Anywhere 
80/tcp (v6)                ALLOW IN    Anywhere (v6) 
21/udp (v6)                ALLOW IN    Anywhere (v6)

Bạn cũng có thể từ chối lưu lượng bằng các lệnh:

# ufw deny 80 
# ufw deny 21

Nếu bạn muốn xóa quy tắc đã thêm, chỉ cần thêm từ khóa delete trước quy tắc gốc:

# ufw delete allow http 
# ufw delete deny 2

Quy tắc UFW nâng cao

Cấu hình NAT với UFW

NNếu bạn muốn NAT các kết nối từ giao diện bên ngoài sang bên trong bằng UFW, bạn có thể thực hiện điều này bằng cách chỉnh sửa tập tin /etc/default/ufw/etc/ufw/before.rules.
Đầu tiên, mở tập tin /etc/default/ufw bằng trình soạn thảo nano:

# nano /etc/default/ufw

Thay đổi dòng sau:

DEFAULT_FORWARD_POLICY="ACCEPT"

Cho phép chuyển tiếp IPv4:

Mở tập tin /etc/ufw/sysctl.conf:

# nano /etc/ufw/sysctl.conf

Thay đổi dòng:

net/ipv4/ip_forward=1

Thêm NAT vào tập tin cấu hình của UFW:

Mở tập tin /etc/ufw/before.rules:

# nano /etc/ufw/before.rules

Thêm các dòng sau ngay trước phần quy tắc filter:

# NAT table rules
*nat
:POSTROUTING ACCEPT [0:0]

# Forward traffic through eth0 - Change to match you out-interface
-A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

# don't delete the 'COMMIT' line or these nat table rules won't
# be processed
COMMIT
Save the file when you are finished. Then restart UFW with the following linux command:
ufw disable
ufw enable

Lưu tập tin sau khi chỉnh sửa.

Cấu hình chuyển hướng cổng (Port Forwarding) với UFW

Nếu bạn muốn chuyển hướng lưu lượng từ địa chỉ IP công cộng (ví dụ: 150.129.148.155) cổng 80 và 443 đến một máy chủ nội bộ có địa chỉ IP 192.168.1.120, thực hiện theo các bước sau:

Mở tập tin /etc/default/before.rules:

# nano /etc/default/before.rules

Chỉnh sửa tập tin như sau:

:PREROUTING ACCEPT [0:0] 
-A PREROUTING -i eth0 -d 150.129.148.155   -p tcp --dport 80 -j  DNAT --to-destination 192.168.1.120:80 
-A PREROUTING -i eth0 -d 150.129.148.155   -p tcp --dport 443 -j  DNAT --to-destination 192.168.1.120:443 
-A POSTROUTING -s 192.168.1.0/24 ! -d 192.168.1.0/24 -j MASQUERADE

Khởi động lại UFW:

# ufw disable
# ufw enable

Cho phép lưu lượng qua cổng 80 và 443:

# ufw allow proto tcp from any to 150.129.148.155 port 80
# ufw allow proto tcp from any to 150.129.148.155 port 443

Đối với người dùng đang thuê máy chủ VPS, việc thiết lập firewall như UFW là bước quan trọng giúp kiểm soát lưu lượng và tăng cường bảo mật cho dịch vụ bạn đang vận hành.

Exit mobile version