我在 CentOS 机器上安装并运行了 PostFix,并且想通过 PostFix 服务器从同一网络上的 Windows 服务器发送邮件。
当我尝试从 Windows 服务器通过 telnet 进入 PostFix 服务器上的端口 25 时,连接失败。
我在 PostFix/CentOS 中哪里可以设置它?
提前致谢!
答案1
您需要配置中继。但是,当 postfix 运行时,您仍然能够连接到端口 25。防火墙会阻止此连接吗?
当你打开 main.cf 时,你需要添加此指令:
mynetworks=A.B.C.D
例子:
mynetworks = 127.0.0.0/8 168.100.189.0/28
mynetworks = !192.168.0.1, 192.168.0.0/28
mynetworks = 127.0.0.0/8 168.100.189.0/28 [::1]/128 [2001:240:587::]/64
不要输入 0.0.0.0,否则您将成为开放中继。
答案2
我的 Postfix 服务器在其 IPtables 中有类似的功能可以启用连接。
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:25
您的服务器可能会受到进一步的限制,具体取决于您要执行的操作。但是,如果通过端口 25 远程登录失败,请不要指望该机器可以用作 SMTP 服务器(除非您更改端口 - 这不是您所说的)。请注意,在其他端口上接受连接是可能的,很多时候更可取。
答案3
@LucasKauffman 是正确的,mynetworks 是可行的方法 --- 但请确保smtpd_recipient_restrictions
具有permit_mynetworks
如下内容:
smtpd_recipient_restrictions = permit_mynetworks, ...
这是默认设置,但如果您-o smtpd_recipient_restrictions=something
在 smtpd 行上有设置,master.cf
那么它将覆盖main.cf
设置。