我在从我的服务器发送邮件时遇到了问题。我在端口587上连接到office365,但它一直循环回运行在587上的本地smtp服务器。起初,我认为这是DNS问题,指向127.0.0.1,因此我更改为使用office365 ip,但仍然得到本地smtp,因此我关闭本地smtp以从问题中删除它,但随后连接被拒绝。
最后,我发现是防火墙在做躲闪的事情,并禁用了它,现在我可以将netcat作为根用户到ip和端口,并获得office365 ehlo。
[root@web ~]# ncat 40.101.6.90 587
220 VI1PR0801CA0052.outlook.office365.com Microsoft ESMTP MAIL Service ready at Tue, 13 Dec 2016 11:51:16 +0000但是从一个非根用户那里,我被拒绝了连接。
[centos@web ~]$ ncat 40.101.6.90 587
Ncat: Connection refused.我也使selinux失去了功能。我不知道当我禁用防火墙时发生了什么,它似乎只对根用户这样做,防火墙-cmd-状态仍然显示防火墙正在运行。
[root@web ~]# systemctl stop firewalld
[root@web ~]# systemctl disable firewalld
[root@web ~]# firewall-cmd --state
running
[root@web ~]# 我也不明白为什么它的循环后端端口,比如它的nat或者什么的,然后在默认情况下阻塞输出端口,这个东西是一团糟的。我想念伊普塔莱。
发布于 2016-12-13 13:59:33
看来你做得很好,让消防队停用了。尝试重新启动服务器-它不应该说“运行”那么。如果您不能重新启动服务器,那么firewalld是基于iptables的。因此,您可以使用iptables命令,如:
iptables -nvL和
iptables -nvL -t nat看看还能有什么规定。以下是如何清除任何规则的示例:
iptables -F POSTROUTING -t nat
iptables -F FORWARD
iptables -F INPUT
iptables -F OUTPUT不过,要小心政策。如果它被设置为删除,那么刷新规则将拒绝所有的流量。
一旦您重新启动或清除了任何不想要的规则从iptables,您可以离开firewalld,回到使用iptables!
https://serverfault.com/questions/820407
复制相似问题