本製品の初期設定時にメールサーバーの自動連携をスキップした場合は、KSMG をメールサーバーと手動で連携する必要があります。
動的リンクライブラリ(dlfunc)を使用して、KSMG と Exim メールサーバーの before-queue 連携を手動で設定できます。before-queue 連携を使用すると、KSMG はメッセージが Exim メールサーバーのキューに入る前にメッセージをスキャンします。After-queue 連携はサポートされていません。
オペレーティングシステムによっては、編集の必要がある Exim メールサーバー設定情報ファイルが 1 つの場合と複数の場合があります:
KSMG と Exim の before-queue 連携を実行するには、次の手順を実行します:
exim -bV
Exim メール サーバーは、[Support for]セクションに Expand_dlfunc 行が含まれている場合、動的にロードされる dlfunc ライブラリをサポートします。
acl_smtp_data のアクセス制御リストを編集します。そのためには、Exim の設定ファイルで次のような行を見つけます:acl_smtp_data = acl_check_data(acl_check_dataの代わりに別の変数またはマクロを使用できます)
見つけたら、
acl_check_data:(または別の変数またはマクロを含む文字列)
の後に、次の各行を追加します:
# Manually added block ksmg-exim-filter-dflunc begin
warn set acl_m_ksmg_input_directory = ${spool_directory}/input
set acl_m_ksmg_lookup_result = ${lookup {$message_id-D} dsearch {$acl_m_ksmg_input_directory}}
warn condition = ${if eq {$acl_m_ksmg_lookup_result}{}{yes}{no}}
set acl_m_ksmg_input_directory = ${spool_directory}/input/${substr{5}{1}{$message_id}}
warn set acl_m_ksmg_answer = ${dlfunc{DLFUNC_LIBRARY_FULLPATH}{scan}{$acl_m_ksmg_input_directory}}
defer condition = ${if match {$acl_m_ksmg_answer}{^[245]}{no}{yes}}
log_message = KSMG check failed, unexpected answer: $acl_m_ksmg_answer
defer condition = ${if match {$acl_m_ksmg_answer}{^4}{yes}{no}}
log_message = KSMG check defer: $acl_m_ksmg_answer
deny condition = ${if match {$acl_m_ksmg_answer}{^5}{yes}{no}}
log_message = KSMG check reject: $acl_m_ksmg_answer
message = This message is blocked due to security reason
warn condition = ${if match {$acl_m_ksmg_answer}{^2}{yes}{no}}
logwrite = KSMG check accept: $acl_m_ksmg_answer
# Manually added block ksmg-exim-filter-dlfunc ends here
DLFUNC_LIBRARY_FULLPATH は、dlfunc ライブラリへのパスです。ライブラリへのパスは Exim のバージョンによって異なり、次のようになります:
kluser を追加します。既定では、このグループは Red Hat Enterprise Linux および Rocky Linux では「exim」、Ubuntu では「Debian-exim」と呼ばれます。
klusers グループと kl_var_users グループに追加します。既定では、ユーザー名は Red Hat Enterprise Linux および Rocky Linux では「exim」、Ubuntu では「Debian-exim」です。
[global]セクションで、次のパラメータ値を設定します:scanner=unix:/var/run/ksmg/klms_scanner_sock
header-guard=false
PrivateTmpが false に設定されているか、Exim Unit ファイルで指定されていない場合:workdir=/tmp
PrivateTmp が true に設定されている場合:workdir=/var/opt/kaspersky/ksmg/tmp
MTA_INTEGRATION_METHOD=dlfunc
MTA_INTEGRATION_MODE=prequeue
filters_workdir=<手順 7 の「workdir」パラメータ値>
mta=manual
START_SMTP_PROXY=0
START_MILTER=0
Exim との連携が完了しました。
ページのトップに戻る