NO IMAGE

Postfix telnet での動作確認

Postfixに対して、telnetでSMTP接続を行い、簡単な動作確認をしてみます。

telnetで、メールサーバー(Postfix)が待ち受けている25番ポートを指定して接続します。

# telnet localhost 25
Trying ::1…
Connected to localhost.
Escape character is ‘^]’.
220 a21-hp.com ESMTP Postfix
|

Postfixに接続し、画面左端でカーソルが点滅した状態(入力待ちの状態)になります。

220は応答コードで、サービス準備完了という意味があるようです。

次に、手動でSMTPコマンドを打ちます。最初はHello(SMTPコマンドとしてはEHLO)と共に、自マシンのホスト名(FQDN)を送出し、サーバーに接続先を認識してもらいます。

EHLO a21-hp.com
250-a21-hp.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN

応答コード250は、要求されたメールアクションが完了したという意味。

続いて、コマンドラインからメールを送信してみます。
送信元(MAIL FROM:)アドレスを指定。
宛先(RCPT TO:)アドレスを指定。
本文(DATA)を入力。本文の終了は、先頭にピリオド(.)を入力してEnterキーを押します。
・・・これでメールがキューに入るようです。
終了(QUIT)を入力し接続を切断。

MAIL FROM:<info@a21-hp.com>
250 2.1.0 Ok
RCPT TO:<satoh163@a21-hp.com>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Hello Mr.satoh
Test Message
Good bye
.
250 2.0.0 Ok: queued as 173DD300F19
QUIT
221 2.0.0 Bye
Connection closed by foreign host.
#

メールボックス /home/satoh163/Maildir/new にファイルが存在します。

# ls -l /home/satoh163/Maildir/new
-rw——- 1 satoh163 satoh163 429  8月  7 10:30 2013 1375839046.Vfd02I680010M556652.localhost.a21-hp.com

これを表示してみると、送信したメールのようです。

# cat /home/satoh163/Maildir/new/1375838885.Vfd02I68000fM856981.localhost.a21-hp.com
Return-Path: <info@a21-hp.com>
X-Original-To: satoh163@a21-hp.com
Delivered-To: satoh163@a21-hp.com
Received: from a21-hp.com (localhost [IPv6:::1])
by a21-hp.com (Postfix) with ESMTP id 173DD300F19
for <satoh163@a21-hp.com>; Wed,  7 Aug 2013 10:26:56 +0900 (JST)
Message-Id: <20130807012727.173DD300F19@a21-hp.com>
Date: Wed,  7 Aug 2013 10:26:56 +0900 (JST)
From: info@a21-hp.com
To: undisclosed-recipients:;Hello Mr.satoh
Test Message
Good bye
#

ログ /var/log/maillog も確認してみましょう。

# tail /var/log/maillog
Aug 7 10:15:29 localhost postfix/anvil[18545]: statistics: max cache size 1 at Aug 7 10:10:35
Aug 7 10:26:18 localhost postfix/smtpd[18565]: connect from localhost[::1] Aug 7 10:27:27 localhost postfix/smtpd[18565]: 173DD300F19: client=localhost[::1] Aug 7 10:28:05 localhost postfix/cleanup[18569]: 173DD300F19: message-id=<20130807012727.173DD300F19@a21-hp.com>
Aug 7 10:28:05 localhost postfix/qmgr[18517]: 173DD300F19: from=<info@a21-hp.com>, size=362, nrcpt=1 (queue active)
Aug 7 10:28:05 localhost postfix/local[18570]: 173DD300F19: to=<satoh163@a21-hp.com>, relay=local, delay=69, delays=69/0.01/0/0.05, dsn=2.0.0, status=sent (delivered to maildir)
Aug 7 10:28:05 localhost postfix/qmgr[18517]: 173DD300F19: removed
Aug 7 10:28:09 localhost postfix/smtpd[18565]: disconnect from localhost[::1] #

 

・・・その後、宛先(RCPT TO:)を、info@a21-hp.com にして試したら、なぜか配信されず、root@a21-hp.com 宛てに転送されてしまいました。

調べたら、info は予約済みユーザ(予約済みエイリアス?)のようでした。info 宛ては postmaster へ、postmaster 宛は root へ転送される設定なのが原因です。
info で受け取れるようにするには、/etc/aliases を開き、info をコメントアウトします。その後、newaliases コマンドを実行して /etc/aliases.db を更新します。

# vi /etc/aliases
#info: postmaster
# newaliases

これで、satoh163、info どちらも受信可能となりました。

・・・そういえば、前回は、info で受信できなくて挫折したのだった。

・・・原因究明に手間取ったが、なんとか、配信動作の確認ができたので、本日は終了。

・・・次回は、Dovecot(ダブコット)を導入予定。