インストール手順 · 2 min read · Sep 28, 2025
完璧なSpamSnake - Ubuntu Jaunty Jackalope - ページ 4
17. MailWatch インストール手順
このセットアップは、Apache v2.xを使用していることを前提としています。Apache v1.xではありません。
開始する前に、MailWatchのインストールを続ける前にMailScannerが動作していることを確認してください!
*Ubuntu用の注意:
動作するMailScannerのセットアップと、MySQL、Apache、PHPのコピーが実行中である必要があります。また、MailScannerのPerl部分がMySQLデータベースを利用できるように、Perl DBD-MySQLパッケージもインストールされている必要があります。
デフォルトのphp.ini設定は、以下のように正しく設定されている必要があります。これを確認することをお勧めします:
short_open_tag = On
safe_mode = Off
register_globals = Off
magic_quotes_gpc = On
magic_quotes_runtime = Off
session.auto_start = 0これらはコメントアウトされているので、アクティブにするために”#”を削除する必要があります:
extension=mysql.so
extension=gd.so17.1 インストール
最新のMailWatchリリースをダウンロードします:
wget http://downloads.sourceforge.net/mailwatch/mailwatch-1.0.4.tar.gz?modtime=1178902008&big_mirror=0
tar xzvf mailwatch-1.0.4.tar.gz
cd mailwatch-1.0.417.2 データベースの作成
mysql -p < create.sql*注: MySQLデータベースにrootパスワードがある場合は、上記を必要に応じて修正する必要があります(推奨!) - Debianはパスワードを要求します。
MySQLユーザーとパスワードを作成し、SQLロギングのためにMailScannerを設定します:
mysql -p
mysql> GRANT ALL ON mailscanner.* TO mailwatch@localhost IDENTIFIED BY 'password';パスワードを忘れないでください!パスワードを囲むためにシングルクォート’が必要です。
17.3 MailWatch.pmの編集と移動
MailWatch.pmを編集し、$db_userと$db_passの値を適宜変更し、MailWatch.pmを移動します:
mv MailWatch.pm /opt/MailScanner/lib/MailScanner/CustomFunctions/
17.4 MailWatchウェブユーザーの作成
mysql mailscanner -u mailwatch -pEnter password: ******mysql> INSERT INTO users VALUES ('username',md5('password'),'mailscanner','A','0','0','0','0','0');17.5 MailWatchのインストールと設定
解凍したmailwatchディレクトリ内から、’mailscanner’というディレクトリを/var/www/に移動します。
mv mailscanner/ /var/www/
cd /var/www/mailscanner一時ディレクトリを作成します:
mkdir temp
chgrp www-data temp
chmod g+w temp/var/www/mailscanner/imagesと/var/www/images/cacheの権限を確認してください - ug+rwxで、rootが所有し、ウェブサーバーユーザーと同じグループに属している必要があります。
chown root:www-data images
chmod ug+rwx images
chown root:www-data images/cache
chmod ug+rwx images/cacheconf.php.exampleをコピーしてconf.phpを作成し、値を適宜編集します。DB_USERとDB_PASSを、以前に作成したMySQLユーザーとパスワードに設定する必要があります。
以下のようにこれらの値を変更します:
define(DB_USER, 'mailwatch');
define(DB_PASS, 'password');
define(MAILWATCH_HOME, '/var/www/mailscanner');
define(MS_LIB_DIR, '/usr/lib/MailScanner/');
define(QUARANTINE_USE_FLAG, true);
define(QUARANTINE_FROM_ADDR, '[email protected]');
define(QUARANTINE_USE_SENDMAIL, true);17.6 MailScannerの設定
/opt/MailScanner/etc/MailScanner.confを編集し、以下が設定されていることを確認します:
Quarantine User = root
Quarantine Group = www-data
Quarantine Permissions = 0640
Quarantine Whole Message = yes
Always Looked Up Last = &MailWatchLogging
Quarantine Whole Message As Queue Files = no
Detailed Spam Report = yes
Include Scores In SpamAssassin Report = yes*重要: スパムアクション、高スコアのスパムアクション、スパムなしアクションには、MailWatch内でのベイズ学習や表示のために、それらのアイテムを隔離したい場合は、’store’をキーワードの1つとして持っている必要があります。
17.7 SQLブラックリスト/ホワイトリストの統合(オプション)
MailWatchウェブインターフェースからMailScannerのホワイトリストとブラックリストを管理したい場合は、以下の手順を実行します。
- SQLBlackWhiteList.pmのCreateListサブルーチン内でMySQL接続値を編集し、以前にMailWatch.pmに入力した値と一致させます。両方のファイルには同じ値が含まれている必要があります。(SQLBlackWhiteList.pm内の以下の行を探し、自分のデータを入力します。)
my($db_user) = 'mailwatch';
my($db_pass) = 'password';SQLBlackWhiteList.pmを/opt/MailScanner/lib/MailScanner/CustomFunctions/にコピーします。
MailScanner.confを編集し、次のように設定します:
Is Definitely Not Spam = &SQLWhitelist
Is Definitely Spam = &SQLBlacklist17.8 MailWatchがPostfixの受信/送信キューで動作するように修正
http://www.gbnetwork.co.uk/mailscanner/files/postfixmail.tar.gzからパッチをダウンロードします。
cd /usr/src
wget http://www.gbnetwork.co.uk/mailscanner/files/postfixmail.tar.gz
tar xvfz postfixmail.tar.gz
cd postfixmail
cp postfix* /var/www/mailscanner/
patch /var/www/mailscanner/functions.php functions.php.diff17.9 SpamAssassin
まず、デフォルトのSpamAssassin設定ファイルを無効にする必要があります:
mv /etc/spamassassin/local.cf /etc/spamassassin/local.cf.disabled次に、MailScanner内のSpamAssassin設定ファイルをバックアップし、編集します:
cp /opt/MailScanner/etc/spam.assassin.prefs.conf /opt/MailScanner/etc/spam.assassin.prefs.conf.back/opt/MailScanner/etc/spam.assassin.prefs.confの先頭にpyzorとrazorのパスを追加します:
pyzor_options --homedir /var/lib/MailScanner/
razor_config /var/lib/MailScanner/.razor/razor-agent.confこれらの行を探し、適宜変更します:
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner-SpamCheck
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner-SpamScore
bayes_ignore_header X-YOURDOMAIN-COM-MailScanner-Information“YOURDOMAIN-COM”は、MailScanner.confファイルの”%org-name%”に使用したものに置き換える必要があります。”X-“はそのままにしてください。これは、上記のMailScanner.confで使用される同じorgnameです。
SpamAssassin v310.preを編集してRazorとDCCを有効にします:
loadplugin Mail::SpamAssassin::Plugin::DCC
loadplugin Mail::SpamAssassin::Plugin::Razor217.10 SpamAssassin SQL Bayes
前提条件
a. perl-DBIおよびperl-DBD-MySQLモジュールがインストールされている必要があります。
仮定と変数:
SpamAssassin Bayesデータベース名: sa_bayes
SpamAssassin Bayesデータベースユーザー名: sa_user
SpamAssassin Bayesデータベースパスワード: sa_password
MySQLデータベースを作成します:
まず、ベイジアン情報を保存するサーバーにデータベースを作成します。
mysql -u root -pmysql> create database sa_bayes;
mysql> GRANT ALL ON sa_bayes.* TO sa_user@localhost IDENTIFIED BY 'sa_password';
mysql> flush privileges;bayes_mysql.sqlファイルを見つけます:
find / -name bayes_mysql.sql
mysql -u sa_user -p sa_bayes < /path/to/bayes_mysql.sqlspam.assassin.prefs.confにいくつかの変更を加えます:
bayes_store_module Mail::SpamAssassin::BayesStore::SQL
bayes_sql_dsn DBI:mysql:sa_bayes:localhost
bayes_sql_username sa_user
bayes_sql_password sa_password
bayes_sql_override_username root以下がコメントアウトされていることを確認します:
#bayes_path /etc/MailScanner/bayes/bayes
#bayes_file_mode 0660また、これをcrontabに追加します:
30 01 * * * /usr/bin/sa-learn --force-expire --sync -p /opt/MailScanner/etc/spam.assassin.prefs.conf 新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。