Submission over TLS 設定メモ
Postfix で submission port (port 587) を使用する SMTP over TLS のサーバを立てた。
ついでにバーチャルドメイン回りの設定もやってみた。
OS は Ubuntu 8.04 LTS。
以下自分用覚え書きメモ。
- Postfix install
aptitude install postfix
- インストール時選択肢
- インターネットサイト
- hoge.com
- ユーザ fuga 作成
adduser --ingroup users fuga
- vi /etc/postfix/main.cf
#------- mail_owner = postfix mydomain = hoge.com myorigin = $mydomain mydestination = localhost, $mydomain mynetworks = 127.0.0.0/8 unknown_local_recipient_reject_code = 550 #------- inet_interfaces = all append_dot_mydomain = no #------- alias_maps = hash:/etc/aliases
- Maildir 形式
- mkdir Maildir は不必要だった
home_mailbox = Maildir/
- バーチャルドメイン
virtual_alias_domains = mail.hoge.com virtual_alias_maps = hash:/etc/postfix/virtual_alias.hash
- vi /etc/postfix/virtual_alias.hash
fuga@mail.hoge.com fuga
- OS に存在しないユーザ宛
virtual_mailbox_domains = mailbox.hoge.com virtual_mailbox_base = /home/virtual_mailbox virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox.hash virtual_minimum_uid = 5000 virtual_uid_maps = static:5000 virtual_gid_maps = static:5000
-
- vi /etc/postfix/virtual_mailbox.hash
hoge@mailbox.hoge.com mailbox.hoge.com/hoge/mailbox fuga@mailbox.hoge.com mailbox.hoge.com/fuga/mailbox
- newaliases コマンドで db 更新するファイル指定
alias_database = hash:/etc/aliases, hash:/etc/postfix/virtual_alias.hash, hash:/etc/postfix/virtual_mailbox.hash
- sasl のインストール
aptitude install sasl2-bin libsasl2-2 libsasl2-modules
- sasl アカウント作成
- /etc/sasldb2 が作成される。パスワード変更も同様に。
saslpasswd2 -c -u hoge.com fuga
-
- 削除
saslpasswd2 -d -u hoge.com fuga
-
- 確認
sasldblistusers2
- db 権限変更および配置
chgrp postfix /etc/sasldb2 chmod 640 /etc/sasldb2 cp -a /etc/sasldb2 /var/spool/postfix/etc/
- sasl パスワード方式設定
- vi /usr/lib/sasl2/smtpd.conf
pwcheck_method: sasldb #CRAM-MD5 に対応した MUA を使う場合 #mech_list: cram-md5 #PLAIN LOGIN しか 対応していない MUA を使う場合 mech_list: plain login
-
- vi /etc/postfix/main.cf
smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination smtpd_sasl_local_domain = $mydomain
smtpd_use_tls = yes smtpd_tls_loglevel = 1 smtpd_tls_auth_only = yes smtpd_tls_cert_file = /etc/ssl/server.crt smtpd_tls_key_file = /etc/ssl/server.key smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache tls_random_source = dev:/dev/urandom
-
- vi /etc/postfix/master.cf
submission inet n - - - - smtpd -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o smtpd_tls_security_level=encrypt
- 最終的な main.cf
#------- mail_owner = postfix mydomain = hoge.com myorigin = $mydomain mydestination = localhost, $mydomain mynetworks = 127.0.0.0/8 unknown_local_recipient_reject_code = 550 #------- inet_interfaces = all append_dot_mydomain = no #------- alias_maps = hash:/etc/aliases #------- home_mailbox = Maildir/ #------- virtual_alias_domains = mail.hoge.com virtual_alias_maps = hash:/etc/postfix/virtual_alias.hash #------- virtual_mailbox_domains = mailbox.hoge.com virtual_mailbox_base = /home/virtual_mailbox virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox.hash virtual_minimum_uid = 5000 virtual_uid_maps = static:5000 virtual_gid_maps = static:5000 #------- alias_database = hash:/etc/aliases, hash:/etc/postfix/virtual_alias.hash, hash:/etc/postfix/virtual_mailbox.hash #------- smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination smtpd_sasl_local_domain = $mydomain #------- smtpd_use_tls = yes smtpd_tls_loglevel = 1 smtpd_tls_auth_only = yes smtpd_tls_cert_file = /etc/ssl/server.crt smtpd_tls_key_file = /etc/ssl/server.key smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache tls_random_source = dev:/dev/urandom
- root alias
- vi /etc/aliases
root: fuga
-
- newaliases