私たちのサーバーからのすべてのメールにAmazon SESの使用を開始したいと思います。 PHPホスティング、いくつかのDjango/Python Webアプリ、そして電子メールを送信するいくつかのシステムユーティリティを備えたフリーランスのデザイナーが何人かいます。
したがって、PHPのメール機能、コマンドラインのメールコマンド、およびpythonアプリはすべて、できれば独自の方法で設定することなく、すべて使用できるようにしたいと考えています。
ローカルホストでPostfixを実行し、配信にSESを使用する必要があると思いますが、それを行う方法がわかりません。
Amazonのドキュメントでは、ses-send-email.plスクリプトを呼び出すようにメール転送エージェント(MTA)を設定する必要があると述べています。私はスクリプトを持っていますが、これを達成する方法がわかりません。
私は正しい軌道に乗っていますか?もしそうなら、そのスクリプトを使用するようにPostfixをどのように設定できますか?
AmazonがSESへのSMTPアクセスをリリースしました。私は今朝それのための簡単なハウツーを作りました: http://www.millcreeksys.com/2011/12/14/how-to-configure-your-postfix-server-to-relay-email-through -Amazon-simple-email-service-ses /
SES開発者ガイド からコピーしたアイテムの一部を次に示します。
Ses-send-email.plをPostfixと統合するには:
/etc/postfix
ディレクトリにあります。master.cf
ファイルに次の2行を追加して新しいメールトランスポートを構成し、ファイルを保存します。
aws-email unix - n n - - pipe
flags=R user=mailuser argv=/opt/third-party/Amazon/ses-send-email.pl -r -k /opt/third-party/Amazon/aws-credentials -e https://email.us-east-1.amazonaws.com -f ${sender} ${recipient}
この例については、次の点に注意してください。
mailuser
は、説明のみを目的としています。ses-send-email.pl
スクリプトと認証情報ファイルは、/ opt/third-party/Amazonディレクトリにあります。これらのパラメーターを適切に変更する必要があります。
Master.cfと同じディレクトリにあるmain.cfファイルを開き、次のように変更します。
Default_transport行を探します。
存在する場合は、次のように変更します。
default_transport = aws-email
存在しない場合は、前述の内容で新しい行を追加します。
Postfixサーバーを再起動します。
/etc/init.d/postfix restart
このコマンドは、特定のサーバーではまったく同じでない場合があることに注意してください。これ以降、送信メールはAmazon SES経由で送信されます。Postfixサーバー経由でメールメッセージを送信し、送信先に到着することを確認することで、これをテストできます。メッセージが配信されない場合は、システムのメールログでエラーを確認してください。多くのシステムでは、これは/var/log/mail.log
です
-最近私がAmazon CloudとSESで試したすべてのものをまとめた簡単なブログを作成しました。ここにリンクがあります: http://netwiser.blogspot.com/2011/02/setup-Amazon-ses-to-relay-email-by.html
サーバー上でPython/Djangoアプリをホストしているため、PostfixをPython AWS Perlスクリプトに相当するもの)に接続する方が好ましい場合があります。このガイドに詳細があります:
http://aws.Amazon.com/articles/240550273705565
あるいは、Perlスクリプトを使用したいが(私のように)CPANモジュールがひどく古くなっていることがわかった場合は、オペレーティングシステムのパッケージマネージャーを介して依存関係をインストールする方が簡単な方法です。たとえば、ubuntuでは、次のようにしてこれを行うことができます:
Sudo apt-get install libio-socket-ssl-Perl libxml-libxml-Perl