Ubuntu Server24.04; Clamav ( アンチウィルス ) , メールサーバー インストール

1.ウイルス対策ソフトClamav導入

1.1 インストール

尚、clamav関連の設定ファイルは、/etc/clamav/フォルダにインストールされる

1.2 ウイルス定義の更新

設定ファイルを変更

1.3 ウイルスチェックの確認

①手動でウイルスチェックの実行

Infected files: 0 なのでウイルスはありません

②テストウイルスをダウンロードしてウイルス検出
お試し無害ウィルスをダウンロードして検出するかテストしてみる

このように「FOUND」という表示と「Infected files: 1」という表示でウイルスを通知してくれる。又、「--remove」オプションを付けているので、テストウイルスは削除された

1.4 フルスキャンするスクリプトファイルを作成

①clam-full.sh の内容(新規作成)

②実行権限を与える

③ウイルス隔離用フォルダを作成(既にあればOKだが、無いと上記スクリプトで除外ディレクトリに指定しているので実行時エラーになる)

④試しに実行してみる

LibClamAV Warning: cli_scanxz: decompress file size exceeds limits - only scanning 27262976 bytes
と表示される場合は「--max-filesize=200M」 「--max-scansize=200M」オプションをつけて実行

⑤cronでウイルススキャンの定期実行

2. メールソフト導入

2.1 Postfix : インストール/設定

Postfix をインストールして SMTPサーバーを構築します。SMTP は 25/TCP を使用します。
メール不正中継防止に、後述の Dovecot の SASL機能を利用し、送信にも認証が必要なように Postfix を設定します

①インストール

インストー状況画面
一般的な構成設定の選択を求められるが、後で手動設定するため [No Configuration] を選択

②設定ファイル編集

編集内容

③master.cf編集

編集内容

④設定内容反映

2.2 Dovecot : インストール/設定

DovecotをインストールしてPOP/IMAPサーバーを構築します。POP は 110/TCP, IMAP は 143/TCP を使用します

①Postfix に SASL機能が提供できるように Dovecot を設定

②設定反映

2.3 ポートの開放

2.4 メールユーザーアカウント登録

メール用のユーザーアカウントを登録します。
OS上のユーザーアカウントでメールも利用する場合の設定です
OS上のユーザーアカウントでメールを利用する場合は、追加の設定は不要で OSユーザーを登録するのみです。

①メールクライアントインストール

②メールボックスは Maildir を参照するよう設定

2.5 動作確認 ①

①メールの送信テスト
自身にテストメール送信 [mail (ユーザー名)@(ホスト名)]

本文を終了する場合は Ctrl + D キー

➁受信メール確認

2.6 動作確認 ②

Mozilla Thunderbirdにアカウントを設定し、確認します

①Thunderbirdを起動し、「Tools」「Account Settings」

②「Account Actions」「Add Mail Account」

③「Your full name」は任意の名称
「Email addtess」は先ほど追加した「huong@korodes.com」
「Password」はユーザーhuongのパスワード
をそれぞれ入力し、「Configure manually」クリック

④「INCOMMING SERVER」「OUTGOING SERVER」を下図のように設定し、「Re-test」クリック

⑤「サーバーがみつかりました(The following settings were found by probinfg the given server)」が表示される

「Done」をクリックすると、下図の「警告」が表示されるが問題は無いので「Confirm」をクリック

⑥「アカウントが作成されました(Account syccessfuly created)」が表示されますので「Finish」クリック

2.7 メールサーバーPostfixに ClamAV適用

Postfix と Clamav を連携させて 送受信メールをリアルタイムスキャンできるように設定します

①Amavisd および Clamav Daemon をインストールして Clamav Daemon を起動

サーバーがホスト名として完全修飾ドメイン名(FQDN)を使用していない場合、Amavisの起動に失敗する可能性があります。また、OSのホスト名が変更される可能性があるため、有効なホスト名をAmavis構成ファイルに直接設定します

②15-content_filter_modeの編集

