Postfixにおける暗号化したSMTP認証設定
PosfixでSMTP認証を使ったメール送信設定の手順を説明します。Postfixの基本設定(main.cf)
Postfixの基本設定では、SMTP認証設定と直接関係しないが、Postfixを設定する上で最低限必要と思われる 設定を行う。その設定項目は下記の通りである。・QueueとMailboxのディレクトリ設定
・ネットワーク関連
・ホスト名、ドメイン名、受信ドメイン名、HELLOのホスト名
・携帯メール対応
・ユーザ存在の応答制限
・ローカルIPアドレス情報の漏洩防止
・バージョン情報の非表示
# vi /etc/postfix/main.cf
#・QueueとMailboxのディレクトリ設定 queue_directory = /data/spool/postfix home_mailbox = Maildir/ #・ネットワーク関連 mynetworks = 10.7.100.0/24 , 127.0.0.0/8 inet_interfaces = all #・ホスト名、ドメイン名、受信ドメイン名、HELLOのホスト名 myhostname = mail-01.hogehoge.com mydomain = info.hogehoge.com mydestination = $myhostname, localhost, $mydomain smtp_helo_name = $myhostname #・携帯メール対応 # 携帯メール対策 ハイフンではじまるメールアドレス allow_min_user = yes # 携帯メール対策 @マークの前に.が付いたメールアドレスなどRFC2822 strict_rfc821_envelopes = no #・ユーザ存在の応答制限 disable_vrfy_command = yes #・ローカルIPアドレス情報の漏洩防止 header_checks = regexp:/etc/postfix/header_checks #・バージョン情報の非表示 smtpd_banner = $myhostname ESMTP
PostfixのSMTP関連(main.cf)
ここでは、main.cfファイルに記述するSMTP認証に関する設定を説明します。・SASLによるSMTP認証を使用
・AUTHコマンドのサポートを認識できないクライアントへの対応
・証明書ファイルの指定/秘密鍵ファイルの指定
・TLS使用を宣言
# vi /etc/postfix/main.cf
#~SMTP関連抜粋~ #・SASLによるSMTP認証を使用 smtpd_sasl_auth_enable = yes # AUTHコマンドのサポートを認識できないクライアントへの対応 broken_sasl_auth_clients=yes #TLS設定 #証明書ファイルの指定 smtpd_tls_cert_file = /etc/postfix/tls_file/server_id.20160326 #秘密鍵ファイルの指定 smtpd_tls_key_file = /etc/postfix/tls_file/server_key.run # TLS使用を宣言 smtpd_use_tls = yes # Outlook/Outlook Express用のモード設定 #smtpd_tls_wrappermode = yes # 認証はTLSのみ許可(SMTPS以外にSMTPでも認証したい場合はコメントアウト) smtpd_tls_auth_only = yes # セッションキャッシュの設定 #smtpd_tls_session_cache_database = sdbm:/etc/postfix/smtpd_scache # TLS用乱数デバイスの指定 #tls_random_source = dev:/dev/urandom #・条件設定 smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated, reject_unauth_destination smtpd_sender_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unknown_sender_domain, reject_sender_login_mismatch smtpd_etrn_restrictions = permit_mynetworks, reject_invalid_hostname
# service postfix restart
SMTP認証(saslauthdの設定)
■/usr/lib/sasl2/smtpd.confを編集・saslauthdが提供する認証データを利用する。
・認証メカニズムはPLAIN方式とLOGIN方式に限定する。
# vi /usr/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd mech_list: plain login
# vi /etc/rc.d/init.d/saslauthd
#MECH=shadow MECH=pam
# servie saslauthd start
SMTP認証に直接関係のない設定
ローカルIPアドレス情報の漏洩防止定義(header_checks)
SMTP認証と直接関係はない設定であるが、セキュリティ強化のため ローカルIPアドレス情報が外部に漏洩しないように、IPアドレス置換の定義する。# vi /etc/postfix/header_checks
# ローカルIPアドレス情報の漏洩防止 /(^Received:.*) \[[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\](.*)/ REPLACE $1$2
メールキューとメールボックスのディレクトリ作成
■メールキューディレクトリ作成# mkdir /data/spool/postfix -p