Contents
1. ウイルス対策ソフトClamav導入
ウィルス対策としてLinux 用のフリーのアンチウィルスソフトであるClam AntiVirus を導入します。
このアンチウィルスソフトを導入することで、サーバー全体のウィルススキャンはもちろん、メールサーバーを構築し、設定を行えば、送受信するメールのウィルススキャンも行うことができます。
1.1 インストール
1 |
# apt -y install clamav clamav-daemon |
尚、clamav関連の設定ファイルは、/etc/clamav/フォルダにインストールされる
1.2 ウイルス定義の更新
1 |
# sed -i -e "s/^NotifyClamd/#NotifyClamd/g" /etc/clamav/freshclam.conf |
1 2 3 4 5 6 7 |
# systemctl stop clamav-freshclam # freshclam Sun Sep 21 15:42:52 2025 -> ClamAV update process started at Sun Sep 21 15:42:52 2025 Sun Sep 21 15:42:52 2025 -> daily.cvd database is up-to-date (version: 27768, sigs: 2076849, f-level: 90, builder: raynman) Sun Sep 21 15:42:52 2025 -> main.cvd database is up-to-date (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr) Sun Sep 21 15:42:52 2025 -> bytecode.cvd database is up-to-date (version: 339, sigs: 80, f-level: 90, builder: nrandolp) |
1 |
# systemctl start clamav-freshclam |
設定ファイルを編集
1 2 3 4 |
# vi /etc/logrotate.d/clamav-freshclam create 640 clamav adm ↓ create 640 clamav clamav |
ウイルス定義の自動更新確認
ウイルス定義の自動更新が行われるサービスが登録されていることを確認する。
1 |
# service clamav-freshclam status |
次のように表示される
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
● clamav-freshclam.service - ClamAV virus database updater Loaded: loaded (/usr/lib/systemd/system/clamav-freshclam.service; disabled; preset: enabled) Active: active (running) since Sun 2025-10-12 10:04:08 JST; 32min ago Invocation: 3281098e7519498c824b6ecf8c1ee35f Docs: man:freshclam(1) man:freshclam.conf(5) https://docs.clamav.net/ Main PID: 2888 (freshclam) Tasks: 1 (limit: 2257) Memory: 1.5M (peak: 816.8M, swap: 4.3M, swap peak: 4.3M) CPU: 15.334s CGroup: /system.slice/clamav-freshclam.service mq2888 /usr/bin/freshclam -d --foreground=true Oct 12 10:04:17 Lepard freshclam[2888]: Sun Oct 12 10:04:17 2025 -> daily.cvd updated (version: 27789, sigs: 2076956, f-level: 90, builder: svc.clamav-publisher) Oct 12 10:04:17 Lepard freshclam[2888]: Sun Oct 12 10:04:17 2025 -> main database available for download (remote version: 62) Oct 12 10:04:22 Lepard freshclam[2888]: Sun Oct 12 10:04:22 2025 -> Testing database: '/var/lib/clamav/tmp.1c8647fa22/clamav-6a82598f412625887aaac7cb5d9a278f.tmp-main.cvd' ... Oct 12 10:04:27 Lepard freshclam[2888]: Sun Oct 12 10:04:27 2025 -> Database test passed. Oct 12 10:04:27 Lepard freshclam[2888]: Sun Oct 12 10:04:27 2025 -> main.cvd updated (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr) Oct 12 10:04:27 Lepard freshclam[2888]: Sun Oct 12 10:04:27 2025 -> bytecode database available for download (remote version: 339) Oct 12 10:04:27 Lepard freshclam[2888]: Sun Oct 12 10:04:27 2025 -> Testing database: '/var/lib/clamav/tmp.1c8647fa22/clamav-1c072df1fb12faa0bc6aa2482b1490e1.tmp-bytecode.cvd' ... Oct 12 10:04:27 Lepard freshclam[2888]: Sun Oct 12 10:04:27 2025 -> Database test passed. Oct 12 10:04:27 Lepard freshclam[2888]: Sun Oct 12 10:04:27 2025 -> bytecode.cvd updated (version: 339, sigs: 80, f-level: 90, builder: nrandolp) |
尚、/var/log/clamav/freshclam.logファイルにログが記録される。
1.3 ウイルスチェックの確認
①手動でウイルスチェックの実行
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# clamscan --infected --remove --recursive /home ----------- SCAN SUMMARY ----------- Known viruses: 8708674 Engine version: 1.4.3 Scanned directories: 23 Scanned files: 40 Infected files: 0 Data scanned: 0.02 MB Data read: 0.01 MB (ratio 2.00:1) Time: 108.482 sec (1 m 48 s) Start Date: 2025:10:12 10:37:48 End Date: 2025:10:12 10:39:37 |
Infected files: 0 なのでウイルスはありません
②無害ウィルスをダウンロードしてウイルス検出
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# wget https://secure.eicar.org/eicar.com.txt # clamscan --infected --remove --recursive /root/eicar.com.txt: Win.Test.EICAR_HDB-1 FOUND /root/eicar.com.txt: Removed. ----------- SCAN SUMMARY ----------- Known viruses: 8708674 Engine version: 1.4.3 Scanned directories: 23 Scanned files: 93 Infected files: 1 Data scanned: 2.49 MB Data read: 0.89 MB (ratio 2.78:1) Time: 14.895 sec (0 m 14 s) Start Date: 2025:10:12 10:40:26 End Date: 2025:10:12 10:40:41 |
このように「FOUND」「Removed.」という表示と「Infected files: 1」という表示でウイルスを通知してくれる。又、「--remove」オプションを付けているので、テストウイルスは削除された。
1.4 フルスキャンするスクリプトファイルを作成
①事前にスクリプトファイル格納ディレクトリー(/opt/script)を作成しておく
1 |
# mkdir /opt/script |
②スクリプトファイルを作成
1 |
# vi /opt/script/clam-full.sh |
clam-full.sh の内容(新規作成)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#!/bin/sh echo ========================================= date hostname clamscan / \ --infected \ --recursive \ --log=/var/log/clamav/clamscan.log \ --move=/var/log/clamav/virus \ --exclude-dir=^/boot \ --exclude-dir=^/sys \ --exclude-dir=^/proc \ --exclude-dir=^/dev \ --exclude-dir=^/var/log/clamav/virus if [ $? = 0 ]; then echo “virus undetected.” else echo “virus detection!!” fi |
③実行権限を与える
1 |
# chmod +x /opt/script/clam-full.sh |
④ウイルス隔離用フォルダを作成
既にあればOKだが、無いと上記スクリプトで除外ディレクトリに指定しているので実行時エラーになる
1 |
# mkdir /var/log/clamav/virus |
⑤実行
1 |
# /opt/script/clam-full.sh |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
========================================= Sun Sep 21 03:48:25 PM JST 2025 Lepard ----------- SCAN SUMMARY ----------- Known viruses: 8708572 Engine version: 1.4.3 Scanned directories: 3951 Scanned files: 31407 Infected files: 0 Data scanned: 5430.55 MB Data read: 2802.97 MB (ratio 1.94:1) Time: 852.048 sec (14 m 12 s) Start Date: 2025:10:12 10:43:48 End Date: 2025:10:12 10:58:00 “virus undetected.” |
完了までけっこう時間がかかる
尚、/var/log/clamav/clamscan.logファイルにログが記録される
⑤cronでウイルススキャンの定期実行
1 2 |
# crontab -e 0 2 * * mon /opt/script/clam-full.sh >> /var/log/clamav/clamascan.log |
上記例では、毎週月曜日の夜中2時に定期的に実行。
2. メールソフト導入
Postfix は、sendmail に代わるMTA (Mail Transport Agent)として開発されたソフトウェアで、sendmail との互換性が高く、安全、メンテナンスが容易、速い、などの特徴を兼ね備えたメールサーバーです。
また、Postfix はメールを送信するSMTP サーバーとしての機能しか無いため、後半でメール受信のPOP サーバーDovecotのインストールを別途行います。
2.1 Postfix : インストール 設定
①Postfix をインストール
Postfix をインストールして SMTPサーバーを構築します。SMTP は 25/TCP を使用します。
メール不正中継防止に、後述の Dovecot の SASL機能を利用し、送信にも認証が必要なように Postfix を設定します。
1 |
# apt -y install postfix sasl2-bin |
一般的な構成設定の選択を求められるが、後で手動設定するため [No configuration] を選択


