使用SMTP身份验证通过Telnet发送电子邮件
时间:2020-01-09 10:46:53 来源:igfitidea点击:
在某些情况下,为了测试或者诊断电子邮件服务,管理员必须检查通过某些主机通过其Exchange服务器(和其他电子邮件服务器)发送的电子邮件。中继服务器),则可以从telnet命令提示符下发送电子邮件。但是,在大多数情况下,邮箱服务器需要身份验证才能发送电子邮件。在这个示例中,我们将展示如何在SMTP服务器上执行AUTH LOGIN身份验证以及如何使用telnet控制台发送电子邮件。
用Exchange术语来说,当用户名和密码通过使用base64算法编码的网络传输时,AUTH LOGIN是"基本认证"。管理员通常不会在大多数内部Exchange服务器上禁用基本身份验证。我们可以在接收连接器的设置中查看它是否受支持。
使用Telnet在命令提示符下连接到电子邮件服务器的端口25(SMTP)(我将以蓝色突出显示要输入的命令)
telnet mail.theitroad.local 25
如果是Exchange,它将返回类似以下内容的内容:
220 mail.theitroad.local Microsoft ESMTP MAIL Service ready at Thu, 11 Nov 2016 10:22:31 +0300
让我们自我介绍一下:
ehlo sender.theitroad.local
服务器将返回受支持的身份验证类型和选项的列表。如我们所见,列表中有AUTH LOGIN。
250-mail.theitroad.local Hello [192.168.1.115]
250-SIZE 36700160
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-STARTTLS
250-AUTH LOGIN
250-8BITMIME
250-BINARYMIME
250 CHUNKING
要求SMTP服务器使用当前帐户对我们进行身份验证:
身份登录
服务器将响应:
334 VXNlcm5hbWU6
现在,以我们之前加密的Base64格式复制并粘贴用户名:dGVzdF91c2VyQHdvc2h1Yi5jb20g
服务器将响应:
334 UGFzc3dvcmQ6.
然后以Base64格式复制并粘贴密码:JHVwM1JzVHIpbmc =
如果用户名和密码正确,服务器将返回:
235 2.7.0 Authentication successful
如果不:
535 5.7.8 Error: authentication failed: UGFzc3dvcmQ6
辞职
221 2.0.0 Closing connection.
Connection closed by foreign host.
仅此而已,电子邮件将成功发送到收件人邮箱。