firewalld là gì? Các lợi ích của firewalld
Firewalld là gì?
Firewalld là một công cụ quản lý tường lửa sử dụng các vùng (zones) và quy tắc lọc để kiểm soát lưu lượng mạng đến và đi từ máy chủ. Firewalld hoạt động như một giao diện đơn giản hóa để quản lý các quy tắc tường lửa, dựa trên hệ thống iptables.
Một số lợi ích của firewalld
- Ngăn chặn truy cập trái phép từ bên ngoài, bảo vệ hệ thống mạng và dữ liệu.
- Quản lý các dịch vụ, ứng dụng và cổng kết nối mạng.
- Cấu hình các cổng dịch vụ theo nhu cầu dễ dàng qua giao diện dòng lệnh (firewall-cmd) hoặc đồ họa (firewall-config).
Hướng dẫn cài đặt firewalld trên VPS Linux
Bước 1: Đăng nhập vào VPS/Server bằng giao thức SSH
Để cài đặt firewalld trên VPS Linux, bạn cần đăng nhập vào VPS hoặc Server với quyền root hoặc user có quyền sudo bằng giao thức SSH. Nếu bạn chưa biết cách thao tác thì có thể tham khảo bài viết sau:
Cài đặt firewalld trên VPS Linux
Lưu ý: Nếu bạn đăng nhập vào VPS bằng user root thì không cần tiền tố sudo ở đầu câu lệnh.
Trước tiên, kiểm tra xem Firewalld đã được cài đặt và đang chạy chưa bằng lệnh:
sudo systemctl status firewalld
Nếu nhận được trạng thái như: active (running), Firewalld đã được cài đặt và đang hoạt động. Ví dụ:
[root@panel ~]# sudo systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2025-06-13 14:16:34 +07; 8h ago
Docs: man:firewalld(1)
Main PID: 117226 (firewalld)
Tasks: 3 (limit: 24678)
Memory: 45.5M
CGroup: /system.slice/firewalld.service
└─117226 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork –nopid
Nếu nhận được thông báo Unit firewalld.service could not be found., hệ thống chưa cài đặt Firewalld. Hãy tiến hành cài đặt theo các bước dưới đây.
Cài đặt Firewalld theo hệ điều hành
- Trên CentOS / RHEL:
sudo dnf install firewalld -y
- Trên Ubuntu/Debian:
sudo apt-get install firewalld -y
Kích hoạt và khởi động Firewalld
Kích hoạt và khởi chạy Firewalld theo 2 lệnh sau:
sudo systemctl enable firewalld
sudo systemctl enable firewalld
Trong đó:
enable: Cho phép Firewalld tự động chạy mỗi khi khởi động hệ thống.start: Bắt đầu dịch vụ ngay lập tức.
Kiểm tra trạng thái và cấu hình Firewalld
Firewalld sử dụng các thành phần chính:
Zones: Các vùng mạng với quy tắc tường lửa riêng.
Services: Dịch vụ mà máy chủ cung cấp hoặc sử dụng.
Ports: Cổng mạng được phép hoặc chặn.
Source Addresses: Địa chỉ IP nguồn được phép hoặc từ chối.Rules: Quy tắc chi tiết để xử lý kết nối.
Các lệnh cơ bản để cấu hình Firewalld:
Kiểm tra trạng thái dịch vụ:
[root@panel ~]# sudo systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
Kiểm tra Zone (vùng) mặc định
[root@panel ~]# sudo firewall-cmd --get-default-zone
Public
Hiển thị danh sách các zone có sẵn
[root@panel ~]# sudo firewall-cmd --get-zones
block dmz drop external home internal nm-shared public trusted work
Cấu hình các quy tắc cho một zone cụ thể (ví dụ: public)
[root@panel ~]# sudo firewall-cmd --zone=public --add-service=http
success
Để áp dụng các thay đổi
[root@panel ~]# sudo firewall-cmd --reload
success
Kiểm tra các quy tắc đã được cấu hình cho Zone
[root@panel ~]# sudo firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: cockpit dhcpv6-client ssh
ports: 8888/tcp
protocols:
forward: no
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
Gỡ cài đặt Firewalld trên VPS Linux
Lưu ý quan trọng: Nếu hệ thống chưa có giải pháp thay thế như iptables hoặc nftables, việc gỡ Firewalld có thể khiến tất cả cổng mạng bị mở, dẫn đến rủi ro bảo mật. Với VPS/Server public, hãy cấu hình giải pháp thay thế trước khi gỡ.
Bước 1: Dừng Firewalld
sudo systemctl stop firewalld

Bước 2: Tắt chạy tự động khi khởi động
sudo systemctl disable firewalld

Bước 3: Gỡ cài đặt Firewalld trên VPS Linux
- Trên CentOS / RHEL:
sudo dnf remove -y firewalld

- Trên Ubuntu/Debian:
sudo apt remove -y firewalld
Bước 4: Kiểm tra lại tình trạng firewalld
Chạy lệnh sau để kiểm tra:
sudo systemctl status firewalld
Kết quả sẽ là: Unit firewalld.service could not be found.

Tổng kết
Cài đặt Firewalld trên VPS Linux là bước thiết yếu để thiết lập lớp bảo mật đầu tiên cho hệ thống máy chủ. Nhờ khả năng quản lý lưu lượng mạng theo mô hình vùng (zones), dịch vụ (services), cổng (ports) và địa chỉ IP nguồn, Firewalld giúp kiểm soát truy cập linh hoạt và hiệu quả. Firewalld không chỉ bảo vệ VPS trước các cuộc tấn công không mong muốn mà còn giúp bạn trong việc tùy chỉnh và mở rộng chính sách bảo mật. Để đảm bảo hiệu quả dài hạn, bạn nên định kỳ rà soát và cập nhật các quy tắc tường lửa phù hợp với tình hình mạng hiện tại.
Chúc các bạn thành công!

![Hướng dẫn cài đặt firewalld trên VPS Linux chi tiết [2025]](https://bctechvibe.io.vn/wp-content/uploads/2025/06/firewalld-howto.png)