SMTP 命令
| 命令 | 阶段 | 说明 |
|---|---|---|
| HELO | 问候 | 传统问候,声明发件方域名 |
| EHLO | 问候 | 扩展问候,触发 ESMTP 扩展列表 |
| MAIL FROM | 信封 | 声明发件人(信封地址,可带 SIZE 参数) |
| RCPT TO | 信封 | 声明收件人,可多次出现 |
| DATA | 数据 | 开始传输正文,以单独一行 . 结束 |
| RSET | 任意 | 重置当前邮件事务,不断连接 |
| NOOP | 任意 | 探活,服务器回 250 |
| VRFY | 任意 | 验证地址是否存在(常被禁用防枚举) |
| EXPN | 任意 | 展开邮件列表(基本已禁用) |
| HELP | 任意 | 查询服务器帮助 |
| AUTH | 提交 | 认证(PLAIN/LOGIN/CRAM-MD5/XOAUTH2) |
| STARTTLS | 提交 | 把当前明文连接升级为 TLS |
| QUIT | 结束 | 正常结束会话 |
只发信封不发正文
只发信封不发正文
MAIL FROM:<a@example.com>
250 Ok
RCPT TO:<b@example.net>
250 Ok
RSET
250 OkRCPT TO 是「收件人探测」现场:对方在应答里暴露 550/251 等差异,这也是 VRFY 被禁用的初衷。