4. 機能詳細 一覧へ 6. LDA(ローカル配送エージェント)プラグインの補足
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
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