从服务器发送测试电子邮件来测试设置的最简单方法是什么?

从服务器发送测试电子邮件来测试设置的最简单方法是什么?

使用 Windows(2008)是否有一个简单的命令行工具,我可以使用它从服务器发送测试电子邮件来测试 SMTP、用户身份验证、端口等...而无需自己编写?

答案1

您最好、最简单且最全球可用的工具:远程登录

  1. 在命令提示符下,输入:telnet mail.mailserver.com 25
  2. 键入 EHLO,然后按 ENTER。
  3. 键入 AUTH LOGIN。服务器将以加密提示形式响应您的用户名。

    输入以 base 64 加密的用户名。您可以使用多种可用工具之一来对您的用户名进行编码。

    服务器将以加密的 Base 64 格式提示您输入密码。请输入以 Base 64 格式加密的密码。

  4. 键入 MAIL FROM:,然后按 ENTER。如果发件人无权发送邮件,SMTP 服务器将返回错误。

  5. 键入 RCPT TO:,然后按 ENTER。如果收件人不是有效收件人或服务器不接受此域的邮件,则 SMTP 服务器将返回错误。

  6. 输入 DATA。

    如果需要,请键入消息文本,按 ENTER,键入句点 (.),然后再次按 ENTER。

    如果邮件工作正常,您应该会看到类似以下的响应,表明邮件已排队等待递送:

    250 2.6.0[电子邮件保护]

部分内容摘自 MS Technet 文章

答案2

对我来说,最简单的方法是使用发送邮件消息在 Powershell 中。从 Powershell 控制台只需运行:

PS C:\Users\admin> Send-MailMessage -SMTPServer smtp.domain.com -To [email protected] -From [email protected] -Subject "This is a test email" -Body "Hi, this is a test email sent via PowerShell to test the STMP relay server"

可以在这里找到更多选项关联

答案3

如果您偶尔需要测试一下,或者只是测试少量的 SMTP 服务器,那么 telnet 可能是最方便的工具,这一点已经有人指出了。telnet 的最大优点在于它几乎是一个通用工具,它不仅允许您测试 SMTP 服务器,还允许您测试其他服务,如 POP、IMAP 等。

但是,如果你定期或大规模地进行此类测试,我强烈建议你使用斯瓦克斯。它使用起来非常简单,还可以执行其他任务,如发送附件(这对于测试您的邮件内容过滤器很有用)。

它还会为您提供有用的退出代码,以便您甚至可以使用它来执行自动化测试。

我经常在 Linux 上使用它,但作为一个 Perl 脚本,您应该能够在 Windows 系统上毫无问题地运行它。

答案4

通过 Telnet 连接到端口 25 并手动发出 SMTP 命令通常可以达到此目的。

相关内容