Swaks 发送邮件

First Post:

Last Update:

Word Count:
4k

Read Time:
22 min

Page View: loading...

列举常用的 swaks 参数,随用随记。

临时邮箱

本文大部分测试在 24mail 下进行;剩余测试均使用个人邮箱。

下载

(Ubuntu)使用以下代码下载 swaks

1
sudo apt install swaks

--to

使用 --to 指定目标邮箱。例如

1
swaks --to [email protected]

你大概会看到类似这样的日志

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
=== Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO LAPTOP-Q0JIQNAL.localdomain
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
-> Date: Sun, 22 Jun 2025 00:32:48 +0800
-> To: [email protected]
-> From: [email protected]
-> Subject: test Sun, 22 Jun 2025 00:32:48 +0800
-> Message-Id: <[email protected]>
-> X-Mailer: swaks v20240103.0 jetmore.org/john/code/swaks/
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

顺便,这里列出每行的三个前缀字符的含义:

提示符 含义
=== 表示Swaks生成的信息行
*** 表示Swaks内部产生的错误
-> 表示Swaks向目标服务器发送的预期行
~> 表示Swaks向目标服务器发送的TLS加密预期行
**> 表示Swaks向目标服务器发送的意外行
*~> 表示Swaks向目标服务器发送的TLS加密意外行
<- 表示目标服务器向Swaks发送的预期行
<~ 表示目标服务器向Swaks发送的TLS加密预期行
<** 表示目标服务器向Swaks发送的意外行
<~* 表示目标服务器向Swaks发送的TLS加密意外行

这种情形下,通常 From 字段被标记为 <用户>@<机器> 的形式;Subject 被标记为 test <时间>X-Mailer 被标记为 swaks 的名称和版本;正文部分为 This is a test mailing

--from

使用 --from 指定发件人的邮箱。

例如

1
swaks --to [email protected] --from test@test.com

为了方便比较,这里直接列出本次输出和上一次输出的 diff

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO LAPTOP-Q0JIQNAL.localdomain
<- 250 web1905
- -> MAIL FROM:<[email protected]>
+ -> MAIL FROM:<[email protected]>
<- 250 Ok
- -> RCPT TO:<[email protected]>
? ^^^^^^^ ^
+ -> RCPT TO:<[email protected]>
? + ^^^^^ ^^
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 00:32:48 +0800
? ^^ ^ ^^
+ -> Date: Sun, 22 Jun 2025 12:39:33 +0800
? ^^ ^ ^^
- -> To: [email protected]
- -> From: [email protected]
+ -> To: [email protected]
+ -> From: [email protected]
- -> Subject: test Sun, 22 Jun 2025 00:32:48 +0800
? ^^ ^ ^^
+ -> Subject: test Sun, 22 Jun 2025 12:39:33 +0800
? ^^ ^ ^^
- -> Message-Id: <[email protected]>
? ^^ ^^^ ^^ ^
+ -> Message-Id: <[email protected]>
? ^^ ^^^ ^^ ^
-> X-Mailer: swaks v20240103.0 jetmore.org/john/code/swaks/
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

正规的邮箱服务里,一些域名会被检查 SPF 记录,如果发件 ip 与记录不符,无法通过验证,会被拒绝。例如:

1
swaks --to *********@qq.com --from [email protected] --ehlo qq.com
1
2
3
4
5
6
7
8
9
10
11
12
13
14
=== Trying mx3.qq.com:25...
=== Connected to mx3.qq.com.
<- 220 newxmmxszc23-0.qq.com MX QQ Mail Server.
-> EHLO qq.com
<- 250-newxmmxszc23-0.qq.com
<- 250-STARTTLS
<- 250-8BITMIME
<- 250-SMTPUTF8
<- 250-SIZE 73400320
<- 250 OK
-> MAIL FROM:<[email protected]>
<** 550 SPF check failed. http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=20022&&no=1001445 [MPdC3ariWK7GZndWaXfsa4eLTsQMO+LiHnoPqVrDu0UG6GBeQl5+eZOslGc9ekY1xQ== IP: 60.233.9.39]
-> QUIT
*** Remote host closed connection unexpectedly.

这里的 ip 验证并非你的 ip 地址,而是你使用的 SMTP 服务器的地址。

