11.メールを送ろう

メールを送信する場合は、前項で作成したアカウントにドメインを付加した形がメールアドレスとなる。つまり、メールアドレスは user1@test-sample.jp になる。
メールを送信するには、通常は、メールクライアントソフトを使っていると思うが、メール送信の動作を理解するために、コマンドプロンプトを開き、Telnetコマンドで直接SMTPサーバーに接続することもできる。Telnetコマンドを使って、実際に送信テストを行ってみよう。

コマンドプロンプトからTelnetでメール送信
Telnet 192.168.0.103 smtp><CR>
220 test-sample.jp E-POST ESMTP Receiver (4.xx)......
Helo<CR>
250 test-sample.jp Hello [xxxx.xxx.xxxx.xxxx], pleased to meet you
mail from: <user1@test-sample.jp><CR>
250 <user1@test-sample.jp>... Sender ok.
rcpt to: <user1@test-sample.jp><CR>
250 <user1@test-sample.jp>... Recipient ok.
data<CR>
354 Start mail input;id <BXXXXXXXXXX> end with <CRLF>.<CRLF>
subject: test<CR>
from: <user1@test-sample.jp><CR>
to: <user1@test-sample.jp><CR>
<CR>
test.<CR>
.<CR>
250 Message received ok.
quit<CR>
221 test-sample.jp closing connection.

下線の箇所がコマンドプロンプトから入力する内容。<CR>は、<Enter>キー入力を表す。
←自分で入力する内容
→SMTPサービスが応答を返す…[1]
←自分で入力する内容


←user1@・・から
→送信者OK…[2]
←user1@・・あてへ
→送信先OK…[3]
←ヘッダと本文書き始め


←ヘッダ行
 :
 :
←ヘッダと本文の区切り
←本文
←データ終わりのピリオド
→メール受け付け
←接続終了

動作解説

[1] もし、サーバーからかなり時間が経ってから、応答メッセージ 220 test-sample.jp .... が表示されるようであれば、windows\system32\drivers\etc\ 内にある "hosts" ファイルをメモ帳で開き、192.168.0.103 <tab > test-sample.jp と記述する。(※ <tab >部分は[Tab]キーを入力)
設定したドメイン名とIPアドレスをhostsファイルに記述しておくと、応答レスポンスが早くなるケースがある。
[2] もし、ここでメッセージ 550 Please, mail from a valid e-mail address. が返ってきた場合は、登録されていないアカウントで送ろうとしているため、SMTPサーバーは送信することを拒絶している。
入力したメールアドレスに間違いがないか確認してみよう。
[3] ここでは、作成したメールアドレス、つまり、自分から自分へ送信しよう。
これで、作成したメールアドレスのメールボックスに正しく送れるかを確認する。

これで、とりあえずメールは送れるようになった。
念のために外部ドメイン宛にも、メールを送れるか、試してみよう。このとき、外部ドメイン宛によって、メールが送れたり、反対に送れなかったりするときは、DNSサーバーの指定に問題がある場合がほとんどである。
「E-Post Mail Control」の「サーバー設定」タブを開き、「DNSサーバー」欄に正しいDNSサーバーのIPアドレスが設定されているか、確認しよう。

それでも外部ドメイン宛にメールが送れない場合

それ以外の問題で送れない場合は、いくつかの原因が考えられる。
[ヘルプ] → [よくある質問] → [SMTP関連] → [外部へメールが配送がされない]を読み、最初の項から順番に確認して行こう。

単にメールを送るだけなら、ここまでで完了だが、外部にこのままメールサーバーを公開すると、不正中継の踏み台になる可能性が大いにあるので、セキュリティを高めた設定を行って公開する必要がある。そのための設定がSMTP認証だ。



書籍『E-Post Mail Server完全ガイド』ご案内