原帖地址在此:http://www.geektalks.cn/article.php?story=20080602125246318
用telnet發(fā)電子郵件的目的很多,我們暫且假設(shè)一番:如果你不幸落入恐怖份子之手,他們只有一臺瘦得不行的電腦,總之除了telnet程序啥都沒有,在恐怖份子去吃羊肉泡饃而疏于照看你的大好時機(jī),你如何發(fā)電子郵件通知外界呢?
當(dāng)然,首先你要有一個支持中繼轉(zhuǎn)發(fā)的SMTP的帳號,幸運的是,現(xiàn)在即使免費的郵箱也會提供這個。
假設(shè)你有一個geekx@126.com的郵箱,密碼是xgeek,則會話如下:(紅色的話是你要說的)
$ telnet smtp.126.com 25 # 25 為標(biāo)準(zhǔn)SMTP端口
Trying 220.181.15.111...
Connected to smtp.126.com (220.181.15.111).
Escape character is '^]'.
220 126.com Anti-spam GT for Coremail System (126com[071018])
helo 126.com # 打個招呼先
250 OK
auth login # SMTP需要認(rèn)證
334 dXNlcm5hbWU6 # 這是個base64編碼的明文,翻譯過來是“username:"
Z2Vla3g= # base64編碼的明文,翻譯過來是“geekx"
334 UGFzc3dvcmQ6 # 這是個base64編碼的明文,翻譯過來是“password:"
eGdlZWs= # base64編碼的明文,翻譯過來是“xgeek"
235 Authentication successful
mail from:<geekx@126.com>
250 Mail OK
rcpt to:<superman@savetheworld.com> # 發(fā)給XXX
250 Mail OK
data #開始寫信
354 End data with <CR><LF>.<CR><LF>
subject:Help!!
#這里空一行再寫正文
The world is under attack,
Terrorists are eating yang—rou—pao—mo...
#寫完信后空一行
. #寫一個句點表示信的結(jié)束
250 Mail OK queued as smtp1,C8mowLC7fAy8GydISdAtCw==.834S2 1210522683
quit
221 Bye #SMTP小姐跟你說再見
Connection closed by foreign host.
那么,如何知道你的用戶名和密碼的base64編碼呢?當(dāng)然是預(yù)先要記在腦子里,如果實在記不下的話,用uuencode翻譯一下吧:
$ echo -n 'geekx' | uuencode -m xxx # -m 指定 base64編碼
begin-base64 664 xxx
Z2Vla3g=
====
好了,在恐怖份子吃完午飯回來之前,你已經(jīng)成功地把信發(fā)給超人啦。