今日の戯言 by maa

基本的にただの独り言です。有益な情報を求めてはいけませんw



2013年06月26日 [長年日記]

_ Debian exim4 設定メモ

SMTP 認証(sasl2)と TLS 暗号化、マルウェアチェックをするために exim4-daemon-heavy に入れ替える。あと、sasl2-bin と clamav-daemon を入れる。

sasl2

ユーザー Debian-exim を グループ sasl に加え、saslauthd を起動。

# adduser Debian-exim sasl

/etc/default/saslauthd を編集(非コメント化)

START=yes
# /etc/init.d/saslauthd start

exim4(基本設定と SMTP 認証、TLS 関係)

メールリレーは smarthost に任せる、Maildir 形式、587 port で TLS

/etc/default/exim4 を編集

SMTPLISTENEROPTIONS='-oX 25:587 -oP /var/run/exim4/exim.pid'

/etc/exim4/update-exim4.conf.conf を編集

dc_eximconfig_configtype='smarthost'
dc_other_hostnames='xxx.xxx.ac.jp'
dc_local_interfaces=''
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='xxx.xxx.xxx.xxx;xxx.xxx.xxx.xxx'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='maildir_home'

/etc/exim4/exim4.conf.template を編集(plain_saslauthd_server: 部の非コメント化)

plain_saslauthd_server:
  driver = plaintext
  public_name = PLAIN
  server_condition = ${if saslauthd{{$auth2}{$auth3}}{1}{0}}
  server_set_id = $auth2
  server_prompts = :
  .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
  server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
  .endif

/etc/exim4/exim4.conf.localmacros を作成(TLS ルーチンのアクティブ化)

MAIN_TLS_ENABLE='true'

サーバー証明を作成し、設定ファイルを更新し、exim4 を再起動後、動作確認。

# /usr/share/doc/exim4-base/examples/exim-gencert
# update-exim4.conf
# /etc/init.d/exim4 restart

clamav

/etc/clamav/freshclam.conf を編集して再起動

DatabaseMirror db.jp.clamav.net
HTTPProxyServer xxx.xxx.ac.jp
HTTPProxyPort xxxx
# /etc/init.d/clamav-freshclam restart

ユーザー clamav をグループ Debian-exim に加えて再起動

# adduser clamav Debian-exim
# /etc/init.d/clamav-daemon restart

exim4(マルウェアチェック関係)

/etc/exim4/exim4.conf.template を編集(関連個所の非コメント化)

av_scanner = clamd:/var/run/clamav/clamd.ctl
deny
    malware = *
    message = This message was detected as possible malware ($malware_name).

設定ファイルを更新して再起動後、動作確認

# update-exim4.conf
# /etc/init.d/exim4 restart