③自身のドメイン名を登録

④Main.cf編集

⑤master.cf編集

⑥設定反映

⑦Thuderbird等で自己宛にメールを送ると、受信メールのヘッダーに次のようなメッセージがあれば成功です。

自分自身にメール本文が「X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*」のメールを送ってみて、メールが破棄されて届かないことを確認する

2.8 メールサーバーPostfixに spamassassin適用

2.5.1 spamassassin をインストール

①インストール

②SpamAssassin の設定

➂SpamAssassin 設定ファイル最新化スクリプト

spamassassin-update スクリプトに実行権限を付与し、実行

/etc/mail/spamassassin ディレクトリにSpamAssassin 設定ファイル(local.cf)が当日日付で
作成されていることを確認

SpamAssassin 設定ファイルを最新化するスクリプトが毎日自動実行されるようcron に設定

spamass-milter起動・自動起動設定

  • スパムメール保存用のディレクトリ「.Spam」を Maildir 形式で作成
  • 作成には対象のユーザで行う

2.5.2 Procmail の前準備

①Procmail のインストール

インストールされていれば、以下の結果が返ってきます

②Procmail の設定
メールフィルタの全体をつかさどる「 /etc/procmailrc 」に記述すると全ユーザに適応されます。
各ユーザ個別のメールフィルタファイルである「 /home/[user]/.procmailrc 」に記述するとそのユーザのみにフィルタが適応されます。
今回は全ユーザに適応させるために「 /etc/procmailrc 」に記述します

procmailrc記載内容(新規作成)

2.5.3 Postfix の設定

① main.cfの編集

②設定の反映と起動

2.5.4 スパムメールの学習

すべてのユーザの「.Spam」ディレクトリの中身を全てスパムメールとして学習させます
①スパムメールの学習

②通常のメールの学習

③スクリプトを作成し、Cron に登録
ファイル名は適当に「 spam-learns.sh 」とし、/opt/script/配下に設置する
スクリプトを保存した後は、「 chmod 750 spam-learns.sh 」として実行可能なアクセス権を与える。

spam-learns.sh 内容

spam-learns.shができたら、定義ファイルを/lib/systemd/system直下に作成する。名前はspam-learns.serviceのように末尾が.serviceになるようにする。
Typeはsimpleで定義する

spam-learns.service の内容

④Thunderbird等で自己宛に空メールを送付し、受信メールヘッダーを確認すると次のようなメッセージあれば成功です

⑤スパムチェック確認
自分自身にメール本文が「XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X」のメールを送るとメールは配信されずSpamフォルダへ振り分けられていることを確認する
ヘッダーには次のように表示されている
/home/[user]/Maildir/.Spam/new/ 配下のメールを確認する

X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on Lepard
X-Spam-Flag: YES
X-Spam-Level: **************************************************
X-Spam-Status: Yes, score=1002.4 required=13.0 tests=ALL_TRUSTED,
CONTENT_TYPE_PRESENT,GTUBE,HTML_MESSAGE,MIMEQENC,MPART_ALT_DIFF,
MULTIPART_ALTERNATIVE,QENCPTR1,QENCPTR2 autolearn=no
autolearn_force=no version=4.0.0
X-Spam-Report:
* 0.1 ALL_TRUSTED Passed through trusted hosts only via SMTP
* 1000 GTUBE BODY: Generic Test for Unsolicited Bulk Email
* -0.1 CONTENT_TYPE_PRESENT exists:Content-Type
* 0.1 MULTIPART_ALTERNATIVE Multipart/alternative
* 1.0 HTML_MESSAGE BODY: HTML included in message
* 0.7 MPART_ALT_DIFF BODY: HTML and text parts are different
* 0.2 MIMEQENC FULL: Quoted-Printable mime definition
* 0.2 QENCPTR1 FULL: Quoted-Printable mime pattern
* 0.2 QENCPTR2 FULL: Quoted-Printable mime pattern
タイトルとURLをコピーしました