[心得] nftables 嘗鮮中

看板Linux作者 (一卡那亞)時間11年前 (2014/05/21 19:48), 11年前編輯推噓3(304)
留言7則, 5人參與, 最新討論串1/1
昨天稍微嘗試一下 nftables ,基本概念跟 iptables 一樣,因為中 文資料不太多,所以我上來寫一些資料當參考,下面是我這台機器跟 參考資料來源。 發行版:Slackware64 14.1(已更新到 Current) 參考資料: Arch 跟 Gentoo 的 wiki 、netfilter 的 wiki。 安裝套件: nftables 跟 libnftnl ------------------------------------------------------------ 我是神煩對齊線 ㄟ (o__ oㄟ) 吃我螳螂拳 ------------------------------------------------------------ 1. nftables 最明顯的改變之一就是語法,過去指定參數時要用「 -參 數 資料」,現在簡化成「參數 資料」的格式,不需要多加負號。 2. 過去要打好幾行指令才能完成的動作,現在可以簡化成一行,例如下 面這兩行 iptables 的指令。 > iptables -A input -j LOG > iptablse -A input -j ACCEPT 在 nftables 簡化成一條。 > nft add rule ip filter input log accept 3. 預設狀態下沒有 table 跟 chain,要自己設定,要類似 iptables 的 table 跟 chain 可以引入 /etc/nftables/ipv4-filter 這份 設定檔,除了跟過去一樣透過 bash 新增規則,也可用 ipv4-filter 的方式新增規則,這設定檔看起來有點像 Lisp ,我喜歡。^_^ 4. 新增 family 的概念,一般常用的應該是 ip 跟 ip6 這兩個,前者 指 ipv4,後者指 ipv6 ,而操作 ip 此 family 就相當於直接使用 iptables 新增規則,ipv6 則相當於 ip6tables,以此類推,如果 操作時沒加上 family 則預設為 ip ,因為個別新增有點麻煩,之後 似乎會新增一個 inet family,操作 inet 等於同時操作 ip 跟 ip6 ,下面兩個例子分別在 ipv4 跟 ipv6 中新增叫 filter 的 table。 > nft add table filter > nft add table ip6 filter 5. 某些常用的 port 可以替換成文字,例如 80 可以直接寫 http 而不 是數字。 6. 修改規則有兩種命令,分別是 flush 跟 delete ,想用 delete 刪 除某個 table 或 chain,必須先使用 flush 清空整個 chain 或 table 才能刪除。 ------------------------------------------------------------ 沒梗富奸中的分隔線 ------------------------------------------------------------ 其實還有蠻多東西可以寫的,但幾乎都是 nft 實際使用時的命令之 類的,也許之後有機會再寫了,我認為要知道的幾件事寫出來後,就 開始想富奸化,總之先寫到這邊了,之後有想補充會繼續寫在這篇。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.236.22.52 ※ 文章網址: http://www.ptt.cc/bbs/Linux/M.1400672898.A.7F1.html

05/22 00:09, , 1F
release 了喔 @@a
05/22 00:09, 1F

05/22 01:16, , 2F
release了,目前0.2版,不過我猜要在各個發行版穩定的使用
05/22 01:16, 2F

05/22 01:16, , 3F
,應該還有一段時間。
05/22 01:16, 3F
我個人會期待 Arch 跟 Gentoo 使用者的測試分享,這兩個發行版比 較可能先衝上去。 ※ 編輯: drm343 (36.236.23.3), 05/22/2014 19:14:51

05/22 22:17, , 4F
Gentoo套件庫有0.099版本的,不過我Kernel不夠新XD
05/22 22:17, 4F

05/23 23:01, , 5F
我拿 Fedora rawhide 的 SRPM rebuild 給 Fedora 20 用
05/23 23:01, 5F

05/23 23:02, , 6F

05/25 12:11, , 7F
push
05/25 12:11, 7F
文章代碼(AID): #1JV9A2Vn (Linux)