FreeBSD/Postfix+amavisd+clamav の変更点
*Postfix + amavisd + clamav [#uc572ba1]
[[dokuwiki.fl8.jp掲載済>http://dokuwiki.fl8.jp/02_freebsd/03_mail/03_postfix_amavisd_clamav]]
#contents
*ClamAVインストール [#bf305c2f]
**portsからインストール [#nec737da]
# cd /usr/ports/security/clamav
# make install
**/etc/rc.confに追加 [#d03885ea]
# ClamAV
clamav_clamd_enable="YES"
clamav_freshclam_enable="YES"
**起動 [#r824bc77]
# /usr/local/etc/rc.d/clamav-clamd start
# /usr/local/etc/rc.d/clamav-freshclam start
*Postfixインストール [#tf75999e]
**portsからインストール [#m4a60a37]
# 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の修正 [#fafb7c56]
# /etc/rc.conf
postfix_enable="YES"
***sendmailが動いている場合 [#j90b6d93]
# /etc/rc.conf
sendmail_enable="NONE"
# /etc/rc.d/sendmail stop
**/usr/local/etc/postfix/main.cf 修正 [#f59c6e86]
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
**起動 [#r1016384]
# /usr/local/etc/rc.d/postfix start
**postfix キューの確認 [#k3a79678]
# /usr/sbin/postqueue -p
**postfix キューの削除 [#qc793dc2]
# /usr/sbin/postsuper -d [Queue ID]
*amavisd [#x601651b]
**インストール [#s2566e07]
# cd /usr/ports/security/amavisd-new
# make AMAVISUSER=clamav AMAVISGROUP=clamav install
**amavisdでspamチェックを行わない [#r1f091f3]
# 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;
**添付ファイルがあるとはじかれる [#r329708a]
$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 [#wbb823da]
http://www.leafgreen.jp/freebsd/clamav.html
*postfixの設定 [#h832ef30]
**inet_interfaces [#p8734415]
# 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