Postfixをインストールしてメール送信してみる

投稿者: | 2013/08/14

Linuxでメール送信する場合、mailコマンドやsendmailコマンドから送るかと思います。
また、PHPなどでお問合せフォームを作成していて、お問合せ完了後にメール送信することもあります。
これらのメール送信する機能のことをMTA(Message Transfer Agent)といいます。
メール送信するだけならLinuxをインストールした時に、一緒にインストールされてMTAをそのまま使えば良いかと思いますが、インストールされていなかったり、空メールを受信してプログラムを実行したいなどの場合には、MTAをインストール、設定しなければなりません。

今、使われているMTAは、sendmail, qmail, postfix などがあります。
sendmailやqmailは昔からリリースされており、使っている人も多いかと思いますが、設定がとても複雑で初めてメールサーバを構築する人にとってはハードルが高すぎます。
それに比べて、Postfixは比較的最近開発されたMTAでで、簡単な設定で使うことができます。

それぞれの比較はこちらの記事が参考になります。
sendmail、qmail、Postfixのそれぞれの良さと違い | メール配信/メールセキュリティのHDE技術陣によるコラム

今日は、Postfixをインストールして実際にメール送信してみます。

Postfixのインストール

まずは、Postfixがインストールされているか確認してみましょう。

「postfix・・・」 が表示されればPostfixがインストールされていることになります。
もし、表示されていなければインストールされていないので、yumでインストールすることになりますが、
先にsendmail等がインストールされていて、動いているかもしれないのでそちらを止めます。

Postfixをインストールします。

インストールしたPostfixのバージョンを確認してみましょう。

MTA切り替え設定、自動起動の設定

Postfixのインストールが完了したら、Linux上で使用しているMTAをPostfixに設定します。

2を入力してPostfixをデフォルトのMTAに設定します。
もう一度、alternativesコマンドで設定すると、選択が変わっているのが分かります。

次に自動起動などの設定を行なっていきます。
sendmail等が入っている人は、自動起動を解除します。

Postfixの設定

Postfixでは主に、/etc/postfix 以下にあるファイルを編集します。
ここでは、ただ送信するだけなので設定をしません(次回以降、設定していきます)。

メール送信テスト

実際にメール送信してみます。
ここではメール受信にsendmailコマンドを使います。

メールアドレス(foo@foo.com)にメールが送信されているか確認してみてください。
来ていない人は迷惑メールフォルダに振り分けられているかと思いますのでそちらも確認してみてください。

また、実際にメールが送信されたかログからも確認してみます。

「status=sent」になっていれば、メールは送れています。
送れていない場合は、「status=bounced」(送信できない)、「status=deferred」(送信できないので後で再送する)になっていると思いますので、ログから原因を探ってください。

最後に

Postfixをインストールしてメール送信をしてみました。
Postfixを使って、メールのリレー設定や、空メールなどのプログラム実行、複数メールアドレスの受信(Virtual domain)も行えますので少しずつ記事を載せていければと思います。

Postfixをインストールしてメール送信してみる」への1件のフィードバック

  1. ケロヨン

    こんにちは。
    FC2VPSを借りてPostfixインストールしたもののメールの送信が出来ず困っていたところ、こちらの情報がとても役に立ちました。
    結局はmain.cfのスペルミスとSASL認証設定のミスだったのですが、サーバー構築初心者には障害の切り分けで参考になりました。ありがとうございます。
    サーバーはペーペーロンチーノな初心者でしてこれからも参考にさせて頂きます。(いずれはスマホからメール送信でサーバーの動きを変えるようなところまで行けたらと思っています)
    余談ですが嫁Authは私もツボりました。乙かれさまです!

    返信

コメントを残す

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

*