幾天前 發布了新版本的包過濾器nftables 0.9.3我知道 開發以替代iptables,ip6table,arptables和ebtables 由於統一了IPv4,IPv6,ARP和網絡橋的數據包篩選接口。
nftables包 使用Netfilter基礎結構的結構部分喜歡 連接跟踪系統 (連接跟踪系統)或註冊子系統。 還提供了一個兼容層,用於將現有的iptables防火牆規則轉換為其對應的nftables。
關於恩富特
耐用品 包括數據包過濾器組件 在用戶空間工作,而在內核級別,子系統 nf_表 從3.13版開始提供Linux內核的一部分。
在內核級別,僅提供一個公共接口 它獨立於特定協議,並且提供了用於從數據包中提取數據,執行數據操作以及控制流量的基本功能。
過濾邏輯本身和特定於協議的處理器被編譯為用戶空間中的字節碼,然後使用Netlink接口將該字節碼加載到內核中,並在類似於BPF(伯克利分組過濾器)的特殊虛擬機中運行。
這種方法使您可以顯著減少在內核級別運行的篩選代碼的大小,並消除所有解析規則功能以及在用戶空間中使用協議的邏輯。
nftable的主要優點是:
- 嵌入核心的架構
- 將IPtables工具整合到單個命令行工具中的語法
- 兼容性層,允許使用IPtables規則語法。
- 一種新的易於學習的語法。
- 添加防火牆規則的簡化過程。
- 改進了錯誤報告。
- 減少代碼複製。
- 更好的總體性能,保留率和規則過濾的增量更改。
nftables 0.9.3的新功能是什麼?
在此新版本的nftables 0.9.3中 增加了對匹配軟件包的支持 隨著時間的流逝。 這樣您可以定義時間和日期間隔 其中將激活規則,並在一周中的各個天配置激活。 還添加了新的“ -T”選項以秒為單位顯示紀元時間。
另一個引人注目的變化是 支持恢復和保存SELinux標籤 (secmark),是的 synproxy映射列表支持,使您可以為每個後端定義多個規則。
其他變化 從這個新版本中脫穎而出:
- 能夠從數據包處理規則中動態刪除集合元素。
- 支持通過網橋接口的元數據中定義的標識符和協議進行VLAN映射
- 顯示規則時,選項“ -t”(“-terse”)可排除設置集元素。 執行“ nft -t列表規則集”時,將顯示:
- Nft列表規則集。
- 可以在netdev字符串中指定多個設備的功能(僅適用於內核5.5)來組合常見的過濾規則。
- 能夠添加數據類型描述。
- 能夠使用linenoise庫而不是libreadline構建CLI界面。
如何安裝新版本的nftables 0.9.3?
取得新版本 目前只有源代碼可以編譯 在您的系統上。 儘管幾天之內已經編譯好的二進制軟件包將在不同的Linux發行版中可用。
除此之外 nftables 0.9.3正常運行所必需的更改已包含在將來的Linux內核分支5.5中。 因此,為了進行編譯,必須安裝以下依賴項:
這些可以用以下命令編譯:
./autogen.sh
./configure
make
make install
對於nftables 0.9.3,我們從以下位置下載 以下鏈接。 並使用以下命令完成編譯:
cd nftables
./autogen.sh
./configure
make
make install