自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

什么是 nftables ? 它與 iptables 的區(qū)別是什么?

系統(tǒng) Linux
今天我們就簡單介紹一下 nftables 和 iptables 之間的差異,并展示在新的 nftables 語法中配置防火墻規(guī)則的例子。

什么是 nftables ? 它與 iptables 的區(qū)別是什么?

幾乎每個 Linux 管理員都使用過 iptables,它是一個 Linux 系統(tǒng)的防火墻。但是你可能還不太熟悉 nftables,這是一個新的防火墻,可為我們提供一些必的升級,還有可能會取代 iptables。

為什么要使用 nftables 呢?

nftables 是由 Netfilter 開發(fā)的,該組織目前維護 iptables。nftables 的創(chuàng)建是為了解決 iptables 的一些性能和擴展問題。

除了新的語法和一些升級以外,nftables 的功能與 iptables 幾乎是一樣的。之所以推出 nftables 的另一個原因,是因為 iptables 的框架變的有點復(fù)雜,iptables, ip6tables, arptables 以及 ebtables 都有不同但相似的功能。

比如,在 iptables 中創(chuàng)建 IPv4 規(guī)則和在 ip6tables 中創(chuàng)建 IPv6 規(guī)則并保持兩者同步是非常低效的。Nftables 旨在取代所有這些,成為一個集中的解決方案。

盡管自 2014 年以來,nftables 就被包含在 Linux 內(nèi)核中,但隨著采用范圍的擴大,它最近越來越受歡迎。Linux 世界的變化很慢,過時的實用程序通常需要幾年或更長的時間才能逐步淘汰,取而代之的是升級后的實用程序。

今天我們就簡單介紹一下 nftables 和 iptables 之間的差異,并展示在新的 nftables 語法中配置防火墻規(guī)則的例子。

nftables 中的鏈(chains)和規(guī)則

在 iptables 中,有三個默認的鏈:輸入、輸出和轉(zhuǎn)發(fā)。這三個“鏈”(以及其他鏈)包含“規(guī)則”,iptables 通過將網(wǎng)絡(luò)流量與 鏈中的規(guī)則列表匹配進行工作。如果正在檢查的流量與任何規(guī)則都不匹配,則鏈的默認策略將用于流量(即ACCEPT、DROP)。

Nftables的工作原理與此類似,也有“鏈”和“規(guī)則”。然而,它一開始沒有任何基礎(chǔ)鏈,這使得配置更加靈活。

iptables 效率低下的一個方面是,即使流量與任何規(guī)則都不匹配,所有網(wǎng)絡(luò)數(shù)據(jù)也必須遍歷上述鏈中的一個或多個。無論你是否配置了鏈,iptables仍然會根據(jù)它們檢查你的網(wǎng)絡(luò)數(shù)據(jù)。

在 Linux 中安裝 nftables

nftables 在所有主要的 Linux 發(fā)行版中都可用,可以使用發(fā)行版的包管理器安裝。

在 Ubuntu 或基于 Debian 的系統(tǒng)中可使用如下命令:

sudo apt install nftables

設(shè)置 nftables在系統(tǒng)重啟的時候自動啟動,可執(zhí)行如下操作:

sudo systemctl enable nftables.service

iptables 和 nftables 之間的語法差異

與 iptables 相比,nftables 的語法更加簡單,不過對于 iptables 中的語法,在 nftables 中也能用。

大家可使用 iptables-translate 工具,該工具接受 iptables 命令并將其轉(zhuǎn)為等效的 nftables 命令,這是了解兩種語法差異的一種簡單方法。

使用以下命令在 Ubuntu 和基于 Debian 的發(fā)行版上安裝 iptables-translate:

sudo apt install iptables-nftables-compat

安裝后,你可以將 iptables 語法傳遞給 iptables-translate 命令,它將返回 nftables 等效命令。

下面我們看一些具體的語法示例。

阻止傳入連接

下述命令將阻止來自IP地址192.168.2.1的傳入連接:

$ iptables-translate -A INPUT -s 192.168.2.1 -j DROP
nft add rule ip filter INPUT ip saddr 192.168.2.1 counter drop

允許傳入SSH連接

放開 ssh 連接權(quán)限:

$ iptables-translate -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
nft add rule ip filter INPUT tcp dport 22 ct state new,established counter accept

允許來自特定 IP 范圍的傳入SSH連接

如果只想允許來自192.168.1.0/24的傳入SSH連接:

$ iptables-translate -A INPUT -p tcp -s 192.168.1.0/24 --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
nft add rule ip filter INPUT ip saddr 192.168.1.0/24 tcp dport 22 ct state new,established counter accept

允許MySQL連接到eth0網(wǎng)絡(luò)接口

$ iptables-translate -A INPUT -i eth0 -p tcp --dport 3306 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
nft add rule ip filter INPUT iifname eth0 tcp dport 3306ct state new,established counter accept

允許傳入HTTP和HTTPS流量

為了允許特定類型的流量,以下是這兩個命令的語法:

$ iptables-translate -A INPUT -p tcp -m multiport --dports 80,443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
nft add rule ip filter INPUT ip protocol tcp tcp dport { 80,443} ct state new,established counter accept

從這些例子中可以看出,nftables 語法與 iptables 非常相似,但命令更直觀一些。

nftables 日志

上述nft命令示例中的“counter”選項告訴nftables統(tǒng)計規(guī)則被觸碰的次數(shù),就像默認情況下使用的iptables一樣。

在nftables中,需要指定:

nft add rule ip filter INPUT ip saddr 192.168.2.1 counter accept

nftables內(nèi)置了用于導(dǎo)出配置的選項。它目前支持XML和JSON。

nft export xml
責(zé)任編輯:龐桂玉 來源: TIAP
相關(guān)推薦

2025-03-07 00:36:01

VuePiniaVuex

2022-11-15 10:03:34

2023-10-23 11:07:37

HTTPRPC

2020-09-06 22:04:48

Python運算符開發(fā)

2025-02-06 08:44:11

MySQLEXISTSIN

2021-03-15 14:00:56

PythonC語言編程語言

2016-03-21 10:40:53

RDDSpark SQL數(shù)據(jù)集

2024-12-30 07:20:00

Redis數(shù)據(jù)庫MySQL

2015-02-26 10:29:41

Google百度

2021-05-06 15:08:40

開發(fā)前端后端

2022-07-06 06:17:51

PandasScipynumpy

2019-03-19 19:49:04

負載均衡硬件軟件

2022-09-03 08:03:14

UbuntuDebian

2018-05-21 21:26:59

Apache HiveHbaseSQL

2012-07-31 15:52:48

云計算網(wǎng)格計算

2021-10-27 08:54:11

Pythonencodeencoding

2021-05-19 08:29:05

HTTP1.x 2

2017-11-21 22:49:10

2023-10-24 09:07:14

CookieSessionHTTP

2020-09-18 15:10:51

Web前端技術(shù)
點贊
收藏

51CTO技術(shù)棧公眾號