web-dev-qa-db-ja.com

Dovecot:仮想ユーザーとローカルユーザーの同音異義語:UID1000のユーザーのメールアクセスは許可されていません

まあ、ケースは単純に見えますが、満足のいく答えを見つけることができません。

私はPostfix/Dovecotをインストールしていて、後で仮想メールを処理するように構成されています。これは、サーバーにアカウントを持っていない仮想ユーザーにとって魅力的な機能です。

わかりやすくするために、例を挙げましょう。virtualuserは仮想ユーザーのデータベース(/ etc/dovecot/users)に登録されており、IMAPとSMTPを介して問題なくメールを送受信できます。一方、localuserはサーバー上の通常のシステムユーザーです。ここで、localuserという名前のDovecotの仮想ユーザーデータベースに新しいユーザーを追加し、IMAPでこのvirtual-user-with-a-local-aliasとして接続しようとすると、ログに次のエラーが表示されます。

imap: Error: user localuser: Mail access for users with UID 1000 not permitted ([etc]).

Postfixがシステムユーザーでlocaluserという名前のユーザーを見つけたため、thatユーザーで認証を試み、仮想ユーザーも調べないことは明らかです。 。

だからここに質問があります:Postfixルックアップ仮想ユーザーbeforeローカルユーザーをどのように持つのですか?

これも可能ですか、それとも私は厄介な構成の混合で立ち往生しています ローカルユーザーと仮想ユーザー

2
Arcturus B

私が予想したように、これに対する解決策は非常に単純でした:/etc/dovecot/conf.d/10-auth.confには2つのファイルが含まれています:auth-system.conf.extシステムユーザーの場合、およびauth-mydomain.conf.ext仮想ユーザーの場合。 orderこれらのファイルが含まれていることは重要です。仮想ユーザーが両方の行を交換することで簡単に実行された後、システムユーザーが検索します。

[...]
!include auth-mydomain.conf.ext
!include auth-system.conf.ext     
2
Arcturus B