dovecot + postfixを実ユーザアカウントで動作するPOP3 + SMTPサーバとして動作させる設定

日付 2021.01.26
タイトル dovecot + postfixを実ユーザアカウントで動作するPOP3 + SMTPサーバとして動作させる設定
本文
前提
OSのリアルユーザのID/PW = メールのID/PW
送信時のアカウントもOSのリアルユーザのアカウント
mbox形式(単一ファイル保存)
None SSLな動作を許可


環境 CentOS 7


# 必要パッケージ
yum install dovecot postfix cyrus-sasl


# dovecot設定の修正箇所 ---------------------------------------
# /etc/dovecot/dovecot.conf
>>>
# pop3を許可する
protocols = imap pop3 lmtp
<<<


# /etc/dovecot/conf.d/10-auth.conf
>>>
# none sslでのプレーンテキスト認証を許可する
disable_plaintext_auth = no
# plain認証login認証を許可
auth_mechanisms = plain login
<<<


# /etc/dovecot/conf.d/10-master.conf
>>>
service auth {
# ---
# 省略
# ---

# 以下postfix SMTP認証用設定をアンコメントしてuser/groupを追記
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
user = postfix
group = postfix
mode = 0666
}
}
<<<


# /etc/dovecot/conf.d/10-ssl.conf
>>>
# SSL必須→許可に
ssl = yes
<<<


# /etc/dovecot/conf.d/10-mail.conf
>>>
# mbox形式で各ユーザのメールファイルにアクセス
mail_location = mbox:/var/spool/mail:INBOX=/var/spool/mail/%u
# INBOXへの一時的な操作に利用されるgroup、これをmailに対して許可しないと、/var/spool/mail内での一時的なファイル作成に失敗する
mail_privileged_group = mail
# mboxファイルへの操作に利用されるgroup、これを許可しないとuserのmboxへのアクセスが失敗する
mail_access_groups = mail
<<<


# postfix設定の修正箇所 ---------------------------------------
# /etc/postfix/main.cf
>>>
# mailbox sizeはdefault50MBなので適宜広げる
mailbox_size_limit = 102400000
# smtp認証にdovecotを利用、これでdovecotの実ユーザpam認証がsmtpに連携する
smtpd_sasl_type = dovecot
# 10-master.confのservice authで指定したパス
smtpd_sasl_path = private/auth
# 他一応
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
<<<


# /etc/postfix/master.cf
>>>
# submissionをコメントアウトして有効化
# ここでsmtpd_sasl_auth_enable=yesとする(port25のsasl authは許可していない)
# 他オプションは適宜有効化
submission inet n - n - - smtpd
-o syslog_name=postfix/submission
#-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
#-o smtpd_reject_unlisted_recipient=no
#-o smtpd_client_restrictions=$mua_client_restrictions
#-o smtpd_helo_restrictions=$mua_helo_restrictions
#-o smtpd_sender_restrictions=$mua_sender_restrictions
#-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
#-o milter_macro_daemon_name=ORIGINATING
<<<