使用 Telnet 与一个 SMTP 服务器对话

目录

1. 启用 QQ 邮箱的 SMTP 服务

2. 开启终端使用 telnet 连接 SMTP 服务器

3. 实测


我想要与 QQ 邮箱服务器进行一次直接对话。

1. 启用 QQ 邮箱的 SMTP 服务

打开 QQ 邮箱网页,点击设置 << 常规,下滑,看到第三方服务 IMAP/SMTP 这一栏。点击 “启用服务/Enable Service” 。

通过验证后,你将得到这串密码,到时候使用 SMTP 服务时需要用到。它说你可以拥有很多串认证密码,所以不用担心忘了这串密码。

就算忘了也可以再生成一串新的密码。

2. 开启终端使用 telnet 连接 SMTP 服务器

1)之前没有开启 Telnet 服务的,记得开一下~

2)连接 QQ 邮箱服务器

常用邮箱服务器(SMTP,POP3)地址

参考博客:https://blog.csdn.net/qq_42511550/article/details/119913795

在终端输入如下命令:

telnet smtp.qq.com 587

进入新界面并得到回复:

S: 220 newxmesmtplogicsvrsza10-0.qq.com XMail Esmtp QQ Mail Server.

3)使用 helo 命令打招呼

  • 这里的 name 可以随便取。
  • helo 是 hello 的简称,绝对不是什么输入错误。
C: helo name
S: 250-newxmesmtplogicsvrsza10-0.qq.com-11.137.201.48-77028683
S: 250-SIZE 73400320
S: 250 OK

4)进行身份认证

Q:base64 编码?

在线编码网址:https://tool.ip138.com/base64/

  • VXNlcm5hbWU6 解码以后就是 Username:
  • UGFzc3dvcmQ6 解码以后就是 Password:

输入 auth login 后开始身份验证:

C: auth login
S: 334 VXNlcm5hbWU6
C: //输入base64编码的发件qq邮箱
S: 334 UGFzc3dvcmQ6
C: //输入base64编码的认证密码
S: 235 Authentication successful

5)发送邮件

a. 指定发送邮箱和接收邮箱,<> 是必要的!

C: mail from: <[email protected]>
S: 250 OK
C: rcpt to: <[email protected]>
S: 250 OK

b. 输入 data 命令,准备编写邮件消息

C: data
S: 354 End data with <CR><LF>.<CR><LF>.

c. 开始编写邮件消息

C: from: [email protected]
C: to: [email protected]
C: subject: searching for the meaning of life!
C: hello
C: .
S: 250 OK: queued as.

6)断开连接

C: quit
S: 221 Bye.

3. 实测

一次与 smtp.qq 的连接内容如下,邮件地址已遮盖:

出现报错(最开始我遇到的报错更多):

S: 502 Invalid input from 210.41.98.177 to newxmesmtplogicsvrszb9-0.qq.com

解决方法就是多输入几次(?)不过前提是你输入的格式是正确的。

室友收到邮件消息并截图,总的来说是一次成功的连接!

写错了,是 search for sb/sth!

猜你喜欢

转载自blog.csdn.net/m0_64140451/article/details/129718906