iptables 配置不起作用

iptables 配置不起作用

我有一个用于 Apple 推送通知服务的 VPS,我正在尝试打开端口 2195。我目前正在这样做

vi /etc/sysconfig/iptables

然后我进入 vi 的插入模式并输入这两行

-A -I INPUT -p tcp --dport 2195 -j ACCEPT
-A -I OUTPUT -p tcp --dport 2195 -j ACCEPT

然后我保存文件并退出 vi。

然后我通过以下方式重新启动 iptables 服务

service iptables restart.

但之后当我尝试通过以下方式进行 telnet 时

 telnet localhost 2195

我明白了

尝试 127.0.0.1…telnet:连接到地址 127.0.0.1:连接被拒绝

有什么指点吗……?

服务器是 hostgator 上的红帽

答案1

你的规则很糟糕。你不能同时使用 -A 和 -I,-A 表示作为最后一条规则附加,-I 表示作为第一条规则插入。

答案2

我立即注意到两件事:

  1. 您已允许数据包通过目的地2195 端口,但如果有人通过 2195 端口联系你的服务器,那么你的返回数据包将有一个来源端口 2195。根据所需的流量,您可以将--dportOUTPUT 链中的更改为,--sport或者添加两个额外的规则--sport
  2. 错误connection refused与超时所表示的连接情况不同。它表明您的服务未在端口 2195 上侦听。您可以运行netstat -tan | grep LISTEN并检查您的服务是否在环回接口上在端口 2195 上侦听吗?

答案3

请首先通过以下方式验证您的规则是否已应用

sudo iptables -L -vnx

如果有规则,请确保监听 2195 的服务是否正在运行。

sudo netstat -tulpn 

相关内容