1. clamav
1.1 インストール
# dnf -y install clamav clamd clamav-update
1.2 設定ファイル編集
# vi /etc/clamd.d/scan.conf
14行目
# Default: disabled
LogFile /var/log/clamd.scan ← コメント解除
77行目
# Default: disabled
PidFile /run/clamd.scan/clamd.pid ← コメント解除
103行目 : 追加
# Path to a local socket file the daemon will listen on.
# Default: disabled (must be specified by a user)
#LocalSocket /run/clamd.scan/clamd.sock
#LocalSocket /run/clamd.scan/clamd.sock
LocalSocket /var/run/clamd.scan/clamd.sock
233行目
# Run as another user (clamd must be started by root for this option to work)
# Default: don't drop privileges
#User clamscan ←コメントアウト(root権限で動作するようにする)
1.3 ウイルス定義ファイル更新設定
# vi /etc/freshclam.conf
78行目 : コメントにして下に追加
#DatabaseMirror database.clamav.net
DatabaseMirror db.jp.clamav.net
154 行目あたりに追加
#NotifyClamd /path/to/clamd.conf
NotifyClamd /etc/clamd.d/scan.conf
1.4 ウイルス定義ファイル最新化
# freshclam
ClamAV update process started at Sun Nov 8 13:25:33 2026
daily database available for download (remote version: 28176)
Time: 0.3s, ETA: 0.0s [========================>] 22.36MiB/22.36MiB
Testing database: '/var/lib/clamav/tmp.db6f6abbcb/clamav-2903aab0c7e2e50b9dec8e4f415ba219.tmp-daily.cvd' ...
Database test passed.
daily.cvd updated (version: 28176, sigs: 355854, f-level: 90, builder: svc.clamav-publisher)
main database available for download (remote version: 63)
Time: 0.8s, ETA: 0.0s [========================>] 84.95MiB/84.95MiB
Testing database: '/var/lib/clamav/tmp.db6f6abbcb/clamav-12a8942cdf6d04913d0980902924c59c.tmp-main.cvd' ...
Database test passed.
main.cvd updated (version: 63, sigs: 3287027, f-level: 90, builder: tomjudge)
bytecode database available for download (remote version: 339)
Time: 0.1s, ETA: 0.0s [========================>] 275.10KiB/275.10KiB
Testing database: '/var/lib/clamav/tmp.db6f6abbcb/clamav-99d7e479bcaccacdbab5a727daab01c8.tmp-bytecode.cvd' ...
Database test passed.
bytecode.cvd updated (version: 339, sigs: 80, f-level: 90, builder: nrandolp)
WARNING: Clamd was NOT notified: Can't connect to clamd through /var/run/clamd.scan/clamd.sock: No such file or directory
1.5 Clam AntiVirus起動・自動起動設定
# systemctl start clamd@scan
# systemctl enable clamd@scan
Created symlink /etc/systemd/system/multi-user.target.wants/clamd@scan.service → /usr/lib/systemd/system/clamd@.service.
動作確認
# systemctl status clamd@scan
● clamd@scan.service - clamd scanner (scan) daemon
Loaded: loaded (/usr/lib/systemd/system/clamd@.service; enabled; preset: disabled)
Drop-In: /usr/lib/systemd/system/service.d
└─10-timeout-abort.conf
Active: active (running) since Sun 2026-11-08 13:26:54 JST; 21s ago
Invocation: fa8b09e4a74b443e8f2080266c0e5f4d
Docs: man:clamd(8)
man:clamd.conf(5)
https://www.clamav.net/documents/
Main PID: 4109 (clamd)
Tasks: 2 (limit: 4564)
Memory: 943.3M (peak: 956.4M)
CPU: 7.148s
CGroup: /system.slice/system-clamd.slice/clamd@scan.service
└─4109 /usr/sbin/clamd -c /etc/clamd.d/scan.conf
Nov 08 13:26:54 Lepard clamd[4109]: ELF support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: Mail files support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: OLE2 support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: PDF support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: SWF support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: HTML support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: XMLDOCS support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: HWP3 support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: OneNote support enabled.
Nov 08 13:26:54 Lepard clamd[4109]: Self checking every 600 seconds.
1.6 ウィスルスキャンを実施
テスト用ウィルスをダウンロードして、ウィスルスキャンを実施
# cd /home
# wget https://secure.eicar.org/eicar.com.txt
# clamscan --infected --remove --recursive /home
/home/eicar.com.txt: Eicar-Test-Signature FOUND
/home/eicar.com.txt: Removed.
----------- SCAN SUMMARY -----------
Known viruses: 3628258
Engine version: 1.4.6
Scanned directories: 5
Scanned files: 12
Infected files: 1
Data scanned: 0.01 MB
Data read: 0.00 MB (ratio 2.00:1)
Time: 10.415 sec (0 m 10 s)
Start Date: 2026:11:08 13:28:27
End Date: 2026:11:08 13:28:37
----------- SCAN SUMMARY -----------
Known viruses: 3628258
Engine version: 1.4.6
Scanned directories: 5
Scanned files: 12
Infected files: 1
Data scanned: 0.01 MB
Data read: 0.00 MB (ratio 2.00:1)
Time: 10.415 sec (0 m 10 s)
Start Date: 2026:11:08 13:28:27
End Date: 2026:11:08 13:28:37
と表示されウイルスファイルが検知されています
1.7 ウィルススキャン自動実行スクリプトの導入
スクリプトファイル格納ディレクトリー作成
# mkdir -p /var/www/system
システムのフルスキャンスクリプト"clamscan.sh"を/var/www/systemに作成
# vi /var/www/system/clamscan.sh
下記を記入
#!/bin/bash
PATH=/usr/bin:/bin
# excludeopt setup
excludelist=/var/www/system/clamscan.exclude
if [ -s $excludelist ]; then
for i in `cat $excludelist`
do
if [ $(echo "$i"|grep \/$) ]; then
i=`echo $i|sed -e 's/^\([^ ]*\)\/$/\1/p' -e d`
excludeopt="${excludeopt} --exclude-dir=$i"
else
excludeopt="${excludeopt} --exclude=$i"
fi
done
fi
# signature update
freshclam
# virus scan
clamscan --recursive --remove ${excludeopt} /
スクリプトに実行権限付与
# chmod 700 /var/www/system/clamscan.sh
1.8 ウイルススキャン除外ディレクトリー設定
# echo "/sys/" >> /var/www/system/clamscan.exclude
# echo "/proc/" >> /var/www/system/clamscan.exclude
sys ディレクトリ、proc ディレクトリは対象外にする
1.9 ウィルススキャンの定期実行
# crontab -e
0 1 * * * /var/www/system/clamscan.sh > /dev/null 2>&1
試しにスクリプトを実行し、フルスキャンする(時間がかかります)
# /var/www/system/clamscan.sh
----------- SCAN SUMMARY -----------
Known viruses: 3628258
Engine version: 1.4.6
Scanned directories: 9382
Scanned files: 60228
Infected files: 0
Data scanned: 8193.93 MB
Data read: 3362.96 MB (ratio 2.44:1)
Time: 7674.794 sec (127 m 54 s)
Start Date: 2026:11:08 13:34:59
End Date: 2026:11:08 15:42:5
2. メールサーバー (Postfix)
2.1 Postfixのインストール
Postfix をインストールして SMTP サーバーを構築します
# dnf -y install postfix
Postfix がインストールされているか確認
# rpm -qa | grep postfix
postfix-3.11.7-1.fc45.x86_64
2.2 Postfix をサービスへ登録
# systemctl enable postfix.service
Created symlink /etc/systemd/system/multi-user.target.wants/postfix.service → /usr/lib/systemd/system/postfix.service.
2.3 postfix の設定ファイル編集
postfix の設定ファイル、main.cf とmaster.cf ファイルをバックアップ
# cp -p /etc/postfix/main.cf `date '+/etc/postfix/main.cf.%Y%m%d'`
# cp -p /etc/postfix/master.cf `date '+/etc/postfix/master.cf.%Y%m%d'`
メール不正中継防止のため、Dovecot の SASL 機能を利用して、送信にも認証を要求するように Postfix を設定します
# vi /etc/postfix/main.cf
100 行目あたりに追加
#myhostname = virtual.domain.tld
myhostname = mail.[ドメイン]
107 行目あたりに自ドメイン名を追加
#mydomain = domain.tld
mydomain = [ドメイン]
122 行目あたりコメントアウト削除
myorigin = $mydomain
136 行目あたりコメントアウト削除
inet_interfaces = all
139 行目あたりコメントアウト
#inet_interfaces = localhost
187 行目あたりをコメントアウトし、188 行目をコメント解除
#mydestination = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
293 行目あたりに追加
#mynetworks = 168.100.189.0/28, 127.0.0.0/8
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
mynetworks = 192.168.11.0/24, 127.0.0.0/8 ←192.168.11.0/24は各自環境に合わす
447 行目あたりコメント削除
メールの格納形式の設定をします。
#home_mailbox = Mailbox
home_mailbox = Maildir/
454 行目あたりコメント削除
#mail_spool_directory = /var/mail
mail_spool_directory = /var/spool/mail
602 行目あたりに追加
#smtpd_banner = $myhostname ESMTP $mail_name
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
smtpd_banner = $myhostname ESMTP unknown
以下の内容を最終行に追加
# 送受信メールサイズを 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 = $mydomain
smtpd_recipient_restrictions = permit_mynetworks, permit_auth_destination, permit_sasl_authenticated, reject
2.4 SMTP ポート(25 番ポート) の解放
# firewall-cmd --add-service=smtp --permanent
success
# firewall-cmd --reload
success
2.5 Postfix を起動
# systemctl start postfix
3. メールサーバー (Dovecot)
3.1 Dovecotインストール
# dnf -y install dovecot
3.2 dovecot.conf ファイルを編集
# cp -p /etc/dovecot/dovecot.conf `date '+ /etc/dovecot/dovecot.conf.%Y%m%d'`
# vi /etc/dovecot/dovecot.conf
22 行目あたりのprotocolsを下記のように変更
protocols {
imap = yes
# lmtp = yes
pop3 = yes
}
28行目当たり : 変更
#mail_path = ~/mail
mail_path = ~/Maildir
30行目当たりに追加
auth_allow_cleartext = yes
auth_mechanisms = plain login
48行目当たり : 変更
#ssl = required
ssl = no
最終行に追加
service auth {
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
}
# IPv4のみ
listen = *
3.7 dovecot をサービスに登録し、起動する
# systemctl enable dovecot.service
Created symlink /etc/systemd/system/multi-user.target.wants/dovecot.service → /usr/lib/systemd/system/dovecot.service.
# systemctl start dovecot.service
3.8 firewalldでPOP/IMAP サービスの許可ポート開放を行う
POP は [110/TCP], IMAP は [143/TCP]
# firewall-cmd --permanent --add-service=pop3
# firewall-cmd --permanent --add-service=imap
# firewall-cmd --reload
4.メールユーザー作成と動作確認
4.1 事前準備
①新規ユーザーの為の前処理
新規でユーザーを追加した場合、自動的にメールの送受信ができるよう設定をします。
# mkdir -p /etc/skel/Maildir/{new,cur,tmp}
# chmod -R 700 /etc/skel/Maildir/
# echo "~/Maildir/"> /etc/skel/.forward
# chmod 600 /etc/skel/.forward
②既存ユーザーのメール環境前処理
すでに作成してあるユーザー(huong)がメールの送受信が出来るよう設定をします。
# mkdir -p /home/huong/Maildir/{new,cur,tmp}
# chown -R huong:huong /home/huong/Maildir/
# chmod 700 /home/huong/Maildir
# chmod 700 /home/huong/Maildir/{new,cur,tmp}
4.2 ユーザーアカウント作成
メールクライアントインストール
# dnf -y install s-nail
# echo 'export MAIL=$HOME/Maildir' >> /etc/profile.d/mail.sh
ユーザー [linux] を追加
# useradd linux
# passwd linux
ユーザー linux のパスワードを変更。
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
4.3 動作確認 ①
メールユーザーでログインして、テストメールを送る
# su - linux
$ mail linux@localhost
Subject: Test Mail
To: linux@localhost
test mail
^D ← 本文終了するには「Ctrl+D」
-------
(Preliminary) Envelope contains:
To: linux@localhost
Subject: Test Mail
Send this message [yes/no, empty: recompose]? y
メールを確認する
$ mail
s-nail version v14.9.25. Type `?' for help
/home/linux/Maildir: 1 message 1 new
▸N 1 linux@korodes.com 2026-11-08 16:16 17/516 "Test Mail "
& 1
[-- Message 1 -- 17 lines, 516 bytes --]:
Date: Sun, 08 Nov 2026 16:16:05 +0900
To: linux@localhost
Subject: Test Mail
Message-Id: <20261108071605.385D78FA9AB@mail.korodes.com>
From: linux@korodes.com
test mail
& q
Held 1 message in /home/linux/Maildir
You have mail in /home/linux/Maildir
4.4 動作確認 ②
Mozilla Thunderbirdにアカウントを設定し、確認します(メールユーザーとしてOSユーザーhuongの場合)
Thunderbirdを起動し、右上の[三本]メニューの[New Account][Email]をクリック


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

[EDIT CONFIGURATION]をクリック

受信サーバー・送信サーバーの設定
下図のように設定してを[Connect]クリック

パスワードを入力

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

Mail サーバー : Postfix + Clamav + clamav-milter+SpamAssassin
1.メールのリアルタイムスキャン
①clamav-milterインストール
Clam AntiVirusを使用してメールサーバー側でメールに対するウイルスチェックを行う。
メールサーバーとClam AntiVirusとの連携はclamav-milterを利用して行なう。
# dnf -y install clamav-milter clamav-milter-systemd
➁clamav-milter設定
clamav-milter設定ファイル編集
# vi /etc/mail/clamav-milter.conf
6行目
# Comment or remove the line below.
#Example ← 行頭に#を追加してコメントアウト
23-24行目当たり: 追加
# Default: no default
#MilterSocket /run/clamav-milter/clamav-milter.socket
#MilterSocket inet:7357
MilterSocket /var/run/clamav-milter/clamav-milter.socket ← clamav-milterのUNIXソケット名を指定
MilterSocketMode 660 ← clamav-milterのUNIXソケットのアクセス権を指定
98行目当たり: 追加
# Default: no default
#ClamdSocket tcp:scanner.mydomain:7357
#ClamdSocket unix:/run/clamav/clamd.sock
ClamdSocket unix:/var/run/clamd.scan/clamd.sock ← Clam AntiVirusのUNIXソケット名を指定(/etc/clamd.d/scan.confのLocalSocketオプションに合わせる)
171行目当たり : 追加
# Action to be performed on infected messages
# Default: Quarantine
#OnInfected Quarantine
OnInfected Blackhole ← ウイルス感染メールは破棄
193行目当たり : 追加
#AddHeader Replace
AddHeader Yes ← メールヘッダにウイルスチェック実施した旨を出力
253行目当たり : コメント削除してログ出力先をメールログにする
# Default: LOG_LOCAL6
LogFacility LOG_MAIL
➂clamav-milter起動・自動起動設定
# systemctl start clamav-milter
# systemctl enable clamav-milter
④Postfix・clamav-milter連携設定
Postfix設定ファイル編集
# vi /etc/postfix/main.cf
下記を追加
milter_default_action = tempfail
smtpd_milters = unix:/var/run/clamav-milter/clamav-milter.socket
non_smtpd_milters = unix:/var/run/clamav-milter/clamav-milter.socket
⑤clamiltグループにpostfixユーザーを追加
# usermod -G clamilt -a postfix
⑥Postfix設定反映
# systemctl restart postfix
⑦Thunderbirdで確認
Thunderbirdで自分宛に空メールを送付し、受信メールのヘッダー表示部分に下記のように
X-Virus-Scanned: clamav-milter 1.4.6 at Lepard
X-Virus-Status: Clean
が表示される
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 [192.168.11.6] (_gateway [192.168.11.1])
by mail.xxxxxxx.com (Postfix) with ESMTPA id 76DE4CA688
for <xxxxx@xxxxxxx.com>; Mon, 09 Nov 2026 13:17:05 +0900 (JST)
Message-ID: <54eca0e1-7c62-40ed-90e4-5a51fe84ff2e@xxxxxxx.com>
Date: Mon, 9 Nov 2026 13:17:05 +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
X-Virus-Scanned: clamav-milter 1.4.6 at Lepard
X-Virus-Status: Clean
自分自身にメール本文が「X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*」のメールを送ってみて、メールが破棄されて届かないことを確認する
2.メールのスパム対策
2.1 SpamAssassin・spamass-milter・postfix設定
①SpamAssassin・spamass-milterインストール
# dnf -y install spamassassin spamass-milter-postfix
➁SpamAssassin起動
# systemctl start spamassassin
➂SpamAssassin の設定
# vi /etc/mail/spamassassin/v310.pre
24 行目あたり行頭の#を削除
loadplugin Mail::SpamAssassin::Plugin::DCC
④SpamAssassin 設定ファイル最新化スクリプト
# cd /var/www/system
# vi spamassassin-update.sh
下記を記入
#!/bin/bash
cd /etc/mail/spamassassin
wget -q https://github.com/kittyfreak/spamassassin_user_prefs/archive/refs/heads/main.zip
[ $? -ne 0 ] && exit
unzip main.zip >/dev/null 2>&1
[ $? -ne 0 ] && exit
rm -f main.zip
mv spamassassin_user_prefs-main/user_prefs .
rm -rf spamassassin_user_prefs-main
diff user_prefs user_prefs.org > /dev/null 2>&1
if [ $? -ne 0 ]; then
cp user_prefs local.cf
echo "report_safe 0" >> local.cf
echo "rewrite_header Subject ***SPAM***" >> local.cf
if [ -f /etc/rc.d/init.d/spamassassin ]; then
/etc/rc.d/init.d/spamassassin restart > /dev/null
else
systemctl restart spamassassin > /dev/null
fi
fi
cp user_prefs user_prefs.org
spamassassin-update スクリプトに実行権限を付与し、実行
# chmod 700 /var/www/system/spamassassin-update.sh
# /var/www/system/spamassassin-update.sh
/etc/mail/spamassassin ディレクトリにSpamAssassin 設定ファイル(local.cf)が当日日付で
作成されていることを確認
# ls -l /etc/mail/spamassassin
total 1644
drwxr-xr-x 2 root root 40 Nov 9 13:35 channel.d
-rw-r--r-- 1 root root 1649 Jul 17 09:00 init.pre
-rw-r--r-- 1 root root 500636 Nov 9 13:37 local.cf
drwx------ 2 root root 6 Jul 17 09:00 sa-update-keys
-rw-r--r-- 1 root root 62 Jul 17 09:00 spamassassin-default.rc
-rwxr-xr-x 1 root root 39 Jul 17 09:00 spamassassin-helper.sh
-rw-r--r-- 1 root root 55 Jul 17 09:00 spamassassin-spamc.rc
-rw-r--r-- 1 root root 500588 Apr 30 2023 user_prefs
-rw-r--r-- 1 root root 500588 Nov 9 13:37 user_prefs.org
-rw-r--r-- 1 root root 2262 Nov 9 13:36 v310.pre
-rw-r--r-- 1 root root 1168 Jul 17 09:00 v312.pre
-rw-r--r-- 1 root root 2416 Jul 17 09:00 v320.pre
-rw-r--r-- 1 root root 1237 Jul 17 09:00 v330.pre
-rw-r--r-- 1 root root 1020 Jul 17 09:00 v340.pre
-rw-r--r-- 1 root root 1315 Jul 17 09:00 v341.pre
-rw-r--r-- 1 root root 1519 Jul 17 09:00 v342.pre
-rw-r--r-- 1 root root 1266 Jul 17 09:00 v343.pre
-rw-r--r-- 1 root root 1482 Jul 17 09:00 v400.pre
-rw-r--r-- 1 root root 1118 Jul 17 09:00 v401.pre
-rw-r--r-- 1 root root 1145 Jul 17 09:00 v402.pre
SpamAssassin 設定ファイルを最新化するスクリプトが毎日自動実行されるようcron に設定
# crontab -e
0 2 * * * /var/www/system/spamassassin-update.sh > /dev/null 2>&1
⑤spamass-milter起動・自動起動設定
# systemctl start spamass-milter
# systemctl enable spamass-milter
Created symlink /etc/systemd/system/multi-user.target.wants/spamass-milter.service → /usr/lib/systemd/system/spamass-milter.service.
⑥Postfix・spamass-milter連携設定
# vi /etc/postfix/main.cf
下記を追加
milter_default_action = tempfail
smtpd_milters = unix:/var/run/clamav-milter/clamav-milter.socket,unix:/run/spamass-milter/postfix/sock ※既にclamav-milterが定義されている場合
non_smtpd_milters = unix:/var/run/clamav-milter/clamav-milter.socket,unix:/run/spamass-milter/postfix/sock ※既にclamav-milterが定義されている場合
⑦postfix を再起動
# systemctl restart postfix
⑧Procmail設定
procmail設定ファイル作成
# vi /etc/procmailrc
SHELL=/bin/bash
PATH=/usr/bin:/bin
DROPPRIVS=yes
MAILDIR=$HOME/Maildir
DEFAULT=$MAILDIR/
# ログ出力先
LOGFILE=$HOME/.procmail.log
# 詳細ログ出力
VERBOSE=ON
procmailログローテーション設定ファイル作成
# vi /etc/logrotate.d/procmail
下記記入
/home/*/.procmail.log {
missingok
nocreate
notifempty
}
⑨Postfix・Procmail連携設定
# vi /etc/postfix/main.cf
478行目当たり : 追加
#mailbox_command = /some/where/procmail
#mailbox_command = /some/where/procmail -a "$EXTENSION"
mailbox_command = /usr/bin/procmail ← 追加(Procmailと連携するようにする)
Postfix設定反映
# systemctl restart postfix
2.2 スパムメール振分け設定
SpamAssassinによりメールヘッダにスパムメールの印を付けられたメールはスパム専用メールボックスへ、その他のメールは通常どおりのメールボックスへ配送するようにする。
①スパム専用メールボックス作成
既存ユーザーについては、メールボックスにスパム専用メールボックスを追加する。
また、新規ユーザーについては、ユーザー追加時に自動でスパム専用メールボックスが作成されるようにする 。
スパム専用メールボックス作成スクリプト作成
# vi spamfolder-create
下記を記入
#!/bin/bash
for user in `ls /home`
do
id -u $user > /dev/null 2>&1
if [ $? -eq 0 ] && [ ! -d /home/$user/Maildir/.Spam/new ]; then
mkdir -p /home/$user/Maildir/.Spam/new
mkdir -p /home/$user/Maildir/.Spam/cur
mkdir -p /home/$user/Maildir/.Spam/tmp
chmod -R 700 /home/$user/Maildir/.Spam
chown -R $user:$user /home/$user/Maildir/.Spam
echo $user
fi
done
スパム専用メールボックス作成スクリプト実行
# bash spamfolder-create
huong
linux
smbuser
新規ユーザー対策
新規ユーザー追加時に自動でスパム専用メールボックス作成
# mkdir -p /etc/skel/Maildir/.Spam/{new,cur,tmp}
# chmod -R 700 /etc/skel/Maildir/.Spam
➁スパムメール振分け
SpamAssassinがスパム判定したメールはスパム専用メールボックスへ配送する
# vi /etc/procmailrc
以下を最後尾へ追加
# SpamAssassinがスパム判定したメールはスパム専用メールボックスへ配送
:0
*^X-Spam-Flag: YES
$HOME/Maildir/.Spam/
➂spamass-milter確認
自分自身に空メールを送ると、受信したメールのヘッダに以下のメッセージが付加されている
X-Spam-Status: No, score=2.3 required=13.0 tests=ALL_TRUSTED,
CONTENT_TYPE_PRESENT,EMPTY_MESSAGE autolearn=no autolearn_force=no
version=4.0.2
X-Spam-Level: **
X-Spam-Checker-Version: SpamAssassin 4.0.2 (2025-08-27) on Lepard
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 [192.168.11.6] (_gateway [192.168.11.1])
by mail.xxxxxxx.com (Postfix) with ESMTPA id 80D1A149DCF
for <xxxxx@xxxxxxx.com>; Thu, 30 Apr 2026 13:47:33 +0900 (JST)
Message-ID: <1a668bce-dfc4-4af0-8555-222a3355357b@xxxxxxx.com>
Date: Thu, 30 Apr 2026 13:47:34 +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
X-Virus-Scanned: clamav-milter 1.4.4 at Lepard
X-Virus-Status: Clean
X-Spam-Status: No, score=2.3 required=13.0 tests=ALL_TRUSTED,
CONTENT_TYPE_PRESENT,EMPTY_MESSAGE autolearn=no autolearn_force=no
version=4.0.2
X-Spam-Level: **
X-Spam-Checker-Version: SpamAssassin 4.0.2 (2025-08-27) on Lepard
④スパムチェック確認
自分自身にメール本文が「XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X」のメールを送るとメールは配信されずSpamフォルダへ振り分けられており、メールヘッダーに次の表示が含まれていることを確認する
X-Spam-Flag: YES
X-Spam-Status: Yes, score=1001.8 required=13.0 tests=ALL_TRUSTED,
CONTENT_TYPE_PRESENT,GTUBE,HTML_FONT_SIZE_HUGE,HTML_MESSAGE,
MPART_ALT_DIFF,MULTIPART_ALTERNATIVE autolearn=no autolearn_force=no
version=4.0.2
X-Spam-Report:
* 0.1 ALL_TRUSTED Passed through trusted hosts only via SMTP
* 0.1 MULTIPART_ALTERNATIVE Multipart/alternative
* -0.1 CONTENT_TYPE_PRESENT exists:Content-Type
* 1000 GTUBE BODY: Generic Test for Unsolicited Bulk Email
* 1.0 HTML_MESSAGE BODY: HTML included in message
* 0.7 MPART_ALT_DIFF BODY: HTML and text parts are different
* 0.0 HTML_FONT_SIZE_HUGE BODY: HTML font size is huge
X-Spam-Level: ************************************************
X-Spam-Checker-Version: SpamAssassin 4.0.2 (2025-08-27) on Lepard
