====== 03 Postfix + amavisd + clamav ======
===== ClamAVインストール =====
==== portsからインストール ====
# cd /usr/ports/security/clamav
# make install
==== /etc/rc.confに追加 ====
# ClamAV
clamav_clamd_enable="YES"
clamav_freshclam_enable="YES"
==== 起動 ====
# /usr/local/etc/rc.d/clamav-clamd start
# /usr/local/etc/rc.d/clamav-freshclam start
===== Postfixインストール =====
==== portsからインストール ====
# cd /usr/ports/mail/postfix
# make install
このあと、いくつか質問されるので適切に答えます。
Added group "postfix".
Added group "maildrop".
Added user "postfix".
You need user "postfix" added to group "mail".
Would you like me to add it [y]? y
これは y。
Would you like to activate Postfix in /etc/mail/mailer.conf [n]? y
==== /etc/rc.confの修正 ====
# /etc/rc.conf
postfix_enable="YES"
==== sendmailが動いている場合 ====
# /etc/rc.conf
sendmail_enable="NONE"
# /etc/rc.d/sendmail stop
==== /usr/local/etc/postfix/main.cf 修正 ====
mydomain に自分のドメインを設定します。
mydomain = domain.tld
mydestination に、自分が受け取るメールの宛先を指定します。$mydomain は含めるようにしましょう。それ以外にも、受け取りたいドメインがあれば追記します。
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks に「信頼できる」SMTPクライアントの属するネットワークを指定します。これ以外のところからメールの中継を拒否します。
mynetworks = 168.100.189.0/28, 127.0.0.0/8
==== 起動 ====
# /usr/local/etc/rc.d/postfix start
==== postfix キューの管理 ====
[[02_freebsd:03_mail:02_manage_postfix_queue]]
===== amavisd =====
==== インストール ====
# cd /usr/ports/security/amavisd-new
# make AMAVISUSER=clamav AMAVISGROUP=clamav install
==== amavisdでspamチェックを行わない ====
# vi /usr/local/etc/amavisd.conf
14 @bypass_spam_checks_maps = (1); # controls running of anti-spam code
これだけだと、こんなエラーが出る。
Can't locate object method "new" via package "Amavis::SpamControl" at /usr/local/sbin/amavisd line 13878.
直接13878行目をコメントアウトすれば、すんなり起動する。
# vi /usr/local/sbin/amavisd
13878 #$spamcontrol_obj = Amavis::SpamControl->new if $extra_code_antispam;
=== 添付ファイルがあるとはじかれる ===
$banned_filename_re = new_RE(
### BLOCKED ANYWHERE
# qr'^UNDECIPHERABLE$', # is or contains any undecipherable components
qr'^\.(exe-ms|dll)$', # banned file(1) types, rudimentary
# qr'^\.(exe|lha|tnef|cab|dll)$', # banned file(1) types
・
・
・
);
この部分を
$banned_filename_re = new_RE();
=== 参考URL ===
[[http://www.leafgreen.jp/freebsd/clamav.html]]
==== postfixの設定 ====
=== inet_interfaces ===
# vi /usr/local/etc/postfix/main.cf
-------------------------------------------
inet_interfaces = all # どこからでも接続OK
inet_interfaces = localhost # localhostからだけ接続OK
localhostからだけ接続OKの場合netstatだとこんな感じになる。
# netstat -ant
Proto 受信-Q 送信-Q 内部アドレス 外部アドレス 状態
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
どこからでも接続OKの場合だと
# netstat -ant
Proto 受信-Q 送信-Q 内部アドレス 外部アドレス 状態
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN
{{tag>postfix amavisd clamav}}