CentOS 6.6:メールサーバー構築 (バーチャルドメイン&スパムフィルター対応)

CentOS 6.6 内に、オープンソース「PostfixAdmin+Postfix+Dovecot2+ClamAV+SpamAssassin+Amavisd-new+SSL/TLS」構成にて、バーチャルドメイン&スパムフィルター対応のメールサーバーを構築します。(2015/06/28作成)

◆構築要件

  • バーチャルドメインで運用。
  • アカウントは「PostfixAdmin」にて管理。
  • メールサーバーとの通信は「SSL/TLS」を利用。
  • アンチウィルス「ClamAV」、スパムフィルタ「SpamAssassin」を利用。
  • 0.環境

    1.PostfixAdminの設定

    バーチャルドメインメールを保存する「ディレクトリ」「ユーザー」の作成します。

    PostfixAdminで使用するDB、Userの作成、データベースを「postfix」ユーザーを「postfix」で作成します。

    2.Postfixの初期設定

    下記コマンドで「mysql」と表示されているのでMySQLに対応していることが確認できます。

    PostfixからMySQLへアクセスする為のファイルを作成します。

    3.SSL/TLSの設定

    サーバー用秘密鍵・自己証明書の作成(SSL/TLS用)

    サーバー用証明書有効期限を1年から10年に変更

    サーバー用秘密鍵・自己証明書の作成

    サーバー用秘密鍵からパスワード削除

    サーバー用秘密鍵の場所を変更

    4.Postfixの設定ファイルを編集(main.cf)

    新規ユーザーが追加されたらホームディレクトリに Mairdir/ を自動で作成されるようにします。

    5.Postfixの設定ファイルを編集(master.cf)

    ルックアップテーブルの作成

    設定に誤りがないかチェック(なにも表示されなければOKです)

    6.dovecot2の設定

    dovecot2の設定ファイルは「/etc/dovecot/dovecot.conf」であるが、「/etc/dovecot/conf.d/」直下に「.conf」ファイルを作成すれば自動読み込みされる。「00-base.conf」というファイルを作成し設定します。

    次に「10-auth.conf」を編集します。

    次に「MySQLへの接続ファイル」を作成します。

    バージョン1では protocols に「imaps」や「pop3s」と記述できたが、SSL/TLSを使うか否かは次の「10-master.conf」で設定します。

    ※暗号化をしない imap と pop3 を使えないようにするため「port = 0」と設定する。Dovecot SASL ライブラリの認証ソケットファイルを指定する。

    認証方式の設定

    ※平文パスワードを許可していますが、SSL/TLSで暗号化されますので問題ない。

    SSL/TLSの有効化とサーバ証明書と秘密鍵を指定

    メールボックスの場所を指定

    ログの出力先を変更

    ログの出力先作成しておきます

    認証ソケットファイルが作成されているのを確認します

    7.Dovecotログの設定

    最後自動起動の設定

    8.ClamAV設定

    ウイルス定義ファイル更新機能を有効化と、定義ファイルの更新します。

    起動と自動起動設定

    9.ClamAVとPostfixの連携

    10.Amavised-new設定

    起動と自動起動設定

    11.SpamAssassin設定

    起動と自動起動設定

    rootユーザーでSpamAssassin設定ファイル最新化スクリプト作成

    実行権限追加

    一度実行して、最新にする

    cronに登録する

    11.procmailの設定ファイルを新規作成する

    12.ログの設定(procmail)

    13.メールディレクトリの自動作成・削除

    PostfixAdminを使ってアカウント追加・削除する際に、ディレクトリを自動で作成・削除するようにスクリプトを作成する。

    メールボックス作成・削除スクリプト用ディレクトリ作成

    PostfixAdminに有るスクリプトをコピー

    削除したメールボックスを保存するディレクトリを作成

    スクリプトの編集(メールボックス作成)

    スクリプトの編集(メールボックス削除)

    スクリプトの編集(ドメイン削除用)

    実行権限追加

    daemon(httpd実行ユーザー)がsudo出来るように設定する

    14.再起動して確認

    15.ファイヤーウォール開放ルール

    以上

    Pocket

    コメントを残す