質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

3回答

28747閲覧

AWS上のPostfixでstatus=sentなのに相手に届かない

moriyama

総合スコア259

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

2クリップ

投稿2015/09/15 07:19

この度、もともとVPSで運用されていたPHPで書かれたWebアプリケーションを、AWS上に移行しました。

そこで、いままでそのWebアプリ(PHP)から送信できていたメールが、特定の相手にのみ正常に届かなくなりました。

Gmail宛では届くのですが、特定の客先のみ、受信していないとの連絡を受けています。

maillogを見る限り、正常に送信されたログが残されています。

Sep 13 03:58:20 ip-172-31-1-40 sendmail[12011]: t8CIwJSq012011: to=xxx@xxx.jp, ctladdr=apache (48/48), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=31076, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (Ok: queued as 0B32A40A8D) Sep 13 03:58:20 ip-172-31-1-40 postfix/smtpd[12012]: disconnect from localhost[127.0.0.1] Sep 13 03:58:20 ip-172-31-1-40 postfix/smtp[12016]: 0B32A40A8D: to=<xxx@xxx.jp>, relay=smtp.xxx.ne.jp[XXX.X.XXX.XXX]:25, delay=0.12, delays=0.02/0/0.05/0.04, dsn=2.6.0, status=sent (250 2.6.0 <20150913T035820+0900-24415-0001> Queued mail for delivery) Sep 13 03:58:20 ip-172-31-1-40 postfix/qmgr[2594]: 0B32A40A8D: removed

なお、SPFやその他のセキュリティを向上するような仕組みは一切導入していなく、PHPでそのまま自サーバからメールが送信されるかたちなので、相手方にスパム判定されている可能性がありますが、この送信の仕組みは移行前と変わっていないので、なぜAWSに移行してこうなってしまったかが不明です。

有識者の方々、お知恵をお貸し頂けるとありがたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

メールログを見る限り、相手先 MTA までは送られていますので、そこから先は調べようがないですね。
Message-Id を伝えて、相手側で調べてもらうことはできませんでしょうか。

ちなみに、EC2 からのメール送信制限については下記URL がまとまっていると思います。
上限緩和申請だけでもやっておいた方がいいと思います。

EC2インスタンスからメール送信のための準備

投稿2015/09/15 09:37

TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

moriyama

2015/09/16 06:04

回答ありがとうございます。 > Message-Id を伝えて、相手側で調べてもらうことはできませんでしょうか。 相手側で調べてもらう方向で話を進めてみようかと思います。 > 上限緩和申請だけでもやっておいた方がいいと思います。 現状、上限を超過するほどのメール送信をする予定はありません(1日0~4通程度)が、 時期を見てAmazon SES経由でのメール配信に切り替える予定です。
moriyama

2015/09/18 10:45

問い合わせてみたところ、postfixのmyoriginのmxレコードが実在しないと、受信拒否される仕様だったようです。 前回のサーバではhostnameがそのままメールのドメインだったため、きちんと動作していましたが、AWSではAWSのドメインが割り振られるため、移行が原因でうまくいっていないようでした。
guest

0

EC2 インスタンスには OP25B のような制限がかけられており、基本的に EC2 インスタンスから直でメールは送れません。

が、100% ブロックされるわけではなく、送れたり送れなかったり(あるいは一定時間内に送れる件数が決まっている?)します。

なので、

Gmail宛では届くのですが、特定の客先のみ、受信していないとの連絡を受けています。

Gmail宛に届いたのはたまたまで、それを「特定の客先のみ届かない」と、勘違いしているのではないでしょうか?


もしくは、EC2 はグローバルアドレスが使いまわされるので(Elastic IP で予約しておかないかぎり)、その IP アドレスが既にブラックリストに入っていて、メールが破棄されてしまっているとか?

投稿2015/09/15 08:28

編集2015/09/15 08:36
ngyuki

総合スコア4514

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

moriyama

2015/09/16 05:55

回答ありがとうございます。 > OP25B のような制限 意図的な制限がかけられている場合、相手方のメールサーバを発見できなくなるので、なんらかのエラーログが吐き出されるとの認識です。 > Gmail宛に届いたのはたまたまで、それを「特定の客先のみ届かない」と、勘違いしているのではないでしょうか? 自社で管理しているメールには確実に届きます。失ったことは一度もありません。 特定の客先のみ、一度も届かないです。よって、たまたまということはないかと思います。 Elastic IPでIPは固定しています。 いずれにせよ、ブロックされた場合はmaillogにその旨が記述されるかと思うのですが、全くそのような記述がありません。 これは正常な挙動でしょうか。
ngyuki

2015/09/16 07:48

回答の最後に記載の通り、EC2 の IP アドレスがブラックリストに入っており、その特定の客先のメールサーバが、メールを受信して破棄(受信は成功しているが破棄)している可能性はないでしょうか
moriyama

2015/09/16 10:51

なるほど。 客先では詳細なログが取れないとのことだったので、管理しているサーバ会社に問い合わせてみます。
guest

0

以下のページにあるように、Elastic IPで取得したIPがその時点でブラックリストに
載っている可能性は無いでしょうか?

Amazon EC2 Eメール送信ベストプラクティス | Developers.IO

AWSがElastic IPおよびPublic IPをストックし様々なAWSユーザーに割り当てることから、新規に取得するElastic IPおよびPublic IPが最初からRBLに載っている可能性が高いです

投稿2015/09/16 06:10

eripong

総合スコア1546

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

eripong

2015/09/16 06:22

一応、これならAWSにした途端に送信できなくなった事は説明できます。
eripong

2015/09/16 07:53

相手先のサーバでブラックリストに載っていて、破棄されている可能性はどうでしょうか? 、、、ngyukiさんの回答と同じでしたね。
moriyama

2015/09/16 10:51

客先では詳細なログが取れないとのことだったので、管理しているサーバ会社に問い合わせてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問