まあ、ケースは単純に見えますが、満足のいく答えを見つけることができません。
私は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ローカルユーザーをどのように持つのですか?
これも可能ですか、それとも私は厄介な構成の混合で立ち往生しています ローカルユーザーと仮想ユーザー ?
私が予想したように、これに対する解決策は非常に単純でした:/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