②設定ファイル(main.cf)編集
1 2 |
# cp /usr/share/postfix/main.cf.dist /etc/postfix/main.cf # vi /etc/postfix/main.cf |
編集内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# 82行目:コメント解除 mail_owner = postfix # 108行目:ホスト名指定追加 myhostname = mail.<domain name> # 115行目あたり:ドメイン名指定追加 mydomain = <domain name> # 133行目あたりコメント #myorigin = /etc/mailname # 135行目あたり:コメント解除 myorigin = $mydomain # 149行目あたり:コメント解除 inet_interfaces = all # 197行目あたり:コメント解除 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain # 240行目あたり:コメント解除 local_recipient_maps = unix:passwd.byname $alias_maps # 285行目あたり:コメント解除 mynetworks_style = subnet # 299行目あたり:コメント解除し、自ネットワークに変更 mynetworks = 127.0.0.0/8, 192.168.11.0/24 # 423行目あたり:コメント解除 alias_maps = hash:/etc/aliases # 434行目あたり:コメント解除 alias_database = hash:/etc/aliases # 456行目あたり:コメント解除 home_mailbox = Maildir/ # 592行目あたり:コメントにしてその下に追記 #smtpd_banner = $myhostname ESMTP $mail_name (Debian) smtpd_banner = $myhostname ESMTP # 666行目あたり:追加 sendmail_path = /usr/sbin/postfix # 670行目あたり:コメント解除 newaliases_path = /usr/bin/newaliases # 675行目あたり:コメント解除 mailq_path = /usr/bin/mailq # 681行目あたり:コメント解除 setgid_group = postdrop # 最終行へ追記 # SMTP VRFY コマンドは無効にする disable_vrfy_command = yes # クライアントに対して HELO コマンドを要求する smtpd_helo_required = yes # 送受信メールサイズを10Mに制限 message_size_limit = 10485760 # メールボックスサイズを1Gに制限 mailbox_size_limit = 1073741824 # SMTP-Auth 設定 smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname smtpd_recipient_restrictions = permit_mynetworks, permit_auth_destination, permit_sasl_authenticated, reject |
③設定ファイル(master.cf)編集
1 |
# vi /etc/postfix/master.cf |
編集内容
1 2 3 4 5 6 |
19,23行目 : コメント解除 submission inet n - y - - smtpd # -o syslog_name=postfix/submission # -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes # -o smtpd_tls_auth_only=yes |
設定反映、再起動
Debian12.xでは/etc/aliasesが作成されたが、Debian13では作成されなかったので、手作業で作成した。
1 2 3 4 5 |
# touch /etc/aliases # vi /etc/aliases postmaster: root huong: huong |
1 2 |
# newaliases # systemctl restart postfix |
2.2 Dovecot : インストール 設定
①Dovecot をインストール
DovecotをインストールしてPOP/IMAPサーバーを構築します。POP は 110/TCP, IMAP は 143/TCP を使用します。
1 |
# apt -y install dovecot-core dovecot-pop3d dovecot-imapd |
②Postfix に SASL機能が提供できるように Dovecot を設定
dovecot2.4.xでは設定ファイルの書き方が大幅に変更されており思考錯誤でしましたので、間違っているかもしれませんがご了承ください
1 2 3 4 5 6 |
# vi /etc/dovecot/dovecot.conf 24行目 : 追加 protocols = imap pop3 31行目:コメント解除 listen = *, :: |
1 2 3 4 5 6 |
# vi /etc/dovecot/conf.d/10-auth.conf 12行目 : コメント解除 auth_allow_cleartext = yes 95行目 : コメント解除 auth_mechanisms = plain login |
1 2 3 4 5 6 7 8 9 10 11 |
# vi /etc/dovecot/conf.d/10-mail.conf 26-28行目を下記のとおり変更 mail_driver = maildir mail_path = /home/%{user}/Maildir mail_inbox_path = /home/%{user}/Maildir/ 35-38行目 : コメントにする #mail_driver = mbox #mail_home = /home/%{user|username} #mail_path = %{home}/mail #mail_inbox_path = /var/mail/%{user} |
1 2 3 4 5 6 7 8 |
# vi /etc/dovecot/conf.d/10-master.conf 110-112行目:コメント解除し追記 # Postfix smtp-authi unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } |
③設定反映、再起動
1 |
# systemctl restart dovecot |
2.3 メールユーザーアカウント登録
メール用のユーザーアカウントを登録します。
OS上のユーザーアカウントでメールも利用する場合の設定です
OS上のユーザーアカウントでメールを利用する場合は、追加の設定は不要で OSユーザーを登録するのみです
①メールクライアントインストール
1 |
# apt -y install mailutils |
②メールボックスは Maildir を参照するよう設定
1 |
# echo 'export MAIL=$HOME/Maildir/' >> /etc/profile.d/mail.sh |
2.4 ポートの開放
1 2 3 4 |
# ufw allow pop3 # ufw allow imap # ufw allow smtp # ufw reload |
2.5 動作確認 ①
①自身にテストメール送信 [mail (ユーザー名)@(ホスト名)]
ユーザー名 : huong
1 2 3 4 5 6 7 8 |
# su - huong $ mail huong@localhost # Cc の宛先 Cc: # 件名 Subject: Test Mail # 本文 This is the first mail. |
本文を終了する場合は Ctrl + D キー
受信メール確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$ mail "/home/huong/Maildir/": 1 message 1 new >N 1 huong Sun Oct 12 00:58 13/427 Test Mail ? 1 Return-Path: <huong@Lepard> X-Original-To: huong@localhost Delivered-To: huong@localhost Received: by mail.korodes.com (Postfix, from userid 1000) id D22E9BF484; Sun, 12 Oct 2025 09:58:07 +0900 (JST) To: <huong@localhost> Subject: Test Mail User-Agent: mail (GNU Mailutils 3.19) Date: Sun, 12 Oct 2025 09:58:07 +0900 Message-Id: <20251012005807.D22E9BF484@mail.korodes.com> From: huong <huong@Lepard> This is the first mail. ? q Saved 1 message in /home/huong/mbox Held 0 messages in /home/huong/Maildir/ |
2.6 動作確認 ②
Mozilla Thunderbirdにアカウントを設定し、確認します(メールユーザーとしてOSユーザーhuongの場合)
Thunderbirdを起動し、右上の[三本]メニューの[New Account][Email]をクリック



