web-dev-qa-db-ja.com

SASL認証の失敗:パスワードの検証に失敗しました(postfix + cyrus + saslauthd)

CentOS 7でpostfix + cyrusを実行して、smtpで認証するのが困難です。

ローカルでポート25(または587)にtelnetで認証しようとすると、メールログに次のエラーが表示されます。

9月25日10:25:00blabla postfix/smtpd [3858]:警告:SASL認証の問題:Berkeleyデータベースを開くことができません/ etc/sasldb2:アクセスが拒否されました

9月25日10:25:00blabla postfix/smtpd [31106]:警告:SASL認証の失敗:パスワードの検証に失敗しました

9月25日10:25:00blabla postfix/smtpd [31106]:警告:不明[:: 1]:SASLプレーン認証に失敗しました:認証に失敗しました

Sasldb2が何かとどう関係しているか、その警告が問題に実際に関係しているかどうかは不明です。同じ資格情報を持つtestsaslauthdはOKを返します。

Postfixはnot chrootモードで実行しています:

smtp inet n --n --- smtpd

smtps inet n --n --- smtpd

送信inet n-n--smtpd
-osmtpd_sasl_auth_enable = yes

認証に/ etc/shadowを使用しているので、ps aux | grep saslのコメント:

/ usr/sbin/saslauthd -m/var/run/saslauthd -aシャドウ

ソケットディレクトリは/ var/run/saslauthdなので、main.cfには次のものがあります。

smtpd_sasl_path =/var/run/saslauthd /
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $ myhostname
tls_random_source = dev:/ dev/urandom
smtpd_sasl_local_domain =
broken_sasl_auth_clients =はい
smtpd_sasl_exceptions_networks =
smtpd_recipient_restrictions =
permit_sasl_authenticated、
permit_mynetworks、
reject_unauth_destination、
[。

最後に、/ etc/sasl2 /smtpd.confには次のものがあります。

pwcheck_method:saslauthd
mech_list:プレーンログイン
saslauthd_path:/ var/run/saslauthd /
allow_plaintext:true

ポインタはありますか?私は困惑しています...オンラインで見つけたほとんどのドキュメントはchrootされたpostfix設定またはより複雑な認証方法を指しているようです。

ありがとう!

2
sdragnev

エラーメッセージ

berkeley db/etc/sasldb2を開くことができません:アクセスが拒否されました

権限の問題のため、postfixがそのディレクトリを開くことができないという一般的なメッセージでした。 chmodやchownを使用して、/etc/sasldb2へのアクセスをpostfixに許可します

chown postfix:postfix /etc/sasldb2
chmod 660 /etc/sasldb2

または

chmod 644 /etc/sasldb2

セキュリティ上の理由から、最初のオプションをお勧めします。

参照: blog.penumbra.be | www.murat.ws | このスレッド

1
masegaloeh