Cab*_*ero 1 linux postfix iptables
我似乎无法在 CentOS 6.3 专用服务器上打开端口 25。
telnet localhost 25
Run Code Online (Sandbox Code Playgroud)
工作正常,但是在远程尝试时
telnet mydomain.com 25
Connecting To mydomain.com...Could not open connection to the host, on port 25: Connect failed
Run Code Online (Sandbox Code Playgroud)
这是我的 /etc/sysconfig/iptables 的样子:
# Generated by iptables-save v1.4.7 on Tue Dec 11 20:24:48 2012
*raw
:PREROUTING ACCEPT [1239:156878]
:OUTPUT ACCEPT [1017:172599]
COMMIT
# Completed on Tue Dec 11 20:24:48 2012
# Generated by iptables-save v1.4.7 on Tue Dec 11 20:24:48 2012
*nat
:PREROUTING ACCEPT [139:41210]
:INPUT ACCEPT [12:976]
:OUTPUT ACCEPT [91:14636]
:POSTROUTING ACCEPT [91:14636]
COMMIT
# Completed on Tue Dec 11 20:24:48 2012
# Generated by iptables-save v1.4.7 on Tue Dec 11 20:24:48 2012
*mangle
:PREROUTING ACCEPT [1239:156878]
:INPUT ACCEPT [1239:156878]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1017:172599]
:POSTROUTING ACCEPT [1017:172599]
COMMIT
# Completed on Tue Dec 11 20:24:48 2012
# Generated by iptables-save v1.4.7 on Tue Dec 11 20:24:48 2012
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [107:13896]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 587 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Tue Dec 11 20:24:48 2012
Run Code Online (Sandbox Code Playgroud)
我认为这意味着我的端口 25 已打开,但它仍然无法正常工作。任何人的想法?顺便说一句,/etc/postfix/main.cf 说
inet_interfaces = all
Run Code Online (Sandbox Code Playgroud)
更新:
我已经按照建议切换了 iptables 中的两行,所以现在:
netstat -tnlp | grep 25
tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 2581/dovecot
tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 2581/dovecot
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2521/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 6754/master
tcp 0 0 123.123.123.123:25 0.0.0.0:* LISTEN 6754/master
tcp 0 0 0.0.0.0:4190 0.0.0.0:* LISTEN 2581/dovecot
tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 2581/dovecot
tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 2581/dovecot
tcp 0 0 :::110 :::* LISTEN 2581/dovecot
tcp 0 0 :::143 :::* LISTEN 2581/dovecot
tcp 0 0 :::22 :::* LISTEN 2521/sshd
tcp 0 0 :::4190 :::* LISTEN 2581/dovecot
tcp 0 0 :::993 :::* LISTEN 2581/dovecot
tcp 0 0 :::995 :::* LISTEN 2581/dovecot
Run Code Online (Sandbox Code Playgroud)
我认为这意味着端口 25 已打开并且 postfix 正在侦听它?
我的专用服务器提供商是 OVH,他们声称他们不阻止端口 25:http : //help.ovh.com/FireWall
这看起来像一个死胡同...
更新 2:解决了,我的 ISP 没有阻止端口 25,但我的 VPN 提供商阻止了。诅咒他们。谢谢大家的帮助。
端口 25 的接受行
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
在毯子拒绝之后出现
-A INPUT -j REJECT --reject-with icmp-host-prohibited
Run Code Online (Sandbox Code Playgroud)
切换它们并重新加载。iptables 在第一场比赛获胜时起作用,因此永远不会执行 ACCEPT。您可以连接到 localhost 的原因是有一个全面的接受
-A INPUT -i lo -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
在拒绝之前。
如果这不起作用,则 ckeck postfix 正在侦听相关的 IP 地址,检查输出
netstat -tnlp | grep 25
Run Code Online (Sandbox Code Playgroud)
并采取适当的行动。如果不是这样,那么很可能是其他人阻止了您上游的 25 端口。
归档时间: |
|
查看次数: |
9412 次 |
最近记录: |