顺带一提,Spamhaus 反垃圾邮件组织​​直接将 swaks 的默认邮箱服务的 ip 地址列入黑名单,而微软的 Outlook 邮箱会检查这一点:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
=== Trying outlook-com.olc.protection.outlook.com:25...
=== Connected to outlook-com.olc.protection.outlook.com.
<- 220 CH3PEPF00000015.mail.protection.outlook.com Microsoft ESMTP MAIL Service ready at Sun, 22 Jun 2025 05:58:00 +0000 [08DDB07650EC6878]
-> EHLO test.com
<- 250-CH3PEPF00000015.mail.protection.outlook.com Hello [120.221.100.232]
<- 250-SIZE 49283072
<- 250-PIPELINING
<- 250-DSN
<- 250-ENHANCEDSTATUSCODES
<- 250-STARTTLS
<- 250-8BITMIME
<- 250-BINARYMIME
<- 250-CHUNKING
<- 250 SMTPUTF8
-> MAIL FROM:<[email protected]>
<** 550 5.7.1 Service unavailable, Client host [120.221.100.232] blocked using Spamhaus. To request removal from this list see https://www.spamhaus.org/query/ip/120.221.100.232 (AS3130). [Name=Protocol Filter Agent][AGT=PFA][MxId=11BB60EC9FF1E732] [CH3PEPF00000015.namprd21.prod.outlook.com 2025-06-22T05:58:01.072Z 08DDB07650EC6878]
-> QUIT
*** Remote host closed connection unexpectedly.

--ehlo

使用 --ehlo 指定发送网址,用来进一步伪装。

例如

1
swaks --to [email protected] --from test@test.com --ehlo test.com

diff 文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
- -> EHLO LAPTOP-Q0JIQNAL.localdomain
+ -> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 12:39:33 +0800
? ^ - ^^
+ -> Date: Sun, 22 Jun 2025 13:43:01 +0800
? ^ + ^^
-> To: [email protected]
-> From: [email protected]
- -> Subject: test Sun, 22 Jun 2025 12:39:33 +0800
? ^ - ^^
+ -> Subject: test Sun, 22 Jun 2025 13:43:01 +0800
? ^ + ^^
- -> Message-Id: <[email protected]>
? - ^ ^ ^^ ^
+ -> Message-Id: <[email protected]>
? ^ ^^ ^^ ^
-> X-Mailer: swaks v20240103.0 jetmore.org/john/code/swaks/
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

使用 --head 设置邮件头。

Subject

例如,以下命令指定邮件标题为 foo

1
2
3
4
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--head "Subject: foo"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 13:43:01 +0800
? ^^^^^^
+ -> Date: Sun, 22 Jun 2025 15:28:37 +0800
? +++++ ^
-> To: [email protected]
-> From: [email protected]
- -> Subject: test Sun, 22 Jun 2025 13:43:01 +0800
+ -> Subject: foo
- -> Message-Id: <[email protected]>
? ^^^^ ^^^
+ -> Message-Id: <[email protected]>
? +++ ^ + ^^
-> X-Mailer: swaks v20240103.0 jetmore.org/john/code/swaks/
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

也可以使用 --h-Subject 直接指定文件头部分的 Subject 项。

1
2
3
4
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-Subject "foo"

X-Mailer

X-Mailer 用来标记发出邮件的应用程序,默认情况下是 swaks <version> <url>

1
2
3
4
5
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 15:28:37 +0800
? ^^^^
+ -> Date: Sun, 22 Jun 2025 15:39:20 +0800
? +++ ^
-> To: [email protected]
-> From: [email protected]
-> Subject: foo
- -> Message-Id: <[email protected]>
? ^^^ ^^^
+ -> Message-Id: <[email protected]>
? ++ ^ ^^^
- -> X-Mailer: swaks v20240103.0 jetmore.org/john/code/swaks/
+ -> X-Mailer: QQMail 2.x
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

X-Priority

X-Priority 用来标记邮件的重要性。

  • X-Priority: 1(或 Urgent):最高优先级,表示紧急或非常重要的邮件。
  • X-Priority: 2(或 High):高优先级邮件。
  • X-Priority: 3(或 Normal):正常优先级邮件,这是默认级别。
  • X-Priority: 4(或 Low):低优先级邮件。
  • X-Priority: 5(或 Bulk):批量邮件或垃圾邮件,可能会被邮件客户端视为不太重要的邮件。
