作成 2012.04.08
更新 2012.04.08
FreeBSD の Postfix で SMTP-Auth 設定
事前設定
Postfix はインストール済み。
FreeBSD の MTA を Postfix へ変更する
SASL
SMTP-Auth 用の SASL 認証サーバーを構成する。
インストール
Cyrus SASL をインストールする。
# portmaster security/cyrus-sasl2-saslauthd
cyrus-sasl-saslauthd はユーザー数が十分少ないのでオプション無しで構成した。
cyrus-sasl のオプションは以下のとおり。
DBSOLETE_CRAM_AUTH Enable cmusaslsecretCRAM-MD5 property
AUTHDAEMOND        Enable use of authdaemon
LOGIN              Enable LOGIN authentication
PLAIN              Enable PLAIN authentication
CRAM               Enable CRAM-MD5 authentication
DIGEST             Enable DIGEST-MD5 authentication
設定
/etc/rc.conf に追加。PAM を使用する。
saslauthd_enable="YES"
saslauthd_flags="-a pam"
起動
# service saslauthd start
Postfix 設定
コンパイルオプションの変更
コンパイルオプションにSASLが含まれるか確認する。
# portmaster --force-config postfix
チェックが入っていなければ修正
SASL2      Cyrus SASLv2 (Simple Auth, and Sec, Layer)
TLS        Enable SSL and TLS support
submission ポートと SMTPS を開ける。
/usr/local/etc/postfix/master.cf 修正
submission inet n       -       n       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
smtps     inet  n       -       n       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
/usr/local/etc/postfix/main.cf 修正
smtpd_sasl_type = cyrus
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
smtpd_tls_CAfile = /etc/ssl/certs/ca-bandle.pem
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls = yes
再起動
TCP/587(Submission port) と TCP/465(SMTPS) で待ち受けるようになり、STARTTLS で認証が有効になる。
# service postfix restart

©2004-2017 UPKEN IPv4