无法让操作系统指纹识别在 iptables 中发挥作用

无法让操作系统指纹识别在 iptables 中发挥作用

各位,据我了解,OSF 自 2.6.before-my-kernel-version 以来已与内核合并。但是当我执行以下操作时:

iptables -I INPUT -j ACCEPT -p tcp -m osf --genre Linux --log 0 --ttl 2

我收到如下错误:

iptables: No chain/target/match by that name
iptables -L

iptables -F没有显示任何规则,因为我曾经做过。

另外,以下命令:

cat /proc/net/ip_tables_matches 

列表中不显示“osf”。

谷歌似乎没有帮助。我还安装了,iptables-devel希望能够加载 osf 模块。遗憾的是,我无法让它工作。

Centos 6.4 最低配置

有什么指导吗?

编辑:添加请求的代码:

-bash-4.1# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

-bash-4.1# iptables -I INPUT -j ACCEPT -p tcp -m osf --genre Linux --log 0 --ttl 2
iptables: No chain/target/match by that name.

答案1

操作系统指纹识别模块并未预装指纹数据;为了保持其最新状态,您必须从http://bxr.su/o/etc/pf.os,并用工具加载它nfnl_osf,至少在 Fedora 上它是在iptables-utils软件包中。在加载这些指纹之前,它没有要匹配的类型,因此出现错误消息。

不幸的是,我找不到任何地方可以获得nfnl_osfC6 的工具;如果您在 F19 上执行此操作,您将获得以下内容:

视频:

[root@risby named]# iptables -A INPUT -j ACCEPT -p tcp -m osf --genre Linux
iptables: No chain/target/match by that name.

从该链接获取最新版本的指纹文件:

[root@risby named]# nfnl_osf -f /tmp/pf.os 
2013-11-01 22:37:39.256107 15507 Loading '45046:64:0:44:M*:     AIX:4.3::AIX 4.3'.
        [ many lines of output deleted ]
[root@risby named]# iptables -A INPUT -j ACCEPT -p tcp -m osf --genre linux --log 0 --ttl 2
[root@risby named]# iptables -L INPUT -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    6   304 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            OS fingerprint match linux
[root@risby named]# 

因此,我们可以合理地得出结论,它即将推出,但 C6 还没有工具链。它确实具有 osf 功能,因为我在 C6 上得到了这个:

[root@bill yum.repos.d]# iptables -A FOO -j ACCEPT -p tcp -m osf 
iptables v1.4.7: OS fingerprint match: You must specify `--genre'
Try `iptables -h' or 'iptables --help' for more information.
[root@bill yum.repos.d]# iptables -A FOO -j ACCEPT -p tcp -m osf --genre Linux
iptables: No chain/target/match by that name.

但是,正如我上面的 Fedora 测试所示,如果没有指纹加载工具,它就毫无用处。目前,似乎您可以等待该功能通过食物链(可能在 C7 中)完成,或者尝试找到该工具的源代码(可能通过将其从 F19 iptables-utils 包中剥离出来)并自行编译。您对它的迫切需要将决定您选择做什么。

相关内容