无法解决的问题:iptables:没有链/目标/匹配的名称

所以我想在我的linux vps上安装shorewall防火墙。 vps运行Ubuntu 12.10。 当我键入$ shorewall检查时,我得到这个错误。

 iptables: No chain/target/match by that name. ERROR: Log level INFO requires LOG Target in your kernel and iptables 

所以我运行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 

我试着看其他职位,有一个类似的,但它并没有帮助我。 我正在使用的内核是2.6.32-042stab079.5

有谁知道我需要做什么来解决这个问题? 我已经看到了一些关于改变内核configuration的事情,但是我不知道该怎么做或者改变什么。

您正在使用基于OpenVZ的VPS。 与所有基于容器的虚拟化一样,您仅限于主机提供的内核模块。

您的select是:

  1. 联系主机并要求他们为您提供必要的内核模块。
  2. 使用不是基于容器的VPS,而是使用完全虚拟化或半虚拟化(例如Xen,KVM或VMware)。

主机上托pipe您的VPS不提供必要的内核模块。 在CentOS上,如果你想在iptables中使用-j LOG,你需要能够加载ipt_LOG.ko。 你可以联系你的主机来澄清这一刻

转到/ etc / sysconfig / iptables,并添加你使用的链名…这样的事情

:FORWARD – [0:0]

在这里,而不是向前使用你的链名。