— 手動 SMTP トランザクションによる即時判定
メールがまったく届かないにもかかわらず「ポートは開いている」場合、
原因はネットワークではなく SMTP のポリシー / フィルタ段階で拒否されている ケースが非常に多い。
この状況では、メールクライアントで推測するのではなく、
SMTP セッションを直接開き、RCPT 段階で即座に判定する。
SMTP ポート接続(220 バナー確認)
以下のいずれかで接続する。
nc -v <SMTPサーバーIP> <ポート>
または
telnet <SMTPサーバーIP> <ポート>
正常に接続できれば、通常は次のようなバナーが返る。
220 smtp.example.com ESMTP Postfix
220 が表示されない場合、
これは SMTP ポリシーの問題ではなく、
ネットワーク / ファイアウォール / セキュリティグループ / リスニング設定の問題である。
手動 SMTP トランザクションテスト(核心は RCPT TO)
220 が返ったら、以下を 1 行ずつ入力して Enter を押す。
HELO test.com
MAIL FROM:<sender@fake-domain.com>
RCPT TO:<realuser@yourdomain.com>
- HELO test.com
ドメインは任意で問題ない。 - MAIL FROM
テスト用の送信者。何でも可。 - RCPT TO
実際に受信されるべきメールアドレスを指定すること。
そうでなければテストの意味がない。
テスト終了後、セッションを閉じる。
QUIT
結果の判定
| 応答 | 意味 |
|---|---|
| 250 Ok | SMTP サーバーが受信を許可 |
| 550 sender domain not allowed | 送信者ドメインのポリシーにより拒否 |
| 554 Transaction failed | ポリシー / フィルタ(スパム対策・セキュリティモジュール等)による拒否 |
| 421 Service not available | サーバーがセッション自体を拒否(サービス / リソース / ポリシー問題) |
なぜ RCPT TO が最重要なのか
SMTP において、
「受信するか / 拒否するか」の判定は ほぼ RCPT TO 段階で決まる。
DATA まで進む必要はない。
RCPT TO で 250 が返れば受信可能。
ここで拒否される場合、原因は ポリシー / フィルタ / リレー構成にある。
🛠 마지막 수정일: 2025.12.24
💡 お困りですか?
Zabbix、Kubernetes、各種オープンソースインフラの構築・運用・最適化・障害解析が必要であれば、いつでもご連絡ください。
📧 メール: jikimy75@gmail.com
💼 サービス: 導入支援 | 性能チューニング | 障害解析コンサルティング