amavis: 一部の Clam データベースを使用する場合、[virus_name_to_spam_score] は空です。

amavis: 一部の Clam データベースを使用する場合、[virus_name_to_spam_score] は空です。

virus_name_to_spam_scoreに奇妙な動作があります。私は2つのカスタムClamav DBを使用しています。以下はSaneSecurityを使用したときのログです。すべてが正常であることを確認できます。

Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) run_av (ClamAV-clamd) result: /var/lib/amavis/tmp/amavis-20170612T105753-04428-qozS1fmk/parts/p004: Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL FOUND\n
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) run_av (ClamAV-clamd): /var/lib/amavis/tmp/amavis-20170612T105753-04428-qozS1fmk/parts INFECTED: Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) lookup_re("Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL") matches key "(?^:^Sanesecurity\\.TestSig_)", result=undef
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) lookup [virus_name_to_spam_score] => undef, "Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL" does not match
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) virus_scan: (Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL), detected by 1 scanners: ClamAV-clamd
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) lookup_re("Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL") matches key "(?^:.*)", result="1"
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) lookup [viruses_that_fake_sender] => true,  "Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL" matches, result="1", matching_key="(?^:.*)"
Jun 12 10:57:53 prd-mail-1 amavis[4428]: (04428-01) Virus Sanesecurity.TestSig_Type4_Hdr.2.UNOFFICIAL matches (?^:.*), sender addr ignored

SecurityInfo.comを使用すると、最初の実行でウイルスが検出されましたが、virus_name_to_spam_scoreが空であることがわかります。私がやりたいことは、@virus_name_to_spam_score_mapsを使用してこのリストの電子メールをスパムに設定することです。ただし、スキャンが空であるため、送信されていないメッセージは返され、常にウイルスとしてマークされます。ログは次のとおりです。

Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) prolong_timer run_av_3: timer 288, was 288, deadline in 479.8 s
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) run_av (ClamAV-clamd) result: /var/lib/amavis/tmp/amavis-20170612T092354-18890-TNOnpS50/parts/p013: SecuriteInfo.com.Spam-4703.UNOFFICIAL FOUND\n/var/lib/amavis/tmp/amavis-20170612T092354-18890-TNOnpS50/parts/p009: SecuriteInfo.com.Spam-4703.UNOFFICIAL FOUND\n
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) run_av (ClamAV-clamd): /var/lib/amavis/tmp/amavis-20170612T092354-18890-TNOnpS50/parts INFECTED:
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) lookup_re(""), no matches
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) lookup [virus_name_to_spam_score] => undef, "" does not match
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) virus_scan: (), detected by 1 scanners: ClamAV-clamd
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) lookup_re("") matches key "(?^:.*)", result="1"
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) lookup [viruses_that_fake_sender] => true,  "" matches, result="1", matching_key="(?^:.*)"
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) Virus  matches (?^:.*), sender addr ignored
Jun 12 09:25:32 prd-mail-1 amavis[18890]: (18890-02) lookup_sql_field(virus_lover) rec=0, "[email protected]" result: undef

何がこのようなことを引き起こす可能性があるかご存知ですか?

ベストアンサー1

私は答えを見つけました。私が使用しているclamavスキャナが正しい値を返さないように見えるので、置き換える必要があります。@av_scanners存在する/etc/amavis/conf.d/50-user次に:

@av_scanners = (
    #### http://www.clamav.net/
    ['ClamAV-clamd',
    \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.ctl"],
    qr/\bOK$/m, qr/\bFOUND$/m,
    qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
);

そしてアマビスを再起動してください

おすすめ記事