オープンソース

一覧へ

5. 設定詳細

5.1. messasy.conf

messasy.confで使用する設定項目について解説します。

messasy.confの書式は以下の通りです。

[設定項目]=[設定値]

先頭が#の行は、コメント文として扱われます。

5.1.1. 共通設定項目(動作一般)

  • ListenIP(デフォルト:127.0.0.1)

    MessasyがListenするIPアドレスを指定します。
    管理インタフェースのRELOADコマンドで反映することができません。

  • ListenPort(デフォルト:20026)

    MessasyがListenするポート番号を指定します。
    管理インタフェースのRELOADコマンドで反映することができません。

  • Timeout(デフォルト:10)

    Milter通信のタイムアウト秒数を設定します。
    管理インタフェースのRELOADコマンドで反映することができません。

  • SyslogFacility(デフォルト:local1)

    messasyがログ出力の際に使用するsyslogファシリティを指定します。

  • ErrorAction (デフォルト:tempfail)

    messasyでエラーが発生し保存処理が中断した場合に、MTAがクライアントに対して行なう処理を指定します。
    指定できる値は以下の通りです。
    - accept: メールを受け付ける
    - tempfail: メールの受け取りを拒否する
    - tempfail: 一時エラーを通知する

  • CommandPort (デフォルト:17777)

    messasyが管理インタフェース用にLISTENするポート番号を指定します。
    管理インタフェースのRELOADコマンドで反映することができません。

  • AdminPassword (必須) (デフォルト:なし)

    messasyの管理インタフェースへ接続する際に必要となるパスワードを指定します。

  • CommandMaxClients (デフォルト:16)

    管理インタフェースに同時に接続が可能なクライアントの最大数を指定します。

  • CommandTimeOut (デフォルト:300)

    管理インタフェースとクライアントの間で無通信の状態が継続した場合に、タイムアウトとして接続を切断するまでの秒数を指定します。

設定例は以下の通りです。

ListenIP=127.0.0.1
ListenPort=20026
TimeOut=10
SyslogFacility=local1
ErrorAction=tempfail
CommandPort=17777
AdminPassword=admin
CommandMaxClients=16
CommandTimeOut=300

5.1.2. 共通設定項目(メール保存判定関連)

  • SavePolicy (デフォルト:both)

    From, Toのどちらのアドレスを、メール保存の判定に使用するか指定します。
    指定できる値は以下の通りです。
    - both: From, Toのいずれも判定対象とする
    - onlyfrom: Fromアドレスのみを判定対象とする
    - onlyto: Toアドレスのみを判定対象とする
    - none: From, Toのいずれも判定対象としない
    noneを指定した場合、メールの保存は行われません。

  • MyDomain (必須) (デフォルト:なし)

    メールの保存対象とするドメイン名を指定します。
    SavePolicyで判定対象としたメールアドレスのドメイン部が、
    指定したドメインと一致した場合に、メールの保存対象と判定されます。

  • SaveMailAddress (必須) (デフォルト:なし)

    メールの保存対象と判定するメールアドレスのパターンを指定します。

  • SaveIgnoreHeader (デフォルト:なし)

    ヘッダーのパターンを指定します。
    パターンにマッチするヘッダがメールに含まれていた場合、メールの保存を行ないません。

  • DefaultDomain (デフォルト:localhost.localdomain)

    ローカルアドレスを処理する際に付加するドメイン名を指定します。
    メールアドレスにドメイン名がない(アドレスに"@"が含まれていない)場合はこのドメイン名を付加し、メールの保存判定処理およびメール保存処理に利用します。

設定例は以下の通りです。

SavePolicy=both
MyDomain=example.com
SaveMailAddress=@example.com
SaveIgnoreHeader=X-TEST: *
DefaultDomain=example.com

