カテゴリー

アクセスカウンター


since 1996/06/14

Count per Day

  • 2今日の訪問者数:
  • 38昨日の訪問者数:
  • 809月別訪問者数:
  • 0現在オンライン中の人数:

postfixでメールサーバ

 ここのページはpostfixについて詳しく書こうと思ったけど、面倒になって来たので、他のネタは他のブログを見てください。

postfixとは

 ここはpostfixというMTAの設定の備忘録です。MTAとはつまりメールサーバで、インターネット上でメールの受送信の役割を担います(この辺の詳しい説明は省略)。

  • 紹介している本は私が参考にした本です(既にVerが古いかも・・・汗)。

なぜpostfixか

 メールサーバの代名詞から、セキュリティ問題の代名詞のような扱いにされて早数年のsendmailですが、それだけではなく設定の困難さから、今の世の中でも敬遠されている存在には代わりありません。
 過去にqmailの調査と利用もしましたが、qmailは最新バージョン(1.03)が出てからかれこれ8年経過しており、ユーザグループのサポートで何とか生きながらえていると言う状態になっています。「シンプル且つ安全」と言われたqmailですが、既に1.03から追加機能とセキュリティ問題でパッチだらけになってしまい、もやは素人の手出しができない代物になりつつあります。

 そんな中で注目されているメールサーバの一つとして、postfixがあります。性能・設定の容易さなどが特徴でしょう。注目されていること=セキュリティの問題も発見されやすいというのもありますが、公式サイトを見てもわかるとおり、頻繁にバージョンアップされていることから、信頼できるものに見えます。

ソースコードとrpm

 このサイトは、以前からソースコートからコンパイルしでデーモンの構築を推奨してきました。これは、なるべく最新版を入手し運用すべきと考えたからです。
しかし、昨今はバイナリコードによる提供も良くなってきましたので、ここではソースコードからのコンパイルは解説しません(私ももう実際にコンパイルしてないし)。
 FedoraCoreであれば(っていうかそれ以外は知らない)、「yum update postfix」などのコマンドで気軽にアップデートできるので、管理上それでよいと思います。

 そんな訳で、ここではFedoraCore5のバイナリベースで解説しています。それ以外の方はパスなどを読み替えてください。

postfixとDNS

 postfixに関わらず、インターネット上で稼働するメールサーバは通常DNSを参照しています。何を参照しているかというと、相手先ドメインのメールサーバがどこにあるかというのを参照しています。
 たとえば、yahoo.co.jpドメインであれば、以下のコマンドで調べられます。

# dig yahoo.co.jp mx | grep MX | grep -v '^;'
yahoo.co.jp.            384     IN      MX      10 mx2.mail.yahoo.co.jp.
yahoo.co.jp.            384     IN      MX      10 mx3.mail.yahoo.co.jp.
yahoo.co.jp.            384     IN      MX      10 mx4.mail.yahoo.co.jp.
yahoo.co.jp.            384     IN      MX      100 mx5.mail.yahoo.co.jp.
yahoo.co.jp.            384     IN      MX      10 mx1.mail.yahoo.co.jp.

 DNSのMXレコードに、そのドメインのメールサーバが指定されています。
メールサーバが複数ある場合は、MXの次の数字(上記の例では10)が優先順位になります。優先順位が同じサーバは、それぞれ順番に処理していきます。

通常のメールアドレスの「@」の後ろはドメイン名、もしくはサブドメイン名が指定されているので、メールサーバはそれを元にDNSを調べ、送るべきメール(SMTP)サーバを決めています。
 

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

  

  

  

Time limit is exhausted. Please reload CAPTCHA.