iptables:没有该名称的链/目标/匹配

iptables:没有该名称的链/目标/匹配

我正在尝试在 Debian 6 Squeeze amd64 上设置 iptables,但遇到了此错误消息

root@Vision:~/bin# iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables: No chain/target/match by that name.

我在网上搜索过,但没有找到解决方案。其他规则也给出了同样的错误。

答案1

你的内核需要 netfilter 模块 conntrack

Location:                                                                                                                                          │  
  │     -> Networking support (NET [=y])                                                                                                                 │  
  │       -> Networking options                                                                                                                          │  
  │         -> Network packet filtering framework (Netfilter) (NETFILTER [=y])                                                                           │  
  │           -> Core Netfilter Configuration                                                                                                            │  
  │             -> Netfilter Xtables support (required for ip_tables) (NETFILTER_XTABLES [=m]) 

答案2

检查 dmesg 输出中的实际错误,还可以使用 strace 运行规则来获取丢失的模块

答案3

您的内核似乎缺少一些 Netfilter 功能。正如 Fabio 指出的那样,您需要 Xtables 支持。但是,您还需要 xt_conntrack 功能。它可能被编译为模块,因此输入您编写的命令应该会加载它。但在某些情况下,您需要自己加载它,因此在继续之前,请尝试

# modprobe xt_conntrack

如果不起作用,您必须重新编译内核以启用它。您可以在此处找到该选项:

Symbol: NETFILTER_XT_MATCH_CONNTRACK                                                                                                                                                     
│   Depends on: NET [=y] && INET [=y] && NETFILTER [=y] && NETFILTER_XTABLES [=y] &&      NF_CONNTRACK [=y]                                                                                               
│   Location:                                                                                                                                                                                   
│     -> Networking support (NET [=y])                                                                                                                                                            
│       -> Networking options                                                                                                                                                                   
│         -> Network packet filtering framework (Netfilter) (NETFILTER [=y])                                                                                                                       
│           -> Core Netfilter Configuration                                                                                                                                                      
│             -> Netfilter Xtables support (required for ip_tables) (NETFILTER_XTABLES [=y])

如果你不熟悉内核构建,你可能需要看一下http://www.kroah.com/lkn/它以非常清晰的方式解释了您从一开始就需要知道的所有内容。

(我知道回答这个问题有点晚了。不过,我今天遇到了同样的问题,所以我想它有一天可能会对某些人有所帮助。)

相关内容