5.1.3. 共通設定項目(LDAP関連)

  • LdapCheck (デフォルト:0)

    保存対象アドレスの判定処理に、LDAPの検索を併用するかを指定します。
    0を指定すると、LDAPによる判定処理は行なわれません。

  • LdapServer (デフォルト:127.0.0.1)

    LDAPサーバのIPアドレスを指定します。

  • LdapPort (デフォルト:389)

    LDAPサーバのポート番号を指定します。

  • LdapBindDn (デフォルト:なし)

    LDAPサーバへのバインドに使用するDNを指定します。
    LdapBindPasswordとともに指定されない場合、anonymousバインドを行ないます。

  • LdapBindPassword (デフォルト:なし)

    LDAPサーバへのバインドに使用するパスワードを指定します。
    LdapBindDnとともに指定されない場合、anonymousバインドを行ないます。

  • LdapBaseDn (デフォルト:なし)

    LDAP検索を行なう際のベースDNを指定します。

  • LdapMailFilter (デフォルト:(mail=%M))

    LDAP検索に使用する検索フィルタを指定します。
    「%M」が含まれる場合、メールアドレスに置換されます。

  • LdapScope (デフォルト:subtree)

    LDAP検索のスコープを指定します。

  • LdapTimeout (デフォルト:5)

    LDAPサーバとの通信タイムアウトを指定します。

設定例は以下の通りです。

LdapCheck=1
LdapServer=127.0.0.1
LdapPort=389
LdapBindDn=cn=Admin,dc=example,dc=com
LdapBindPassword=secret
LdapBaseDn=dc=example,dc=com
LdapMailFilter=(mail=%M)
LdapScope=subtree
LdapTimeout=5

5.1.4. maildropモジュールを利用する場合の設定項目

  • MailDir (必須) (デフォルト:なし)

    メール保存を行なうベースのディレクトリを指定します。

  • MailFolder (必須) (デフォルト:なし)

    メール保存フォルダのパスを、Maildir形式のフォルダ構成に対応したフォーマットで指定します。

  • DotDelimiter (デフォルト:,(カンマ))

    MailFolderに%M, %Dが含まれる場合、メール保存対象アドレスに含まれる「.(半角ピリオド)」を置き換える文字を指定します。
    IMAPでメールを参照する場合、フォルダ名のドットは、フォルダの階層構造を表すという特殊な意味を持ちます。
    このため、Messasyでは意図せずIMAPフォルダの階層が深くなることを防ぐために、ドットをDotDelimiterの値に変換しています。

  • SlashDelimiter (デフォルト:_(アンダーバー))

    MailFolderに%M, %Dが含まれる場合、保存対象アドレスに含まれる「/(半角スラッシュ)」を置き換える文字を指定します。
    フォルダ名にスラッシュが含まれた場合、メール保存をしているディレクトリの階層が意図せず深くなります。
    この挙動を防ぐため、MessasyではスラッシュをSlashDelimiterの値に変換しています。
    なお、Messasyでは、MailFolder設定に設定したディレクトリ配下に、動的に深い構造のディレクトリを作成する機能はありません。

設定例は以下の通りです。

MailDir=/var/messasy/Maildir
MailFolder=.%y.%m.%d
DotDelimiter=,
SlashDelimiter=_

5.1.5. gzipモジュールを利用する場合の設定項目

  • GzipMailDir (必須) (デフォルト:なし)

    メール保存を行なうベースのディレクトリを指定します。

  • GzipMailFolder (必須) (デフォルト:なし)

    メール保存フォルダのパスを、Maildir形式のフォルダ構成に対応したフォーマットで指定します。

  • GzipDotDelimiter (デフォルト:,(カンマ))

    GzipMailFolderに%M, %Dが含まれる場合、メール保存対象アドレスに含まれる「.(半角ピリオド)」を置き換える文字を指定します。
    IMAPでメールを参照する場合、フォルダ名のドットは、フォルダの階層構造を表すという特殊な意味を持ちます。
    このため、Messasyでは意図せずIMAPフォルダの階層が深くなることを防ぐために、ドットをGzipDotDelimiterの値に変換しています。

  • GzipSlashDelimiter (デフォルト:_(アンダーバー))

    GzipMailFolderに%M, %Dが含まれる場合、保存対象アドレスに含まれる「/(半角スラッシュ)」を置き換える文字を指定します。 | フォルダ名にスラッシュが含まれた場合、メール保存をしているディレクトリの階層が意図せず深くなります。 | この挙動を防ぐため、MessasyではスラッシュをGzipSlashDelimiterの値に変換しています。 | なお、Messasyでは、GzipMailFolder設定に設定したディレクトリ配下に、動的に深い構造のディレクトリを作成する機能はありません。 |

  • GzipCommand (デフォルト:/usr/bin/gzip)

    gzip圧縮に利用するコマンドを指定します。

