Debian および Ubuntu の ISPConfig 3.1 で Amavisd を Rspamd に置き換える
このページでは
- 前提条件
- Redis をインストールする
- BIND がインストールされていない場合は Unbound をインストールします
- Rspamd のインストールと構成
- ISPConfig を更新する
- ISPConfig で Rspamd を有効にする
- Rspamd ダッシュボードに外部からアクセスできるようにする
- アパッチ
- ニンクス
- Rspamd GUI
このチュートリアルでは、ISPConfig 3.1 サーバーで amavis (amavisd-new) スパム スキャン ソフトウェアを Rspamd に置き換える手順について説明します。このチュートリアルは、Debian および Ubuntu Linux 向けに書かれています。
前提条件
- ルート アクセス。
- ISPConfig 3.1 がインストールされている必要があります。この手順を実行すると、ISPConfig のバージョンは 3.1.15 以降になります。
- サーバーは、x86_64 プロセッサ (64 ビット Linux) で Debian 9 ~ 10 または Ubuntu 18.04 を使用します。古いバージョンの Debian と Ubuntu も動作する可能性がありますが、私はそれらをテストしませんでした。
以下のすべてのコマンドは、root ユーザーとして実行されます。このガイドを続行する前に、root ユーザーとしてログインするか、Debian では su - または Ubuntu では sudo -s を使用して root ユーザーになります。
注: この手順では、すべてのメールボックスとエイリアスを再構成して、各アカウントの Rspamd 構成を書き込みます (ISPConfig ツール > 再同期の実行と同様)。大規模なメール サーバーではかなりの時間とリソースが必要になる場合があります。
Redis をインストールする
ISPConfig の Rspamd セットアップには Redis が必要なので、最初にインストールします。
apt-get install redis-server lsb-release
BIND がインストールされていない場合は Unbound をインストールします
サーバーにローカル DNS サーバーがインストールされていない場合は、unbound などのローカル DNS リゾルバーをインストールする必要があります。
まず、次のコマンドを使用して BIND がインストールされているかどうかを確認します。
which named
コマンドが名前付きバイナリへのパスを返す場合:
:/tmp# which named
/usr/sbin/namedその後、BIND がインストールされるため、この手順をスキップする必要があります。 named へのパスが返されない場合は、unbound をインストールします。
apt-get install unbound
Rspamd のインストールと構成
Rspamd をインストールする最初のステップは、Rspamd Debian/Ubuntu パッケージ リポジトリを追加することです。
CODENAME=`lsb_release -c -s`
wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add -
echo "deb [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list
echo "deb-src [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" >> /etc/apt/sources.list.d/rspamd.listパッケージ リストを更新します。
apt-get update
そして apt で Rspamd をインストールします:
apt-get install rspamd
Rspamd 構成で Redis をアクティブ化します。
echo 'servers = "127.0.0.1";' > /etc/rspamd/local.d/redis.conf
Rspamd の履歴を増やし、圧縮を有効にして、件名を履歴に表示します。この手順はオプションです。
echo "nrows = 2500;" > /etc/rspamd/local.d/history_redis.conf
echo "compress = true;" >> /etc/rspamd/local.d/history_redis.conf
echo "subject_privacy = false;" >> /etc/rspamd/local.d/history_redis.conf次に、Rspamd を再起動します。
systemctl restart rspamd
ISPConfig の更新
Rspamd 構成を有効にするには、ISPConfig を更新する必要があります。 ISPConfig アップデーターがサービスを再構成するかどうか尋ねてきたら、[はい] を選択します。
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xvfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install
php -q update.phpRspamd が検出されて設定されると、アップデート スクリプトの出力に \Configuring Rspamd\ という行が表示されます。
ISPConfig で Rspamd を有効にする
最後の手順では、管理者ユーザーとして ISPConfig にログインする必要があります。
ISPConfig で System > Server Config > Mail に移動します。
そこで、フィールド コンテンツ フィルターの値を Amavisd から Rspamd に変更し、ページの下部にある保存ボタンを押します。 ISPConfig は、Rspamd のすべてのメールボックスの再構成を開始します。
[システム] > [サーバー構成] > [メール] に戻ると、Rspamd パスワードを読み取って設定できる新しいフィールドがいくつか表示されます。
外部から Rspamd ダッシュボードにアクセスできるようにする
Rspamd ダッシュボードは localhost のポート 11334 にあるため、外部からアクセスすることはできません。この章では、ISPConfig でウェブサイトを作成し、プロキシ構成を追加します。構成は Apache と Nginx Web サーバーの間で異なります。インストールされている Web サーバー ソフトウェアに一致する章を使用してください。
アパッチ
プロキシ モジュールを有効にして、Apache を再起動します。
a2enmod proxy
systemctl restart apache2次に、ISPconfig にログインし、Rspamd GUI へのアクセスに使用する Web サイトを作成します。ドメイン名は自由に選択できます。ここでは rspamd.example.com を使用します。そのサイトでプログラミング言語やその他のオプションを有効にする必要はありません。すべてをデフォルトのままにしてください。ただし、SSL を有効にして暗号化することを強くお勧めします。
Web サイトの [オプション] タブに移動し、次の構成を [Apache ディレクティブ] フィールドに入力します。 Apache 2.2 の場合は、次を使用します。
<Location /rspamd>
Order allow,deny
Allow from all
</Location>
RewriteEngine On
RewriteRule ^/rspamd$ /rspamd/ [R,L]
RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]Apache 2.4 の場合は、代わりにこれを使用します。
<Location /rspamd>
Require all granted
</Location>
RewriteEngine On
RewriteRule ^/rspamd$ /rspamd/ [R,L]
RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]これで、Web ブラウザ https://rspamd.example.com/rspamd を使用して Rspamd GUI にアクセスできます。パスワードの入力を求められます。Rspamd のインストール中に生成したパスワードを使用してください。
ニンクス
ISPconfig にログインし、Rspamd GUI へのアクセスに使用するウェブサイトを作成します。ドメイン名は自由に選択できます。ここでは rspamd.example.com を使用します。そのサイトでプログラミング言語やその他のオプションを有効にする必要はありません。すべてをデフォルトのままにしてください。ただし、SSL を有効にして暗号化することを強くお勧めします。
ウェブサイトの [オプション] タブに移動し、次の構成を Nginx ディレクティブ フィールドに入力します。
location / {
root /usr/share/rspamd/www/;
try_files $uri @proxy;
}
location @proxy {
proxy_pass http://127.0.0.1:11334;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}これで、Web ブラウザ https://rspamd.example.com/ を使用して Rspamd GUI にアクセスできるようになりました。パスワードの入力を求められます。ISPConfig で Rspamd に設定したパスワードを使用してください。
Rspamd GUI
これで、ブラウザーで Rspamd GUI にアクセスして、スパム フィルター レートとスループットに関する詳細な統計を取得できるようになりました。
ISPConfig は、Amavis の代わりに Rspamd を使用してスパム メールをスキャンするように再構成されました。 Rspamd は、Dkim 署名にも使用されます。
アマビスを無効にする
最後に、amavisd サービスを停止して無効にします。
systemctl stop amavisd-new
systemctl disable amavisd-new結論
Rspamd は、Linux サーバー用の最新の高性能スパム スキャン ソフトウェアで、非常に正確なフィルタ結果を提供します。 ISPConfig は、バージョン 3.1.15 以降、Rspamd をスパム スキャン ユニットとしてサポートしています。このチュートリアルでは、ISPConfig 3.1 サーバーで amavisd.new を Rspamd に置き換える方法を示します。