2010年10月1日金曜日

Amazon EC2: ホスト名の変更(sendmail)

Amazon EC2 の Linux サーバで sendmail を使用してメールを送信すると
DSN: Data format error
となり受け取ってくれないメールサーバがかなり多いです。
これは EC2 のホスト名が以下にように動的に割り当てられており、sendmail がそのホスト名を使用するからです。
ip-10-128-xx-xx.ap-southeast-1.compute.internal
利用するパブリック IP アドレスを Elastic IP で確保し DNS できちんと MX を設定したとしても、sendmail が使用するホスト名が一致していないのでエラーになります。
これを回避するには以下のようにホスト名を変更して sendmail を再起動します。
echo mail.xxxxx.jp > /etc/hostname
hostname -F /etc/hostname
/sbin/service sendmail restart