Iptables

為什麼通過processn匹配數據包返回未知選項

  • August 17, 2016

我正在嘗試按 iptabes 中的程序名稱匹配數據包。我正在嘗試使用 ping 和我從以下獲得的範例:https ://www.frozentux.net/iptables-tutorial/iptables-tutorial.html#OWNERMATCH

我輸入的命令是:

iptables -N mychain
iptables -A OUTPUT -m owner --cmd -owner ping -j mychain

但是,我得到:

iptables v1.4.21: unknown option "--cmd-owner"
Try 'iptables -h' or 'iptables --help' for more information.

當我這樣做時,我看不到“–cmd-owner”選項。這是因為該選項在 iptables v1.4.21 中不再可用嗎?如果此選項不再可用,誰能告訴我如何計算主機上每個程序的數據包?

顯然,它在某個時候從 iptables 中刪除了……我不知道確切的時間。我確實找到了這個 Ubuntu 錯誤報告。

https://bugs.launchpad.net/ubuntu/+source/iptables/+bug/800781

沒有提及從 git 中刪除它,但有提及最初添加它的時間。

https://git.netfilter.org/iptables/log/?qt=grep&q=cmd-owner

終於在這裡找到了: http ://www.spinics.net/lists/netfilter/msg49716.html

commit 34b4a4a624bafe089107966a6c56d2a1aca026d4
Author: Christoph Hellwig <hch@xxxxxx>
Date:   Sun Aug 14 17:33:59 2005 -0700

   [NETFILTER]: Remove tasklist_lock abuse in ipt{,6}owner

   Rip out cmd/sid/pid matching since its unfixable broken and stands in the
   way of locking changes to tasklist_lock.

   Signed-off-by: Christoph Hellwig <hch@xxxxxx>
   Signed-off-by: Patrick McHardy <kaber@xxxxxxxxx>
   Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>


It's a little late to come with "I need this" 5 years after the fact.

>Is there any alternative for this? I mean to set up a static rule that
>assigns specific command-line netfilter acls?

SELinux, SNET, or other LSMs.

如果聽起來沒有那麼有幫助,我很抱歉。這是我能做的最好的。我對 iptables 的東西不是很好。

引用自:https://serverfault.com/questions/797284