![]() |
![]() |
![]() |
milter managerリファレンスマニュアル | ![]() |
---|
FreeBSDに特化したmilter manager関連ソフトウェアのインストール方法について説明します。milter manager本体のインストール情報は FreeBSDへインストール 、FreeBSDに依存しない一般的なインストール情報は インストール を見てください。
WebサーバとしてApacheを使います。ここでは、Apache 2.2系列(www/apache22)をインストールします。
% sudo /usr/local/sbin/portupgrade -NRr www/apache22
グラフを生成するためにRRDtoolを使います。RRDtoolのRubyインターフェイスもインストールします。
注: RRDtool 1.3.8のRubyバインディングにはバグがあるので、1.3.8を使うときは"-M'WITH_RUBY_MODULE=yes'"オプションは指定しないでください。
% sudo /usr/local/sbin/portupgrade -NRr -M'WITH_RUBY_MODULE=yes' rrdtool
グラフはインストール時に作成したmilter-managerユーザのホームディレクトリ以下に出力し、http://localhost/~milter-manager/log/で閲覧できるようにします。
% sudo -u milter-manager mkdir -p ~milter-manager/public_html/log
Apacheで各ユーザ毎にファイルを公開できるようにします。/usr/local/etc/apache22/httpd.confを以下のように編集します。
編集前:
# User home directories #Include etc/apache22/extra/httpd-userdir.conf
編集後:
# User home directories Include etc/apache22/extra/httpd-userdir.conf
設定を再読み込みします。
% sudo /usr/local/etc/rc.d/apache22 reload
次に、milter-managerユーザのcronの設定をします。定期的にmilter-manager-log-analyzerがログからmilter-managerの情報を抜きだし、グラフを生成します。
% sudo -u milter-manager -H crontab /usr/local/etc/milter-manager/cron.d/freebsd/milter-manager-log
milter-manager-log-analyzerは5分おきに実行されます。/var/log/cronで実行されたかどうかを確認することができます。
以下のパッケージをインストールすることにより、関連するパッケージもインストールされます。
% sudo /usr/local/sbin/portupgrade -NRr rubygem-sqlite3
以下のコマンドを実行し、Passengerをビルドします。
% (echo 1; echo) | sudo passenger-install-apache2-module
以下の内容の/usr/local/etc/apache22/Includes/passenger.confを作成します。
LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.5/ext/apache2/mod_passenger.so PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.5 PassengerRuby /usr/local/bin/ruby18 RailsBaseURI /milter-manager
設定ファイルを再読み込みします。
% sudo /usr/local/etc/rc.d/apache22 reload
milter manager adminはパスワード認証がついていますが、可能であれば信頼できるホストからのみ接続を受け付ける方がセキュリティ上は好ましいです。例えば、ローカルホストのみ信頼できるのであれば、以下の設定を/usr/local/etc/apache22/Includes/passenger.conf に追記してください。
<Location /milter-manager> Allow from 127.0.0.1 Deny from ALL </Location>
追記した場合は設定ファイルを再読み込みするのを忘れないでください。
% sudo /usr/local/etc/rc.d/apache22 reload
milter manager adminは/usr/local/share/milter-manager/admin/以下にインストールされています。これをmilter-managerユーザ権限で動かし、http://localhost/milter-manager/でアクセスできるようにします。
% tar cf - -C /usr/local/share/milter-manager admin | sudo -u milter-manager -H tar xf - -C ~milter-manager % sudo ln -s ~milter-manager/admin/public /usr/local/www/apache22/data/milter-manager % cd ~milter-manager/admin % sudo -u milter-manager -H rake gems:install % sudo -u milter-manager -H rake RAILS_ENV=production db:migrate
最後に以下の内容の~milter-manager/admin/config/initializers/relative_url_root.rbを作成します。
~milter-manager/admin/config/initializers/relative_url_root.rb
ActionController::Base.relative_url_root = "/milter-manager"
http://localhost/milter-manager/にアクセスしてユーザを登録してください。ユーザを登録したら、milter-managerと接続するための情報を設定するページへ移動します。milter-managerがどこで接続を受け付けているかは以下で確認可能です。
% sudo -u milter-manager -H /usr/local/sbin/milter-manager --show-config | grep controller.connection_spec controller.connection_spec = "unix:/var/run/milter-manager/milter-manager-controller.sock"
確認した値をブラウザから登録してください。上記の場合だと、まず、「種類」から「unix」を選びます。これで編集フォームに「パス」がでてきます。「パス」には「/var/run/milter-manager/milter-manager-controller.sock」を指定してください。
登録すると、milter-managerに登録されている子milterやその設定状況をブラウザから確認することができます。
milter-manager-log-analyzerを利用することによりmilterを導入した効果を視覚的に確認することができます。MTAとしてPostfixを使用しているのであれば、 Mailgraph のグラフと見くらべてmilter導入の効果を確認することができます。milterを試験的に導入している場合などに有効に活用できます。
milter manager adminを利用することで設定ファイルを変更せずに運用できる領域が広がり、メールシステムの管理コストを下げることができます。
また、Webブラウザからmilterの有効・無効を切り替えることもできるため、milterの効果を試行錯誤する場合に便利です。milter-manager-log-analyzerのグラフとあわせて、それぞれのメールシステムに適した迷惑メール対策の適用を支援します。