9.postfixの設定 その2
ここまでの設定が終了したら postfix を起動するわけですが、設定ファイルに間違いがないか一応確認しておきます。(大抵は単純なタイプミスが多いですが)
>service postfix check
問題がなければ [OK] 表示されます。何らかのエラーが出力される場合はエラー内容に従って設定内容を見直してみてください。
テスト用のアカウントをLDAPデータベースに作成します。
と、ここでひとつ。 phpldapadmin には多数のテンプレートが用意されていますが、これが結構目障りになります。不要なテンプレートは別のディレクトリに移動させておくといいでしょう。
次の画面は初期レコードとして登録したメールアカウント格納用の ou を開いた画面です。
まずはヴァーチャルドメインのレコードをこの配下に作成します。「子エントリーを作成する」をクリックすると作成用テンプレートの選択画面になるので、 Generic: Organisational Unit を選択してドメインを登録します。
作成できると上の画面になります。続けて「子エントリーを作成する」をクリックして追加したテンプレート「Postfix Virtual User Account」を選択します。ここで test@hogehoge.com のアカウント情報を登録するわけですが、とりあえず送受信のテストができればよいので基本情報だけを作成します。入力する項目は、
uid: test
sn: test
cn: test
電子メール: test@hogehoge.com
MailDir: hogehoge.com/test
IMAPMailDir: Maildir:/home/virtualMail/hogehoge.com/test/Maildir
パスワード: パスワード
のようになります。 IMAPMailDir の内容については Dovecotの設定で後ほど説明します。また、パスワードを設定する際に暗号化形式を指定できますが、CentOS5 で提供される openldap パッケージのデフォルトは md5 になっているようです。以前 Fedora で構築したことがあるのですが、その時には ssha が標準だったため ssha で設定したところこちらではエラーになってしまいました。デフォルトの暗号化形式は openldap設定ファイルで変更できますが、変更する必要がなければこのまま md5 を使えば良いでしょう。なお、当サイトで提供しているテンプレートもデフォルトが ssha になっていますので、これを md5 で使用する場合はテンプレートを変更して下さい。
これで送信テストの準備はできましたので送信してみます。
と、ここでトラブル発生です。ソケットエラーで送信できません。いろいろと調べてみたのですが、原因がとんと掴めないまま数時間悩みました。最終的に tcpdump でトレースしたところ25番ポートが受信していないことが解りました。どうやら BlueOnyx でメールを不使用にすると勝手にポートを閉じてしまうようです。smtp の標準ポートを使わないことはセキュリティー的にも悪くないことなのでこの際 smtp ポートそのものを変えてしまうことにしました。
/etc/postfic/master.cf ファイルを書き換えてポート番号を変更しサービスをリロードしたら今度は普通に送信できました。
/etc/postfic/master.cf ファイル
smtp????? inet? n?????? -?????? n?????? -?????? -?????? smtpd
↓
ポート番号????? inet? n?????? -?????? n?????? -?????? -?????? smtpd に書き換える
>service postfix reload