AWSのメールサーバ検証①

今日は朝からAWSでメールサーバを立てることを試しています。

というのも、仕事で他の人からAWSでメールを立てて送信しようとしているんだけど、上手く送信できなかったと相談を受け、ちょっと調べてみたら、ただサーバを作るだけではダメそうだと思われたからです。

メールサーバを立てるには、インターネットの最初の頃、自分が社会人になった2001年ごろは、とてもシンプルで、

  • グローバルIPを一つ持っている
  • SENDMAILのようなSMTPプロトコルを話できるサーバを立てている

でした。

なので、自宅で引っ張った、ISDNや、ADSLに割り振られたグローバルIPと、Dynamic DNSサービスを使って、SMTPサーバを作ってみたりしたものです。

それから、インターネットが会社でもどんどん使われるようになり、スパムメールやウイルスメールが増えるとともに、メールについて対策が行われるようになってきました。

いっときは、Outband587という、自分のプロバイダの外にメールを送るときには、宛先ポートを25ではなく587にするといった取り組みもありました。

そして、今は、

  • グローバルIPアドレスを持っている
  • SENDMAIL、qmail、PostfixのようなSMTPプロトコルを話できるサーバを立てている
  • DNSのSPF TXTレコードに登録されている
  • (DNSの逆引きに登録されている)

ということが条件としてあるようです。

この条件は、自分でオンプレでメールサーバを立てるときに設定する内容になるのですが、

AWSの場合には、このオンプレのときに考える条件と、AWSならでは設定および申請を行う必要があるとのこと。

AWSでは、メール送信サーバとしてしようする場合、

  • メールサーバを立てる
  • Elastic IPを割り当てる
  • Elastic IPがAレコードとして登録されている
  • rDNS申請を行う

という流れになりそうです。

とりあえず、メールサーバ、Elastic IPの割り当てまではしました。

メールサーバを立ち上げて、自分のgoogleアドレスにメールをしようとしましたが、エラーとなりました。

まだ設定が足りていないものと見られます。

コマンドでのメール送信テスト

[ec2-user@ip-172-31-101-122 ~]$ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-172-31-101-122.us-east-2.compute.internal ESMTP Postfix
HELO test.com
250 ip-172-31-101-122.us-east-2.compute.internal
MAIL FROM: hoge@test.com
250 2.1.0 Ok
RCPT TO: xxxxxx@gmail.com 
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: test mail

Hello, This is test mail. This is test mail.
.
250 2.0.0 Ok: queued as 45C495C153
QUIT
221 2.0.0 Bye
Connection closed by foreign host.
[ec2-user@ip-172-31-101-122 ~]$

メールのログを見ると、connection timed outや、Network is unreachableとエラーが出ています。

まだ、DNSにAレコードやSPFレコードを設定してませんし、rDNS申請をしていないためと思われます。

ああ
[ec2-user@ip-172-31-101-122 ~]$ sudo tail -f /var/log/maillog
Dec 12 00:47:55 ip-172-31-101-122 postfix/postfix-script[2967]: starting the Postfix mail system
Dec 12 00:47:56 ip-172-31-101-122 postfix/master[2969]: daemon started -- version 2.10.1, configuration /etc/postfix
Dec 12 00:50:56 ip-172-31-101-122 postfix/smtpd[3253]: connect from localhost[127.0.0.1]
Dec 12 00:51:20 ip-172-31-101-122 postfix/smtpd[3253]: 45C495C153: client=localhost[127.0.0.1]
Dec 12 00:51:46 ip-172-31-101-122 postfix/cleanup[3257]: 45C495C153: message-id=<20211212005120.45C495C153@ip-172-31-101-122.us-east-2.compute.internal>
Dec 12 00:51:46 ip-172-31-101-122 postfix/qmgr[2971]: 45C495C153: from=<xxxx@test.com>, size=439, nrcpt=1 (queue active)
Dec 12 00:51:53 ip-172-31-101-122 postfix/smtpd[3253]: disconnect from localhost[127.0.0.1]
Dec 12 00:52:16 ip-172-31-101-122 postfix/smtp[3258]: connect to gmail-smtp-in.l.google.com[142.251.4.26]:25: Connection timed out
Dec 12 00:52:16 ip-172-31-101-122 postfix/smtp[3258]: connect to gmail-smtp-in.l.google.com[2607:f8b0:4023:1404::1b]:25: Network is unreachable
Dec 12 00:52:16 ip-172-31-101-122 postfix/smtp[3258]: connect to alt1.gmail-smtp-in.l.google.com[2607:f8b0:400c:c08::1a]:25: Network is unreachable
Dec 12 00:52:46 ip-172-31-101-122 postfix/smtp[3258]: connect to alt1.gmail-smtp-in.l.google.com[108.177.12.27]:25: Connection timed out
Dec 12 00:52:46 ip-172-31-101-122 postfix/smtp[3258]: connect to alt2.gmail-smtp-in.l.google.com[2800:3f0:4003:c00::1b]:25: Network is unreachable
Dec 12 00:52:46 ip-172-31-101-122 postfix/smtp[3258]: 45C495C153: to=<shigeyuki.metoki@gmail.com>, relay=none, delay=95, delays=35/0.01/60/0, dsn=4.4.1, status=deferred (connect to alt2.gmail-smtp-in.l.google.com[2800:3f0:4003:c00::1b]:25: Network is unreachable)
^C

Aレコードをお名前.comに登録しようとしたらメンテナンス中でしたので、一旦休憩。

追記)

お名前.comにメンテナンス情報が出ていました。

https://www.onamae.com/news/info/21210/

rDNS申請まで今日は行きたいな。

AWSのメールサーバ検証②

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です