开放中继SMTP - TELNET CMD
问题描述:
我有SMTP服务器,一个简短的问题 我使用ISP提供的电子邮件和SMTP服务器需要SSL禁用(所以我通过他们的技术支持代表决定)来使用它。开放中继SMTP - TELNET CMD
我想通过CMD上的Telnet命令发送一封电子邮件,如果我将它发送到同一台服务器上的另一封电子邮件,它没有问题,但是如果我尝试将它发送到GMAIL帐户电子邮件接受交付,但从未达到的Gmail帐户(我已经检查垃圾邮件)。
从我的理解这是因为服务器不允许开放中继。如果是这样的话,那么为什么邮件发送到Gmail当我登录到实际在线Webmail帐户,是有办法通过端口25上的CMD发送这封邮件吗?这是否是由于我登录到Webmail帐户时进行了身份验证?
感谢您的帮助:)
答
它是由于这样的事实,当我登录到 Webmail帐户我验证?
是。
为了不被认为是“开放”,一封邮件中继应该是安全的,并配置为接受并转发只有以下消息(细节将因系统而异)从本地
- 消息从被认证和授权 客户端的IP地址到本地邮箱从本地IP地址
- 消息给非本地邮箱从非本地IP地址
- 邮件到本地邮箱
- 消息
特别是,适当的安全SMTP邮件中继不应该接受,并通过未经认证的或未经授权的用户转发来自非本地IP地址的非本地邮箱的任意电子邮件。 Gmail不是一个开放的中继。
有没有办法通过CMD上的端口25发送此电子邮件?
是。您可以使用telnet的AUTH LOGIN
命令验证自己的身份。该对话将使用Base64编码进行。它看起来像这样。
AUTH LOGIN
334 VXNlcm5hbWU6 (Server prompt "Username:" encoded as Base64)
Uy4gV2Vpc3M= (You enter your username encoded with Base64)
334 UGFzc3dvcmQ6 (Server prompt "Password:" as Base64 encoded)
U2VjcmV0UGFzc3dvcmQ= (Your enter you password encoded with Base64)
235 Authentication succeeded
了解更多here。使用这个在线Base64 encoder编码您的用户名和密码。