Ping:在Arch GNU / Linux上安装iptables后,sendmsg:操作不允许错误

昨天我买了一台新的电脑作为我的家用服务器,一台HP Proliant Microserver。 安装Arch Linux,内核版本3.2.12。

安装iptables(1.4.12.2 – 当前版本AFAIK)并将net.ipv4.ip_forward项更改为1,并在iptablesconfiguration文件中启用转发(并重新启动)后,系统将无法使用其任何networking接口。 Ping失败

 Ping: sendmsg: operation not permitted 

如果我完全删除iptables,联网是好的,但我需要共享Internet连接到本地networking。

集成在主板上的eth0 – wan网卡(Broadcom NetXtreme BCM5723)。

eth1 -lan网卡在一个pci-express插槽(Intel 82574L千兆networking)

由于它没有iptables(服务器可以访问互联网,我可以从内部networkingsshlogin),我认为它与iptables有关。 我没有太多的经验与iptables,所以我用这些作为参考(当然彼此分开…):

wiki.archlinux.org/index.php/Simple_stateful_firewall#Setting_up_a_NAT_gateway

revsys.com/writings/quicktips/nat.html

howtoforge.com/nat_iptables

在我之前的服务器上,我使用revsys指南来设置nat,像一个魅力一样工作。

任何人都经历过这样的事情? 我究竟做错了什么?

错误消息:

 Ping: sendmsg: operation not permitted 

意味着您的服务器不允许发送ICMP数据包。 您需要允许您的服务器通过一个或多个已configuration的接口发送stream量。 你可以这样做:

  1. 将“ OUTPUT链策略设置为“ ACCEPT以允许来自您的方框的所有传出stream量。
  2. OUTPUT链策略设置为DROP ,然后select性地select所需的stream量types。

这适用于所有的链条,不仅是OUTPUT链。 INPUT链控制您的箱子收到的stream量。 FORWARD连锁店处理通过箱子转发的stream量。