1
2
3
4
5
6
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 15:39:20 +0800
? ^ ^^ ^
+ -> Date: Sun, 22 Jun 2025 16:10:40 +0800
? ^ ^^ ^
-> To: [email protected]
-> From: [email protected]
-> Subject: foo
- -> Message-Id: <[email protected]>
? ^^^^ -
+ -> Message-Id: <[email protected]>
? ^^^^ +
-> X-Mailer: QQMail 2.x
+ -> X-Priority: 1
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

Message-Id

用来给出一个唯一的邮件标识符。

一般来说,要求:

  • 首尾分别为 <>
  • 中间包含字符 @
  • @ 的左右均为由 . 分割的、非空可打印 ASCII 串。

一个满足上述要求的正则表达式如下:

1
<[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*>

另外,@ 的右侧通常为发件人的邮箱域名,例如:

1
2
3
4
5
6
7
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1 \
--h-Message-Id "<[email protected]>"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 16:10:40 +0800
? ^ ^^
+ -> Date: Sun, 22 Jun 2025 16:15:23 +0800
? ^ ^^
-> To: [email protected]
-> From: [email protected]
-> Subject: foo
- -> Message-Id: <[email protected]>
+ -> Message-Id: <[email protected]>
-> X-Mailer: QQMail 2.x
-> X-Priority: 1
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

From

From 标记发件人,可以用来设置发件人的别名。另外,这个字段比 --from 指定的字段受到检查的强度更小。但是,若 --from--h-From 指定的邮箱地址不一致,邮件服务在标记发件人为后者的同时,还会标记邮件由前者代发;并且可能对此进行警告。

1
2
3
4
5
6
7
8
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-From "=?gb2312?B?udzA7dSx?= <[email protected]>" \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1 \
--h-Message-Id "<[email protected]>"

这里 =?gb2312?B?udzA7dSx?= 是 MIME 编码,格式为 =?charset?encoding?encoded_string?=

  • charset:字符集,本例中为 gb2312
  • encoding:编码方式,本例中为 B,代指 Base64 编码;
  • encoded_string:编码串,本例中为 udzA7dSx

因此这段字符翻译出来为 管理员

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 16:15:23 +0800
? ^^^^
+ -> Date: Sun, 22 Jun 2025 16:42:10 +0800
? +++ ^
-> To: [email protected]
- -> From: [email protected]
+ -> From: =?gb2312?B?udzA7dSx?= <[email protected]>
-> Subject: foo
-> Message-Id: <[email protected]>
-> X-Mailer: QQMail 2.x
-> X-Priority: 1
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

To

To 标记收件人,与 --to 指定的不同,这条字段不会改变实际的收信人,结合字段 cc,应该可以模拟出抄送或密送的效果。没有测试。

cc

cc 标记抄送人,但是只是让收信者看到你指定的抄送人,不会实际发送。

1
2
3
4
5
6
7
8
9
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-From "=?gb2312?B?udzA7dSx?= <[email protected]>" \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1 \
--h-Message-Id "<[email protected]>" \
--h-cc "weilycoder <*********@qq.com>"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 16:15:23 +0800
? ^^^
+ -> Date: Sun, 22 Jun 2025 16:21:55 +0800
? + + ^
-> To: [email protected]
-> From: =?gb2312?B?udzA7dSx?= <[email protected]>
-> Subject: foo
-> Message-Id: <[email protected]>
-> X-Mailer: QQMail 2.x
-> X-Priority: 1
+ -> cc: weilycoder <*********@qq.com>
->
-> This is a test mailing
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

如果不打算伪装抄送者名称,也可以只写邮件地址,例如 --h-cc "*********@qq.com"

--body

使用 --body 指定邮件内容。

1
2
3
4
5
6
7
8
9
10
swaks --to [email protected] \
--from test@test.com \
--ehlo test.com \
--h-From "=?gb2312?B?udzA7dSx?= <[email protected]>" \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1 \
--h-Message-Id "<[email protected]>" \
--h-cc "weilycoder <*********@qq.com>" \
--body "Test email"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 16:21:55 +0800
? ^ ^^
+ -> Date: Sun, 22 Jun 2025 16:26:26 +0800
? ^ ^^
-> To: [email protected]
-> From: =?gb2312?B?udzA7dSx?= <[email protected]>
-> Subject: foo
-> Message-Id: <[email protected]>
-> X-Mailer: QQMail 2.x
-> X-Priority: 1
-> cc: weilycoder <*********@qq.com>
->
- -> This is a test mailing
+ -> Test email
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

--cc/--bcc

使用 --cc/--bcc 指定抄送/密送。

与在 To/cc 字段指定不同,使用这两个参数时,邮件确实会发送到指定的邮箱。

1
2
3
4
5
6
7
8
9
10
11
12
swaks --to [email protected] \
--cc [email protected] \
--bcc [email protected] \
--from test@test.com \
--ehlo test.com \
--h-From "=?gb2312?B?udzA7dSx?= <[email protected]>" \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1 \
--h-Message-Id "<[email protected]>" \
--h-cc "weilycoder <*********@qq.com>" \
--body "Test email"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
+ -> RCPT TO:<[email protected]>
+ <- 250 Ok
+ -> RCPT TO:<[email protected]>
+ <- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 16:26:26 +0800
? ^ ^ ^
+ -> Date: Sun, 22 Jun 2025 17:27:22 +0800
? ^ ^ ^
- -> To: [email protected]
+ -> To: [email protected]
+ -> Cc: [email protected]
-> From: =?gb2312?B?udzA7dSx?= <[email protected]>
-> Subject: foo
-> Message-Id: <[email protected]>
-> X-Mailer: QQMail 2.x
-> X-Priority: 1
-> cc: weilycoder <*********@qq.com>
->
-> Test email
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.

24mail 似乎不会显示以抄送/密送方法到达的邮件,但是 QQ 邮箱是可以的。

如果使用 QQ 邮箱接收,则 --cc--h-cc 指定的抄送人都会显示,但是实际上只有前者指定的地址真的被发送了邮件。

Html 格式邮件

使用 --attach 参数。

1
2
3
4
5
6
7
8
9
10
11
12
13
swaks --to [email protected] \
--cc [email protected] \
--bcc [email protected] \
--from test@test.com \
--ehlo test.com \
--h-From "=?gb2312?B?udzA7dSx?= <[email protected]>" \
--h-Subject "foo" \
--h-X-Mailer "QQMail 2.x" \
--h-X-Priority 1 \
--h-Message-Id "<[email protected]>" \
--h-cc "weilycoder <*********@qq.com>" \
​--attach-type "text/html" \
​--attach-body "<html><body><b>HTML Test</b></body></html>"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
  === Trying mx.chacuo.net:25...
=== Connected to mx.chacuo.net.
<- 220 web1905 chcuo.net server 0.2
-> EHLO test.com
<- 250 web1905
-> MAIL FROM:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> RCPT TO:<[email protected]>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
- -> Date: Sun, 22 Jun 2025 17:27:22 +0800
? - -
+ -> Date: Sun, 22 Jun 2025 17:42:42 +0800
? + +
-> To: [email protected]
-> Cc: [email protected]
-> From: =?gb2312?B?udzA7dSx?= <[email protected]>
-> Subject: foo
-> Message-Id: <[email protected]>
-> X-Mailer: QQMail 2.x
+ -> MIME-Version: 1.0
+ -> Content-Type: multipart/mixed; boundary="----=_MIME_BOUNDARY_000_15844"
-> X-Priority: 1
-> cc: weilycoder <*********@qq.com>
->
- -> Test email
+ -> ------=_MIME_BOUNDARY_000_15844
+ -> Content-Type: text/html
+ -> Content-Transfer-Encoding: BASE64
+ ->
+ -> PGh0bWw+PGJvZHk+PGI+SFRNTCBUZXN0PC9iPjwvYm9keT48L2h0bWw+
+ ->
+ -> ------=_MIME_BOUNDARY_000_15844--
->
->
-> .
<- 250 Ok
-> QUIT
<- 221 Bye
=== Connection closed with remote host.