「Azure で postfix のインストールを試す」
https://qiita.com/nanbuwks/items/38b54aaf8c3ecfdbb3cc
「Azure/Ubuntu にインストールした postfix / dovecot を Maildir 対応にする」
https://qiita.com/nanbuwks/items/10e6dd1224ce0c3f76af
で設定した postfix は、 SMTP サーバとして動いています。
今回は telnet を使って SMTP でメールを送ってみます。
本来では、ここまでの設定で外部から SMTP 接続を受け付けるのですが、Azure では 標準の SMTP ポートであるポート25 の通信ができないようになっているので、サーバに ssh でログインし、サーバから localhost を指定して接続します。
環境
- Ubuntu 22.04
- Postfix
操作
あらかじめ、 ssh でサーバにログオンしておきます。
ポート25で localhost にアクセスします。
$ telnet localhost 25
postfix より返答が還ってきます。
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net ESMTP Postfix (Ubuntu)
HELOコマンドで自分のホスト名を送ります。ここのホスト名は適当でも通ります。
HELO localhost
250 が返答として返ってきます。
250 test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net
後ろに付いているホスト名は接続してきたホスト名を逆引きした名前です。
さて、MAIL コマンドで送信手順を開始します。
MAIL FROM:azureuser
ステータスコード250が返ってきます。200番台が正常終了のコードです。
250 2.1.0 Ok
相手先を指定します。
RCPT TO:example
ステータスコード250が返ってきます。
250 2.1.5 Ok
DATAコマンドで本文送信します。
DATA
以下のように返事が返ってくるので
354 End data with <CR><LF>.<CR><LF>
メール本文を入力します。ピリオドだけの行があると終了します。
Hello SMTP by telnet.
.
メールが受け付けられました。
250 2.0.0 Ok: queued as 9D4C63F4AF
SMTPセッションを終了します。
QUIT
サーバから以下のような返事が返ってきて接続が閉じられます。
221 2.0.0 Bye
Connection closed by foreign host.
メール確認
example ユーザでメールが届いているかどうか確認します。
$ mail
"/home/example/Maildir": 5 messages 5 unread
>U 1 Ubuntu 10/634
U 2 Ubuntu 10/632
U 3 Ubuntu 10/634
U 4 Ubuntu 10/634
U 5 azureuser@test-azu 11/679
? 5
Return-Path: <azureuser@test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net>
X-Original-To: example
Delivered-To: example@test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net
Received: from localhost (localhost [127.0.0.1])
by test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net (Postfix) with SMTP id 9D4C63F4AF
for <example>; Sun, 9 Jul 2023 14:16:07 +0000 (UTC)
Message-Id: <20230709141613.9D4C63F4AF@test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net>
Date: Sun, 9 Jul 2023 14:16:07 +0000 (UTC)
From: azureuser@test-azure-gen.ugx1l5hl2pbu5oitg4vrqao0jd.phxx.internal.cloudapp.net
Hello SMTP by telnet.
? q
Saved 1 message in /home/example/mbox
Held 4 messages in /home/example/Maildir
無事届いているようです。