我已经成功安装了 postfix,它可以正常工作,当我以 root 身份登录到我的 VPS 时,我可以正常发送和接收邮件。但问题是我无法连接到 thunderbird 或 outlook。我也无法通过端口 25 远程 telnet 到机器。但是当我登录到 VPS 时,我可以通过端口 25 telnet 到它。我知道端口 25 是开放的,因为可以发送和接收电子邮件。即使它可以正常工作,我仍然在 iptables 中打开了端口 25。我是新手,我认为这是某种 DNS 问题,但我不知道问题出在哪里。有人可以帮忙吗?
顺便说一下,我的 DNS 设置如下:
Type=A record host=* Value=server ip address
Type=A record host=@ Value=server ip address
Type=A record host=www Value=server ip address
Type=MX record host=@ value=mail.example.com 10
答案1
通过编辑确保 Postfix 服务器已配置为监听公共或所有接口/etc/postfix/main.cf
inet_interfaces = 全部
此外,Thunderbird/Outlook 应使用
传出:安全 SMTP 端口465
或587
传入:IMAP 端口143
或993
IMAP/TLS
关于 DNS;确保它不会仍然显示mail.example.com
答案2
端口 25 上的传出流量通常被阻止消费者ISP、企业、政府和大学网络等,以防止其用户传输未经授权的电子邮件和垃圾邮件。
您可以通过以下两种方式解决此问题:使用 ISP 在您的电子邮件客户端中提供的外发邮件服务器,或者让 postfix 监听除 TCP/IP 端口 25 之外的第二个端口,并配置您的客户端(如 thunderbird)以使用该端口。用于邮件提交的 TCP/IP 保留端口 587 是一种常见选择,用于 SSL 上的 SMTP 的端口 465 也是常见选择。
在 master.cf 中取消注释:
#submission inet n - n - - smtpd
和/或
#smtps inet n - - - - smtpd
并在防火墙上打开这些端口。