忍者ブログ
シフラ,超絶技巧練習曲,ピアノ,ロマン派のエチュード,かっこいい曲,PC便利系,音楽系,動画系,youtube,blog系など
Blog Infomation





Today / Yesterday
/



 フィードメーター - The J.Mazeppa


 
Monthly
Recent Comment
Infomation
Circle Chat
Access Rank
KeyWord Rank
Weather & \\ vs $

-天気予報コム-

購入時2005/11は106.1
2024/03/29 (Fri) 14:20 / /
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


2011/01/01 (Sat) 20:30 / /
適切なカテゴリーがなかったので勝手に振り分けちゃいました。
あけおめメールをコマンドラインから送ろうと思ったのがきっかけ、日本語打てるのかこれ。
自分はiphoneを使っているので、そこにむけてWindowsのコマンドのプロンプトからセッションをはろうとしたのですが…

$ telnet smtp.softbank.jp 25
接続中: smtp.softbank.jp...ホストに接続できませんでした。
ポート番号 25: 接続に失敗しました

日本ではOP25Bという仕組みが浸透しており、25番ポートにそのまま接続できないことがほとんどです。
このため、Submissionポートと呼ばれる587ポートがよく使われるので、そっちを代用します。
587番ポートではユーザー認証(SMTPAuth)を行っていて、平文のIDとパスワードでは接続が難しいので、事前にBase64というものにエンコードしておく。

例:アカウントがaccountでパスワードがpasswordの場合、UNIXなどで
$ perl -MMIME::Base64 -e 'print encode_base64("account\0account\0password");'
$ perl -MMIME::Base64 -e 'print encode_base64("account");'
$ perl -MMIME::Base64 -e 'print encode_base64("password");'

すると意味不明な文字列が出てくるのでこれをメモっておく。んで接続してみる。

$ telnet smtp.softbank.jp 587
220 iemsa202.mailsv.softbank.jp ESMTP server ready Sat, 1 Jan 2011 18:55:20 +0900
ehlo hoge
250-iemsa202.mailsv.softbank.jp
250-AUTH=LOGIN PLAIN
250-AUTH LOGIN PLAIN
250-PIPELINING
250-DSN
250-8BITMIME
250 SIZE 1048576
auth login
334 VXNlcm5hbWU6
************ <- accountのBase64エンコードの結果
334 UGFzc3dvcmQ6
************ <- passwordのBase64エンコードの結果
235 Authentication successful
Mail From:<j*******@i.softbank.jp>
250 Sender <j*******@i.softbank.jp> Ok
Rcpt To:<j*******@i.softbank.jp>
250 Recipient <j*******@i.softbank.jp> Ok
data <- ここから本文始まりますの意
354 Ok Send data ending with <CRLF>.<CRLF>
From:jm****<j*******@i.softbank.jp>
To:jm<j*******@i.softbank.jp>
X-NewYear:Yes <- 不要、各種ヘッダはここにつける
Subject:Happy New Year
<- 空行、本文とヘッダの間は一行空ける
A Happy New Year 2011 smtp-auth 587
. <- これで本文終わりますの意味
250 Message received: 20110101095723195.HFHQ.25392.iemsa202.i.so02.mailsv.softbank.jp@iemsa202.mailsv.softbank.jp
quit
221 iemsa202.mailsv.softbank.jp ESMTP server closing connection

最初はメールアドレス全体を認証に使用していたが、実際は@の前までで良かった。

結果、次のようなメールが送られてくる。

Return-path: <***********@i.softbank.jp>
Received: from iemsa202.i.softbank.jp by icmsa202.i.softbank.jp with ESMTP id <20110101095838757.DCEI.7788.icmsa202.i.softbank.jp@icmsa202.mailsv.softbank.jp> for <***********@i.softbank.jp>; Sat, 1 Jan 2011 18:58:38 +0900
Received: from hoge ([202.136.207.7] [202.136.207.7]) by iemsa202.i.softbank.jp with ESMTP id <20110101095723195.HFHQ.25392.iemsa202.i.softbank.jp@iemsa202.mailsv.softbank.jp> for <***********@i.softbank.jp>; Sat, 1 Jan 2011 18:57:23 +0900
To: jm <***********@i.softbank.jp>
X-NewYear: Yes
Subject: Happy New Year
Date: Sat, 01 Jan 2011 18:58:38 +0900
Message-ID: <20110101095723195.HFHQ.25392.iemsa202.i.softbank.jp@iemsa202.mailsv.softbank.jp>
X-SB-Service: Virus-Checked

A Happy New yYear 102011 smtp-auth 587

バックスペースを途中で使ってしまったため本文がちょっと化けており、
iphoneのメーラで見ると@si.softbank.jpからのFrom詐称になってしまっていた。

ちょっと難しい話ですが、メールを送信するときにメールソフトが勝手にやってくれていることをコマンドラインでやってみました。

古いですがよさげな参考:
「Submissionポートとスパムメール対策」
「Outbound Port25 Blockingとは」
「SMTPの機能と問題点」

拍手[0回]

PR



▼Comment
   NAME:  TITLE:  COLOR:
   PASS:   URL:  EMAIL:
 COMMENT!: Vodafone絵文字 i-mode絵文字 Ezweb絵文字
     
△▲最上部へ戻る▲△ △▲プラグインへ▲△