オープンソース

next up previous contents
Next: 4. 使い方 Up: Messasy Previous: 2. 計画


3. インストール

3.1 Messasyの入手と展開

Messasyソフトウェアは、Messasyプロジェクトのダウンロードページから入手することができます。

https://github.com/designet-inc-oss/Messasy

Messasyソフトウェアをダウンロードしたら、圧縮されたアーカイブファイルを展開します。

$ tar xvzf messasy-3.00.tar.gz

Messasyソフトウェアのインストール
$ cd Messasy-3.00/milter
$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
        :
config.status: creating so/libenczip/Makefile
config.status: creating config.h
config.status: executing depfiles commands
$ make
 cd . && /bin/sh /home/src/Messasy3/milter/shtool/missing --run automake-1.9 --gnu
    :

$ su
Password:
# make install

上記コンパイルオプションにて実行した場合、messasyの本体は/usr/local/binにインストールされます。
また、messasyは/usr/local/etc/messasy.confの設定ファイルを使って起動します。
--prefixや--sysconfdirの値を変更することで、インストール場所やデフォルトの設定ファイルの場所の変更を行う事ができます。

3.2 Messasyの設定

3.2.1 messasy.conf

コンパイルを行ったディレクトリにmessasy.conf.sampleファイルがあります。環境に合わせて編集し、設定ファイルの置き場所(標準では/usr/local/etc/messasy.conf)にコピーしてください。
詳細は、5章の設定詳細を参照して下さい。

messasy.confの設定例
ListenIP=127.0.0.1
ListenPort=20026
TimeOut=10
SyslogFacility=local1
ErrorAction=tempfail
CommandPort=17777
AdminPassword=admin
SavePolicy=both
MyDomain=messasy.designet.co.jp
SaveMailAddress=test1@messasy.designet.co.jp,test2@messasy.designet.co.jp
DefaultDomain=messasy.designet.co.jp
CommandMaxClients=16
CommandTimeOut=300
# for libmaildrop.so
MailDir=/home/messasy/Maildir
MailFolder=.%y.%m.%d.%D.%M
DotDelimiter=,
SlashDelimiter=_

3.2.2 module.conf

メール保存に利用するモジュールを設定します。通常は3種のうちの1つを選択しますが、同時に複数選択することも可能です。この場合、複数の形式で同時に保存されます。

module.confの書式
LoadModule      モジュール名    ライブラリファイル
# LoadModule            行頭には必ずこの文字列を記載
# モジュール名          モジュール名を記載します。詳細は後述。
# ライブラリファイル    モジュールライブラリファイルの場所をフルパスで記載

module.confに指定できるモジュール
モジュール名 標準的なモジュール 説明
maildrop /usr/local/lib/messasy/libmaildrop.so プレインテキストで保存
gzip /usr/local/lib/messasy/libgzip.so gzip形式で圧縮保存
enczip /usr/local/lib/messasy/libenczip.so パスワード付きZIP形式で圧縮保存

module.confの設定例
LoadModule maildrop /usr/local/lib/messasy/libmaildrop.so

3.2.3 Messasyの起動

Messasyはフォアグランドプロセスとして起動します。起動する際には、2.2章のメール管理ユーザとして
決めておいた ユーザで起動させてください。例としてinittabにて起動する解説を行います。
Messasyはinittabからの起動の他にも、バックグランドにて手動で実行することもできます。

Messasy設定例(inittab)

/etc/inittab
ml:345:respawn:su admin -c '/usr/local/bin/messasy.bin /usr/local/etc/messasy.conf /usr/local/etc/module.conf'

Messasy設定例(init)

/etc/init/messasy.conf
# Automatically start a configured messasy
#
# How this work: Archive all or selected e-mail
#

start on stopped rc RUNLEVEL=[2345]
stop on starting rc RUNLEVEL=[016]

respawn
su admin -c /usr/local/bin/messasy.bin /usr/local/etc/messasy.conf /usr/local/etc/module.conf

Messasy設定例(systemd)

/usr/lib/systemd/system/messasy.service
[Unit]
Description = Message Archive System

[Service]
ExecStart = /usr/local/bin/messasy.bin /usr/local/etc/messasy.conf /usr/local/etc/module.conf
Restart = always
Type = simple
User = messasy
Group = messasy

[Install]
WantedBy = multi-user.target

3.3 メールサーバの設定

Postfixの設定は/etc/postfix/main.cfのmilter連携部分の設定を行います。
下記の例では、messasyが127.0.0.1:20026(messasy.confにてListenIP=127.0.0.1 ListenPort=20026と設定)で
Listenしており、メール保存に失敗した場合でもメールの配送は行われるように設定しています。

/etc/postfix/main.cf
smtpd_milters=inet:127.0.0.1:20026
milter_default_action=accept

3.4 ログ設定

Messasyのログ設定の解説を行います。Syslogの設定にてmessasy.confで指定したSyslogFacilityのlocal1の設定を行います。

/etc/syslog.conf
# Messasy Log
local1.*                                                /var/log/messasy.log

next up previous contents
Next: 4. 使い方 Up: Messasy Previous: 2. 計画

23年11月27日