以前
CentOS6でRoundCubeのテスト環境を作っていましたが、今回はCentOS Stream 9です。
postfixにSMTP認証がデフォルトで入っているらしく、無効にする事も考えましたが調査が必要そうなのと、それよりもSMTP認証をした方が早そうだったので、設定する事にしました。
SELinuxはpermissiveにして試しています。
PostfixとDovecot
インストールして有効化・起動します。
dnf -y install postfix dovecot
systemctl enable postfix dovecot
systemctl start postfix dovecot
設定は以前に加えてSMTP認証用の追加が必要になります。
/etc/dovecot/conf.d/10-master.conf
service auth内のunix_listener項を有効にして、user,groupを追加します。
service auth {
unix_listener /var/spool/postfix/private/auth {
mode = 0660
user = postfix
group = postfix
}
}
/etc/dovecot/conf.d/10-auth.conf
auth_mechanisms = plain login
/etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:~/Maildir
/etc/postfix/main.cf
# myhostnameとhome_mailboxを編集
myhostname = localhost.localdomain
home_mailbox = Maildir/
# sasl認証関連を追加
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
設定後はリロード
systemctl reload postfix dovecot
RoundCube
installer/ 等でconfigの設定をします。先にfirewall-cmdで80番ポートも空けておきます。
firewall-cmd --add-service http --permanent
firewall-cmd --reload
config/config.inc.php
IMAP, SMTPサーバともにlocalhost.localdomainを指定して、SMTPはポート25も指定します。
IMAPポートは変更の必要が有りません。
$config['default_host'] = 'localhost.localdomain';
$config['smtp_server'] = 'localhost.localdomain';
$config['smtp_port'] = 25;
送受信に問題ないか試します。installer内でチェックをしても良いし、RoundCubeへログインして送受信しても構いません。
SubmissionポートでSMTPを利用する
追加でSMTPのサブミッションポートを利用してみます。但しTLSは使わない形です。
/etc/postfix/master.cf
tls関連は面倒が出ないよう切ってしまいます。また、reject_sender_login_mismatchもlocalhostではNG(Temporary lookup failure)になったので切っておきます。
submission inet n - n - - smtpd
# -o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_sasl_type=dovecot
-o smtpd_sasl_path=private/auth
-o smtpd_sasl_security_options=noanonymous
-o smtpd_sasl_local_domain=$myhostname
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o smtpd_sender_login_maps=hash:/etc/postfix/virtual
# -o smtpd_sender_restrictions=reject_sender_login_mismatch
-o smtpd_recipient_restrictions=reject_non_fqdn_recipient,reject_unknown_recipient_domain,permit_sasl_authenticated,reject
※最後の行が折り返して見えますが、-o smtpd_recipient_restrictions=…と一行です。
- RoundCubeのconfig.inc.phpのsmtp_portを587にして送信出来れば成功です。
Tags: CentOS, Dovecot, Postfix, Roundcube
This entry was posted on 金曜日, 11月 25th, 2022 at 16:10 and is filed under 未分類. You can follow any responses to this entry through the RSS 2.0 feed.
You can skip to the end and leave a response. Pinging is currently not allowed.