このページはメールサーバー(MTA)として有名なPostfixのインストールから設定方法をご紹介しています。

vinelinuxで自宅サーバー公開ロゴ
サイトマップ

>>Linuxで自宅サーバー公開(TOP) >>メールサーバー(Postfix)の設定


メールサーバー(Postfix)の設定


Postfix(MTA)の設定手順



※見たい項目をクリックすると説明にジャンプします。


 はじめに  

 メールサーバーを構築するためには、ダイナミックDNSサイトがMXレコードに対応
 している必要があります。お使いのダイナミックDNSサイトでMXレコードの設定方法
 をご確認ください。
 このページでは、VineLinux + DDO!jpを利用したサイト構築を例に説明しています。
 環境に合わせて読み替えてください。
 ※ちなみにDDO!jpの場合は、ドメイン名と同じ名前でMXレコードが登録されています。


  ▲Postfix(MTA)の設定手順へ


 Postfixとは?  
 インターネットで電子メールを使用する場合、にSMTP( Simple Mail Transfer Protocol )と
 POP( Post Office Protocol )といったプロトコルを使用します。
 最近では、SMTPとして「sendmail」に変わり「qmailやPostfix」といったMTA( Message
 Transfer Agent )が人気をあつめています。
 ※後発で開発されているため、sendmailの良い部分が取り込まれています。
 ここでは、sendmailとの互換性を確保しつつ、安定性に定評のあるPostfixを使用した
 メールサーバーの構築方法をご紹介します。
 ちなみにVineLinuxでは標準でインストールされています。
 
 Postfixのインストール
 ・aptコマンドによりPostfixのインストールを行います。
[root@]# apt-get install postfix
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
* postfix は既に最新バージョンがインストールされています
0 個のアップグレードパッケージ, 0 個の新規パッケージ, 0 個の削除/リプレースパッケージ, 0 個の保留パ
ッケージがあります。
[root@]#
 すでに最新版がインストールされている場合は、上のようなメッセージがでます。
 インストールが必要な場合は、インストールを行ってください。
 ※インストール完了後にアップデートを忘れずに行いましょう。


  ▲Postfix(MTA)の設定手順へ


 ドメインの登録

 ・/etc/sysconfig/networkファイルにダイナミックDNSで登録したドメイン名を登録
 ※ここでは、ダイナミックDNSでの登録ドメインを"example.ddo.jp"として説明します。

 ・viエディタでPostfixの/etc/sysconfig/networkファイルを開きます。
[root@]# vi /etc/sysconfig/network     [return]
-----<networkファイルの内容>------

NETWORKING=yes
HOSTNAME=example.ddo.jp

---------------------------------

 "HOSTNAME="に続いてFQDNでホスト名を指定します。

 ・上記修正を反映させる為、ネットワークの再起動を行います。
[root@]# /etc/rc.d/init.d/network restart     [return]
 
 以上でドメインの登録は終了です。


  ▲Postfix(MTA)の設定手順へ


 Postfixの設定ファイル(main.cf)の編集および設定
 設定する目標を以下とします。
 ※外部ネットワークからのメール送信にはSMTP-AUTHなどの導入が必要です。
  (必要かどうか検討中です....)

 <目標とする設定>

 ・メールサーバーのホスト名:example.ddo.jp
 ※DDO!jpでは登録ドメインと同じドメインでMXレコードに登録されます。

 ・内部ネットワーク(LAN内)からのみメール送信を許可。

 ・内部ネットワーク宛てのメールを転送可能とする。

 ・基本的な第三者不正中継のテストにパスする。
  今回は、mail-abuse.orgでテストを実施。


 
 それでは、/etc/postfix/main.cf(Postfixの設定ファイル)を編集します。
 編集ファイルは長いのですが、ほとんどがコメントです。
 viエディタでは"/検索文字"を使うと便利です^^

 以下の1〜4の項目を設定(確認)します。

 1.サーバーのホスト名とドメイン名を登録(DDO!jp登録ドメインを記入)

 </etc/postfix/main.cfファイルより抜粋(1)>
mydomain = example.ddo.jp
myhostname = example.ddo.jp

 
 2.メールの配送を許可するドメイン名を登録

 </etc/postfix/main.cfファイルより抜粋(2)>
mydestination = $myhostname, localhost.$mydomain, $mydomain


 
 3.内部ネットワークのアドレスを登録(登録されたアドレスからのメールは無条件に配送)

 </etc/postfix/main.cfファイルより抜粋(3)>
mynetworks = 192.168.0.0/24, 127.0.0.0/8


 
 4.第三者不正中継対策

 </etc/postfix/main.cfファイルより抜粋(4)>
#HELOコマンドで応答のないホストの接続拒否
smtpd_helo_required = yes
#不正中継の対策
allow_percent_hack = yes
swap_bangpath = yes
#VRFYコマンドの禁止
disable_vrfy_command = yes
#SMTPの受信者を制限
smtpd_client_restrictions = permit_mynetworks, reject_unknown_client, permit
#転送可能なドメイン名の確認
smtpd_recipient_restrictions = permit_mynetworks, reject_sender_login_mismatch, check_relay_domains
#正しいホスト名を通知してきたホストのみ接続許可
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname, reject_unknown_client, permit
#送信アドレスが存在しない場合はメール受信を拒否
smtpd_sender_restrictions = reject_unknown_sender_domain, reject_sender_login_mismatch
#不正なホストに対してETRNコマンドの使用を禁止
smtpd_etrn_restrictions = permit_mynetworks, reject_invalid_hostname


 ※この設定で完璧ではありません。(環境に合わせて設定してください^^;)
  不正中継は怖いですから.....

 
 ・上記修正を反映させる為、Postfixの再起動を行います。
[root@]# /etc/rc.d/init.d/postfix restart     [return]

 以上の設定でPostfixの設定は終了です。


  ▲Postfix(MTA)の設定手順へ


 Postfixの動作確認
  さっそくサーバ(MTA)上でメールの送受信を確認してみましょう。
  ※POPサーバを設定しないと、Windowsなどのメーラーではメールを受信できません。

  ・サーバ(MTA)でメールを送信する。(ターミナル上で以下コマンドを実行)
[root@]# mail ****(ユーザー名)
Subject:
test   ←題名を入れる
test        ←本文を入れる
.          ←本文終了(”."を入力する)
Cc:        
←Cc:が必要なら入れる
  ※サーバ上に実在するユーザ宛に送信してください。

  ・サーバ(MTA)でメールの受信を確認する。(ターミナル上で以下コマンドを実行)
[*****@]$ mail
Mail version 8.1 6/6/93. Type ? for help.
"/var/spool/mail/ユーザ名": 1 messages 1 new ←メールが届いています!
>N 1 ユーザ名@ドメイン名 Fri Oct 7 12:26 13/417 "test"
& quit  ←quit終了します
  メールが届いていれば、MTA上でのメール送受信が正常です。

  但し、Postfixは奥が深いのでこれからいろいろ勉強して、さらにスキルアップに
  努めていこうと思います。^^;


 Windowsなどのメールソフトを使用する場合はPOPサーバがの設定が必要です。

  >>qpopperの設定へ
 

  ▲Postfix(MTA)の設定手順へ



 Copyright(c) 2005, All Rights Reserved.