Tìm hiểu nftables.
Firewalld từ phiên bản v0.6.0 đã được hỗ trợ để có thể sử dụng nftables như là firewall backend.
Lý do sử dụng nftable.
nftables là một thay thế cho tất cả: iptables, ip6tables, arptables, ebtables, và ipset. Một số lợi ích là nó được xây dựng dựa theo bộ (sets), cập nhật rule nhanh hơn, kết hợp xử lý cả ipv4 và ipv6. Và lợi ích lớn nhất là quản lý tập trung các quy tắc tường lửa chỉ với một giao diện.
Khi firewalld sử dụng nhóm iptables, firewalld nắm quyền hoàn toàn tường lửa hệ thống. Khi sử dụng nftables, vì nftable hỗ trợ nhiều namespaces (table trong nftables được tác biệt), firewalld sẽ quy định phạm vị cho các rule, set, chain trong tables. Điều này sẽ tránh được nhiều sự xung đột với các phần mềm mà không tương tác trực tiếp với firewalld.
Thứ ba là nftables có thể kết hợp ghi log và action khác trong cùng một rule, điều này có thể giúp tối ưu các rule. Ví dụ có thể vừa ghi log vừa drop gói tin trong một rule, trong khi iptable cần 2 rule để có kết quả tương tự.
firewalld tương tác với nftables
firewalld tương tác với nftable trực tiếp thông qua chương trình nft
, như cách mà firewalld tương tác với iptables. Trong các bản phân phối trong tương lại thì tương tác với nftables sẽ được cải thiện hơn bằng cách sử dụng libnftables.
Ipset được dịch sang nftables set.
Backend firewalld
Từ phiên bản firewalld 0.6.0 và mới hơn thì nó sẽ sử dụng nftables làm mặc định. nftable backend có các tính năng ngang bằng với iptables backend cũ. Nên mọi lỗi hay tính năng bị sẽ được coi là lỗi.
Có thể lựa chọn backend của firewalld bằng cách thiết lập giá trị FirewallBackend
trong /etc/firewalld/firewalld.conf
sang iptables
sau đó khởi động lại firewalld.
Tài liệu tham khảo.
- https://firewalld.org/2018/07/nftables-backend
- http://www.opensource.sa/2019/06/03/nftables-the-new-firewall-backend-in-rhel-8/
- https://wiki.nftables.org/wiki-nftables