Full name : 任意の名称
Email address : huong@<domain-name>
をそれぞれ入力し、「Continue」クリック


受信サーバーの設定
[Connection security]を[None]にして[Continue]をクリック

送信サーバーの設定
[Connection security]を[None]にして[Test]をクリック




メールアカウントの作成が成功しましたので、[Finish]をクリック

3 メールサーバーPostfixに ClamAV適用
Postfix と Clamav を連携させて 送受信メールをリアルタイムスキャンできるように設定します
①Amavisd および Clamav Daemon をインストールして Clamav Daemon を起動します
1 |
# apt -y install clamav-daemon amavisd-new |
サーバーがホスト名として完全修飾ドメイン名(FQDN)を使用していない場合、Amavisの起動に失敗する可能性があります。また、OSのホスト名が変更される可能性があるため、有効なホスト名をAmavis構成ファイルに直接設定します
1 2 3 4 5 6 7 8 9 10 |
# vi /etc/amavis/conf.d/05-node_id use strict; # $myhostname is used by amavisd-new for node identification, and it is # important to get it right (e.g. for ESMTP EHLO, loop detection, and so on) . chomp($myhostname = `hostname --fqdn`); # To manually set $myhostname, edit the following line with the correct Full y # Qualified Domain Name (FQDN) and remove the # at the beginning of the line . # $myhostname = "mail.<domain name>"; 1; # ensure a defined return |
②ウィルススキャン有効化
1 2 3 4 5 |
# vi /etc/amavis/conf.d/15-content_filter_mode #13-14行目 : コメント解除してウィルススキャン有効化 @bypass_virus_checks_maps = ( \%bypass_virus_checks, \@bypass_virus_checks_acl, \$bypass_virus_checks_re); |
③自身のドメイン名を登録
1 |
# echo '<yourDomain>' > /etc/mailname |
④postfix設定ファイル(Main.cf)編集
1 2 3 |
# vi /etc/postfix/main.cf 最終行へ追記 content_filter=smtp-amavis:[127.0.0.1]:10024 |
⑤postfix設定ファイル(master.cf)編集
1 |
# vi /etc/postfix/master.cf |
編集内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# 最終行へ以下全行追記 smtp-amavis unix - - n - 2 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes 127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000 |
⑥設定反映
1 2 3 |
# usermod -G clamav amavis # usermod -G amavis clamav # systemctl restart clamav-daemon amavis postfix |
Thuderbird等で自己宛に空メールを送ると、受信メールのヘッダーに次のようなメッセージがあれば成功です。
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
Return-Path: xxxxx@xxxxxxx.com
X-Original-To: xxxxx@xxxxxxx.com
Delivered-To: xxxxx@xxxxxxx.com
Received: from localhost (localhost [127.0.0.1])
by mail.xxxxxxx.com (Postfix) with ESMTP id 2FBDBC12CB
forxxxxxx@xxxxxxx.com; Sun, 12 Oct 2025 10:14:16 +0900 (JST)
X-Virus-Scanned: Debian amavis at xxxxxxx.com
Received: from mail.xxxxxxx.com ([127.0.0.1])
by localhost (mail.xxxxxxx.com [127.0.0.1]) (amavis, port 10024) with ESMTP
id 1_rNMOo-38GC for xxxxx@xxxxxxx.com;
Sun, 12 Oct 2025 10:14:15 +0900 (JST)
Received: from [192.168.11.6] (buffalo.setup [192.168.11.1])
by mail.xxxxxxx.com (Postfix) with ESMTPA id C1B8FC12B9
for xxxxx@xxxxxxx.com; Sun, 12 Oct 2025 10:14:15 +0900 (JST)
Message-ID: 2b2a3ff7-0ce8-4a92-98d2-8c835dad06d8@korodes.com
Date: Sun, 12 Oct 2025 10:14:16 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: xxxxx xxxxx@xxxxxxx.com
Content-Language: en-US
To: xxxxx xxxxx@xxxxxxx.com
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
4 メールサーバーに スパムチェック適用
4.1 spamassassinとprocmailを使用して、スパムチェック
①spamassassinとprocmailインストール
1 |
# apt -y install procmail spamassassin |
➁procmailの設定
設定をユーザー全員に適用する場合は /etc/procmailrc を作成
各個人毎に設定する場合は、各ユーザホームディレクトリに ~/.procmailrc を作成
今回は/etc/procmailrc を作成する
1 |
# vi /etc/procmailrc |
procmailrcの内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
SHELL=/bin/bash PATH=/usr/bin:/bin:/usr/local/bin DROPPRIVS=yes MAILDIR=$HOME/Maildir DEFAULT=$MAILDIR/ SPAM=$MAILDIR/.Spam/ LOGFILE=$HOME/.procmail.log # ログ出力先 VERBOSE=ON # 詳細ログ出力 # メールヘッダー中に「 X-Spam-*** 」の記述がなければ spamassassin を起動します :0fw *!^X-Spam.* |spamassassin # メールヘッダー中に「 X-Spam-Status: Yes 」の記述があれば、「 .Spam 」ディレクトリにメールを格納します :0 * ^X-Spam-Status: Yes $SPAM |
➂各ユーザの~/Maildirディレクトリに.Spamディレクトリを作成
1 2 |
# su - <user> $ mkdir Maildir/.Spam |
④postfixの設定ファイル編集
root権限で行う
1 2 3 4 |
# vi /etc/postfix/main.cf 486行目あたり コメント解除 mailbox_command = /usr/bin/procmail -a "$EXTENSION" |
⑤postfix、spamassassinを再起動
1 2 3 4 |
# systemctl restart postfix spamd # systemctl enable spamassassin-maintenance.timer Created symlink '/etc/systemd/system/timers.target.wants/spamassassin-maintenance.timer' → '/usr/lib/systemd/system/spamassassin-maintenance.timer'. |
⑥Thudrtbirdで確認
自分あてに空メール送信し、ヘッダーに下記のように表示されれば正常
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
Return-Path: <xxxxx@xxxxxxx.com>
X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on Lepard
X-Spam-Level: ***
X-Spam-Status: No, score=3.1 required=5.0 tests=ALL_TRUSTED,EMPTY_MESSAGE,
MISSING_SUBJECT autolearn=no autolearn_force=no version=4.0.1
X-Original-To: xxxxx@xxxxxxx.com
Delivered-To: xxxxx@xxxxxxx.com
Received: from localhost (localhost [127.0.0.1])
by mail.xxxxxxx.com (Postfix) with ESMTP id 45868C12D0
for <xxxxx@xxxxxxx.com>; Sun, 12 Oct 2025 10:22:57 +0900 (JST)
X-Virus-Scanned: Debian amavis at xxxxxxx.com
Received: from mail.xxxxxxx.com ([127.0.0.1])
by localhost (mail.xxxxxxx.com [127.0.0.1]) (amavis, port 10024) with ESMTP
id 0tFUthSzb15h for <xxxxx@xxxxxxx.com>;
Sun, 12 Oct 2025 10:22:56 +0900 (JST)
Received: from [192.168.11.6] (buffalo.setup [192.168.11.1])
by mail.xxxxxxx.com (Postfix) with ESMTPA id C027FC12B9
for <xxxxx@xxxxxxx.com>; Sun, 12 Oct 2025 10:22:56 +0900 (JST)
Message-ID: <90efa65e-71ff-4d7e-95d1-8b6d7d7408ee@xxxxxxx.com>
Date: Sun, 12 Oct 2025 10:22:57 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: xxxxx <xxxxx@xxxxxxx.com>
Content-Language: en-US
To: xxxxx <xxxxx@xxxxxxx.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
⑦スパムチェック確認
自分自身にメール本文が「XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X」のメールを送るとメールは配信されずSpamフォルダへ振り分けられていることを確認する
ヘッダーには次のように記載されている
Received: from localhost by Lepard
with SpamAssassin (version 4.0.1);
Sun, 12 Oct 2025 10:26:48 +0900
From: xxxxx xxxxx@xxxxxxx.com
To: huong xxxxx@xxxxxxx.com
Subject: Spam Test
Date: Sun, 12 Oct 2025 10:26:47 +0900
Message-Id: be80f716-bff9-47d2-ab7b-02b4a3a7aabb@korodes.com
X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on Lepard
X-Spam-Flag: YES
X-Spam-Level: *************************************************
X-Spam-Status: Yes, score=999.7 required=5.0 tests=ALL_TRUSTED,GTUBE,
HTML_MESSAGE,MPART_ALT_DIFF autolearn=no autolearn_force=no
version=4.0.1
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----------=_68EB03D8.58805BE6"
This is a multi-part message in MIME format.
------------=_68EB03D8.58805BE6
Content-Type: text/plain; charset=UTF-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
Spam detection software, running on the system "Lepard",
has identified this incoming email as possible spam. The original
message has been attached to this so you can view it or label
similar future email. If you have any questions, see
the administrator of that system for details.
-----------------------------------------------------------------------------------------------------------------------
4.2 スパムメールの学習
SpamAssassin のメールの学習機能で、判定の精度を高める
①「.Spam」ディレクトリの中身を全てスパムメールとして学習
1 2 |
# /usr/bin/sa-learn --spam /home/*/Maildir/.Spam/cur Learned tokens from 0 message(s) (0 message(s) examined) |
➁非スパムメール(通常のメール)の学習
1 2 |
# /usr/bin/sa-learn --ham /home/*/Maildir/cur Learned tokens from 7 message(s) (7 message(s) examined) |
➂自動で学習させるスクリプト作成
1 |
# vi /opt/script/spam-learns.sh |
1 2 3 4 5 6 7 8 9 |
#! /bin/sh # スパムメールの学習 /usr/bin/sa-learn --spam /home/*/Maildir/.Spam/cur # 通常のメールを学習 /usr/bin/sa-learn --ham /home/*/Maildir/cur # スパムメール保存ディレクトリの中身を強制的に消去してよいのなら以下の記述を追加 /bin/rm -f /home/*/Maildir/.Spam/cur |
1 |
# chmod 750 /opt/script/spam-learns.sh |
④システム起動時に SpamAssassin を自動的に起動
1 2 3 |
# systemctl enable spamd Synchronizing state of spamd.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable spamd |