如何使用远程 SMTP 服务器(在 Linux 环境的本地主机上配置为 运行)从 windows 机器发送电子邮件?
How to send an email from a windows machine by using remote SMTP server (configured to run on localhost on Linux environment)?
我在 Windows 机器上有一个应用程序 运行ning。与应用程序相关的警报将通过电子邮件发送给管理员,为此需要通过 Java 程序发送电子邮件。 SMTP 服务器配置在网络中的远程 Linux 机器上。
当 运行 在 Linux 机器上时,Java 邮件程序工作正常并发送电子邮件。但是,如果同一程序在 Windows 上 运行,则无法连接到 SMTP 服务器。
注:
从远程 windows 服务器 Ping 到 Linux 机器(具有 SMTP 服务器)成功。
Telnet 25 从远程计算机以及 SMTP 所在的计算机失败 运行ning
从 SMTP 服务器(Linux 服务器)Telnet localhost 25 成功。
通过 Java 程序发送的电子邮件是成功的,如果当主机名指定为 localhost.It 时在 SMTP 服务器上 运行 如果您提供实际的主机名则失败。
/etc/hosts SMTP 服务器上的文件列出 127.0.0.1 本地主机。
如何使用 SMTP 服务器从远程 Windows 机器发送电子邮件?
我可以粘贴 windows 机器上出现的错误,但问题不在于程序;它是配置 SMTP 服务器的方式。我是 SMTP 的新手,所以如果我错了,请随时纠正我。
objective 是使用 Linux 机器上的 SMTP 服务器从远程 windows 机器发送 java 电子邮件。
按照以下评论中的要求添加 netstat -ant|grep :25 的输出:
[root@XXXXXXXXXXX]# netstat -ant | grep :25
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 ::1:25 :::* LISTEN
tcp 0 0 ::ffff:10.207.70.71:1521 ::ffff:10.207.70.71:25481 ESTABLISHED
tcp 0 0 ::ffff:10.207.70.71:25481 ::ffff:10.207.70.71:1521 ESTABLISHED
tcp 0 0 ::ffff:10.207.70.71:25202 ::ffff:10.207.70.71:3001 TIME_WAIT
tcp 0 0 ::ffff:10.207.70.71:25127 ::ffff:10.207.70.71:3001 TIME_WAIT
tcp 0 0 ::ffff:10.207.70.71:25289 ::ffff:10.207.70.71:3001 ESTABLISHED
tcp 0 0 ::1:51432 ::1:25580 ESTABLISHED
tcp 0 0 ::1:25580 ::1:51432 ESTABLISHED
tcp 0 0 ::ffff:10.207.70.71:25233 ::ffff:10.207.70.71:3001 TIME_WAIT
tcp 0 0 ::ffff:10.207.70.71:3001 ::ffff:10.207.70.71:25289 ESTABLISHED
[root@XXXXXXXXXXX]#
Postfix:接受所有 IP 接口上的 SMTP 连接
您的 SMTP 服务器(后缀)仅在环回接口上接受传入的 SMTP 连接
[IPv4=127.0.0.1 和 IPv6=::1]。
让你的后缀监听所有可用的 IP 接口 -> 在 main.cf
配置文件中恢复默认设置 inet_interfaces = all
http://www.postfix.org/postconf.5.html#inet_interfaces
为什么使用"loopback only"配置?
限制 SMTP 服务器仅接受本地 SMTP 连接是 "workstations" 上非常常见的默认配置。它允许发送电子邮件(例如系统 warnings/notifications)而不接受任何传入的垃圾邮件。
我在 Windows 机器上有一个应用程序 运行ning。与应用程序相关的警报将通过电子邮件发送给管理员,为此需要通过 Java 程序发送电子邮件。 SMTP 服务器配置在网络中的远程 Linux 机器上。
当 运行 在 Linux 机器上时,Java 邮件程序工作正常并发送电子邮件。但是,如果同一程序在 Windows 上 运行,则无法连接到 SMTP 服务器。
注:
从远程 windows 服务器 Ping 到 Linux 机器(具有 SMTP 服务器)成功。
Telnet
25 从远程计算机以及 SMTP 所在的计算机失败 运行ning 从 SMTP 服务器(Linux 服务器)Telnet localhost 25 成功。
通过 Java 程序发送的电子邮件是成功的,如果当主机名指定为 localhost.It 时在 SMTP 服务器上 运行 如果您提供实际的主机名则失败。
/etc/hosts SMTP 服务器上的文件列出 127.0.0.1 本地主机。
如何使用 SMTP 服务器从远程 Windows 机器发送电子邮件?
我可以粘贴 windows 机器上出现的错误,但问题不在于程序;它是配置 SMTP 服务器的方式。我是 SMTP 的新手,所以如果我错了,请随时纠正我。
objective 是使用 Linux 机器上的 SMTP 服务器从远程 windows 机器发送 java 电子邮件。
按照以下评论中的要求添加 netstat -ant|grep :25 的输出:
[root@XXXXXXXXXXX]# netstat -ant | grep :25
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 ::1:25 :::* LISTEN
tcp 0 0 ::ffff:10.207.70.71:1521 ::ffff:10.207.70.71:25481 ESTABLISHED
tcp 0 0 ::ffff:10.207.70.71:25481 ::ffff:10.207.70.71:1521 ESTABLISHED
tcp 0 0 ::ffff:10.207.70.71:25202 ::ffff:10.207.70.71:3001 TIME_WAIT
tcp 0 0 ::ffff:10.207.70.71:25127 ::ffff:10.207.70.71:3001 TIME_WAIT
tcp 0 0 ::ffff:10.207.70.71:25289 ::ffff:10.207.70.71:3001 ESTABLISHED
tcp 0 0 ::1:51432 ::1:25580 ESTABLISHED
tcp 0 0 ::1:25580 ::1:51432 ESTABLISHED
tcp 0 0 ::ffff:10.207.70.71:25233 ::ffff:10.207.70.71:3001 TIME_WAIT
tcp 0 0 ::ffff:10.207.70.71:3001 ::ffff:10.207.70.71:25289 ESTABLISHED
[root@XXXXXXXXXXX]#
Postfix:接受所有 IP 接口上的 SMTP 连接
您的 SMTP 服务器(后缀)仅在环回接口上接受传入的 SMTP 连接
[IPv4=127.0.0.1 和 IPv6=::1]。
让你的后缀监听所有可用的 IP 接口 -> 在 main.cf
配置文件中恢复默认设置 inet_interfaces = all
http://www.postfix.org/postconf.5.html#inet_interfaces
为什么使用"loopback only"配置?
限制 SMTP 服务器仅接受本地 SMTP 连接是 "workstations" 上非常常见的默认配置。它允许发送电子邮件(例如系统 warnings/notifications)而不接受任何传入的垃圾邮件。