[Linux][Mail] MailArchiva OSEを久々に使う

技術のお話し

メールアーカイブとは

実は8~9年前ぐらいに一度やったことなんですが、メールアーカイブの仕組みを組んでみました。メールアーカイブというのはこんな代物です。

よく必要とされるケースとしては、監査対応や業務上の不正発覚時の調査、証跡提出が挙げられますね。メジャーな製品としては、キヤノンITソリューションズの「GUARDIAN WALL」DigitalArtsの「m-FILTER」辺りが挙げられます。

じゃぁ、今回使うのは何なんだ?と言うと、MailArchivaと言う製品を使います。実は、今はもうEnterprise Editionしかこのサイトではダウンロードできないんですが、昔、これとは別に「Open Source Edition(略してOSE)」と言うものがあり、こいつは基本的なアーカイブ・検索機能を有しつつフリーで使える代物です。

OSEはv1.9.2で9年ぐらい前に開発自体はストップしてしまってるようなのですが、今でもSorceForgeからダウンロードできるようです。物は試しなので使ってみることにしました。

目的としては、複数ある当ドメインの複数あるメールアカウントを俯瞰的に見れるようにする事が挙げられます。利用者は実はワタシだけですからね、その中で一々RoundCubeやOutlookでログインしてIMAP見るのはつかれるなぁということで、一元的に検索・抽出出来るシステムを求めていたのでした。

また、自宅のメールシステムが完全に潰れた場合、一応メールデータ自体は災対環境に保全してはいるんですが、それを気軽に参照できる環境がありません。その為、災対環境側で当該システムを組むことにより、自宅環境全損時にメールのトレースを出来るようにすることも目的の一つになっています。

製品の入手

製品入手先はこちら。事前にダウンロードしておくべきものはこれらです。これらをCentOS7のサーバにwgetで拾うもよし、一旦Windowsに落としてWinSCPで転送するもよしです。

  • mailarchiva_server_opensource_linux_v1_9_13.tar.gz (本体)
  • mailarchiva_ja_20090608.zip (日本語言語パック)

本体のインストール

# tar zxvf mailarchiva_server_opensource_linux_v1_9_13.tar.gz
# cd mailarchiva_dist/
# ./install.sh

すると、こんな感じに出力されます。対話形式の箇所もあるので、入力していきます。

MailArchiva Open Source Edition Install/Upgrade
Copyright (c) 2005-2009 Jamie Angus Band

Thank you for downloading MailArchiva Open Source Edition
This script can be used for upgrade purposes as it will always preserve your settings!

To install/upgrade, please enter your registration details below:←ユーザ登録をするみたい。
Full Name:localusr  ←フルネームを入力
Company Name:BLUECORE.NET ←会社名(団体名)を入力
Email Address:words@bluecore.net ←メールアドレスを入力
Telephone Number:XXXXXXXXXXXX ←電話番号を入力(てけとーに)
No Mailboxes:10 ←どの程度メールボックスがあるのか(これもテケトーでいいと思う)
service installed
configuration:
server requires a minimum of 256m of heap space.
at least 768m is recommended for production environments.
Max heap size [256m-7694m]?:2048m ←ヒープサイズを入力する(今回は2048MBとした)
server will use 2048m RAM
Using CATALINA_BASE: /usr/local/mailarchiva/server/../server
Using CATALINA_HOME: /usr/local/mailarchiva/server/../server
Using CATALINA_TMPDIR: /usr/local/mailarchiva/server/../server/temp
Using JRE_HOME: /usr/local/mailarchiva/server/../jre64
mailarchiva server is installed and running
web console is accessible at http://localhost:8090/mailarchiva
note: default console login username and password is admin
visit http://knowledge.mailarchiva.com for extra tips!

これでインストール完了、サービスが動いてる状態になります。以下コマンド入力を行い、サービス自動起動を可能にしておきます。

# chkconfig mailarchiva on

日本語言語パックの導入

この時点では日本語対応していないので、日本語パックを適用します。

■サービスの停止
/etc/init.d/mailarchiva stop

■ZIPファイル解凍・ディレクトリ移動
# unzip mailarchiva_ja_20090608.zip
# cd mailarchiva_ja_20090608/