設定例は以下の通りです。

GzipMailDir=/var/messasy/Maildir
GzipMailFolder=.%y.%m.%d
GzipDotDelimiter=,
GzipSlashDelimiter=
GzipCommand=/usr/bin/gzip

5.1.6. enczipモジュールを利用する場合の設定項目

  • EncZipMailDir (必須) (デフォルト:なし)

    メール保存を行なうベースのディレクトリを指定します。

  • EncZipMailFolder (必須) (デフォルト:なし)

    メール保存フォルダのパスを、Maildir形式のフォルダ構成に対応したフォーマットで指定します。

  • EncZipDotDelimiter (デフォルト:,(カンマ))

    EncZipMailFolderに%M, %Dが含まれる場合、メール保存対象アドレスに含まれる「.(半角ピリオド)」を置き換える文字を指定します。
    IMAPでメールを参照する場合、フォルダ名のドットは、フォルダの階層構造を表すという特殊な意味を持ちます。
    このため、Messasyでは意図せずIMAPフォルダの階層が深くなることを防ぐために、ドットをEncZipDotDelimiterの値に変換しています。

  • EncZipSlashDelimiter (デフォルト:_(アンダーバー))

    EncZipMailFolderに%M, %Dが含まれる場合、保存対象アドレスに含まれる「/(半角スラッシュ)」を置き換える文字を指定します。
    フォルダ名にスラッシュが含まれた場合、メール保存をしているディレクトリの階層が意図せず深くなります。
    この挙動を防ぐため、MessasyではスラッシュをEncZipSlashDelimiterの値に変換しています。
    なお、Messasyでは、EncZipMailFolder設定に設定したディレクトリ配下に、動的に深い構造のディレクトリを作成する機能はありません。

  • EncZipCommand (デフォルト:/usr/bin/zip)

    パスワード付きZIP圧縮に利用するコマンドを指定します。

  • EncZipPassword (必須) (デフォルト:なし)

    パスワード付きZIP圧縮で設定するパスワードを指定します。

設定例は以下の通りです。

EncZipMailDir=/var/messasy/Maildir
EncZipMailFolder=.%y.%m.%d
EncZipDotDelimiter=,
EncZipSlashDelimiter=_
EncZipCommand=/usr/bin/zip
EncZipPassword=secret

5.1.7. ldaモジュールを利用する場合の設定項目

  • LDACommand (必須) (デフォルト:なし)

    ローカル配送エージェントのプログラムパスを引数を指定します。
    %mを記載するとプログラム実行時に保存対象のメールアドレスに置換されます。

設定例は以下の通りです。

LDACommand=/usr/libexec/dovecot/deliver -d %m

5.2. module.conf

module.confの書式は以下の通りです。
先頭が#の行はコメント文として扱われます。

LoadModule   [モジュール名]  [ライブラリファイルパス]

各項目の説明は以下の通りです。

項目名 説明
LoadModule 行頭には必ずこの文字列を記載します。
モジュール名 モジュール名を記載します。
ライブラリファイルパス モジュールのライブラリファイルの場所を絶対パスで記載します。

設定例は以下の通りです。

LoadModule maildrop /usr/local/lib/messasy/libmaildrop.so
LoadModule gzip /usr/local/lib/messasy/libgzip.so
LoadModule enczip /usr/local/lib/messasy/libenczip.so
LoadModule lda /usr/local/lib/messasy/liblda.so
一覧へ