「エアコンの安全な修理・適切なフロン回収」はこちら

Debian11.3 : ウイルス対策 、Mailサーバー

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

ウィルス対策としてLinux 用のフリーのアンチウィルスソフトであるClam AntiVirus を導入します。
このアンチウィルスソフトを導入することで、サーバー全体のウィルススキャンはもちろん、メールサーバーを構築し、設定を行えば、送受信するメールのウィルススキャンも行うことができます。

1.1 インストール

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

1.2 ウイルス定義の更新

上記コマンドで、ウイルス定義が更新できるが、下記のようなエラーが出る場合はlog設定を変更して、再度実行。
ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
ERROR: initialize: libfreshclam init failed.
ERROR: Initialization error!

上記エラーが出た場合次のように一度ログファイルを削除し、ログロテートの設定を変更しておく。

設定ファイルを編集

ウイルス定義の自動更新確認
ウイルス定義の自動更新が行われるサービスが登録されていることを確認する。

次のように表示される

尚、/var/log/clamav/freshclam.logファイルにログが記録される。

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

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

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

②テストウイルスをダウンロードしてウイルス検出
無害ウィルスをダウンロードして検出するかテストしてみる
一般ユーザーにログインして確認

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

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

①事前にスクリプトファイル格納ディレクトリー(/opt/script)を作成しておく

②スクリプトファイルを作成

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

③実行権限を与える

④ウイルス隔離用フォルダを作成
既にあればOKだが、無いと上記スクリプトで除外ディレクトリに指定しているので実行時エラーになる
⑤実行
完了までけっこう時間がかかる
尚、/var/log/clamav/clamscan.logファイルにログが記録される

⑤cronでウイルススキャンの定期実行
上記例では、毎週月曜日の夜中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 を設定します。

一般的な構成設定の選択を求められるが、後で手動設定するため [設定なし] を選択

②設定ファイル(main.cf)編集

編集内容

③設定ファイル(master.cf)編集

編集内容

設定反映、再起動

2.2 Dovecot : インストール 設定

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

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

③設定反映、再起動

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

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

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

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

2.4 ポートの開放

2.5 動作確認 ①

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

本文を終了する場合は 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」クリック

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

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

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

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

②ウィルススキャン有効化
③自身のドメイン名を登録
④設定ファイル(Main.cf)編集
⑤設定ファイル(master.cf)編集
編集内容

⑥設定反映

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

4. Postfixに spamassassinをインストールしてスパム対策

①インストール

②SpamAssassin の設定の前準備
スパムメール保存用のディレクトリ「.Spam」を Maildir 形式で作成します。まず一般ユーザー(例としてhuong)としてログイン

③Procmail を準備
Procmail がサーバ機にインストールされているかをチェックします。
もし、インストールされていなければインストールしましょう。

Procmail へのパスを以下のコマンドで調べます

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

procmailrc記載内容(新規作成)

⑤Postfix main.cf の編集

⑥設定の反映と起動と動作確認
⑦スパムメールの学習
以下のコマンドですべてのユーザの「.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 の内容

Cronに学習スクリプトを登録します

毎日午前4時に学習スクリプトを実行します

⑩自動的に起動するように設定

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

タイトルとURLをコピーしました