■日本語プロパティファイルのコピー
# cp -p application_ja.properties /usr/local/mailarchiva/server/webapps/mailarchiva/WEB-INF/classes/properties/

■一部ディレクトリ・jarファイルの削除
# rm -rf /usr/local/mailarchiva/server/webapps/mailarchiva/WEB-INF/classes/org/fontbox
# rm -f /usr/local/mailarchiva/server/webapps/mailarchiva/WEB-INF/lib/pdfbox-0.80.jar

■jarファイルのコピー
# cp -p *.jar /usr/local/mailarchiva/server/webapps/mailarchiva/WEB-INF/lib/

■サービスの起動
/etc/init.d/mailarchiva start

初回ログイン

ブラウザで、「http://<導入先サーバのIP/FQDN>:8090/mailarchiva 」へアクセスします。するとログインプロンプトが出るのでログインします。初期ユーザ名/パスワードはadmin/adminです。

初期設定の実施

検索画面が表示されるんですが、この時点では何も検索しようがないので、画面右上側の「設定」をクリックします。「ドメイン」タブで「新しいドメイン」をクリックし、ドメインを追加します。で、一旦保存。ちなみにワタシは各タブ設定するたびに「保存」ボタンをクリックしてます。

次は「ボリューム」タブをクリックします。新しいボリュームの指定を行い、「Email暗号化パスワード」を入力します。この暗号化パスワードを使ってメールストアには3DES暗号化が行われます(古っ!)。

「ログイン」タブではadminユーザのパスワード変更が出来ます。

「一般」タブをクリックし、「メールインデキシングにのデフォルトの言語」を「日本語」にします。

Postfixの設定追加

実は以前MailArchiva OSEを使った時はWindows版を使ってました。メールサーバはExchange Server 2007を使ってました。この構成の場合、Exchange Serverには「ジャーナルアカウント」と言うものが存在してました。要はメールアーカイブを想定して「全ユーザのメールを丸々取り込める」アカウントがあったんです。

ですが、今回の構成(Postfix+Dovecot)ではそんな仕組みないので、代わりに以下のようなことをします。

■ジャーナルアカウントの作成
# adduser journal
# passwd journal

■Postfixの設定修正
# vi /etc/postfix/main.cf
----------
以下設定を追加する
always_bcc = journal@bluecore.net
----------

これによって、あらゆる送受信メールはジャーナルアカウントへ転送されます。これをIMAP通じてMailArchivaに取り込みます。

ジャーナルアカウントの設定

「設定」→「ジャーナルアカウント」タブをクリックします。

メールサーバの定義とジャーナルアカウントの定義を行います。デフォルト設定だと、2秒間に最大50通のメール取り込み処理が実行されます。取り込まれたメールはメールボックスから削除する形になります。

「ジャーナルアカウント接続のテスト」をクリックすると、ジャーナルアカウントが保有するメールボックスへアクセスし、接続できるかどうかが確認できます。

後は

メールの送受信をテストしてもいいですし、そのまま成り行きを見守ればいいですし。やがて、検索画面を見ると以下のようにメールが取り込めていることが確認できます。

メールが蓄積されてくると、全件眺めるのは大変になってくるので、キーワード検索などでメッセージを絞ったりします。Subject列のリンクをクリックすると、メール原本が参照できます。「保存されたメッセージ」右側のリンクをクリックすると、メール原本もダウンロードできます。

おわりに

この製品は最初に書いたように、かなり昔で開発がストップしていて、本格的な使用は正直オススメできません。あくまでお遊びの一つ、メールアーカイブの基本を勉強するため・・・ぐらいの目的にしといたほうが良いと思います。Javaベースなんですが、当然時代が時代なんで、Javaのバージョンも古いわけですし。

間違ってもこのサイトを外部公開するようなことはやめたほうが良いと思います。あくまで宅内LANで使うだけ・・・と言うレベルにしとかないと。WAF通すにしてもチョイと怖いです。

それにしても何かよいフリーのメールアーカイブツールはないものかなぁ・・・とは思います。個人向けツールとごっちゃになってるんで、中々検索してみても良いのが見つからないんですね・・・。引き続き製品探索してみようかなぁなんて思っています。

Tags:

Comments are closed

PAGE TOP