dovecot + squirrelmail: メールフォルダの設定ミス

dovecot + squirrelmail: メールフォルダの設定ミス

私が設定しようとしていたメール サーバーで、仮想ユーザーuser1(電子メール アドレス[email protected]) へのメールをファイル に配信するように postfix を設定しました。これは、次のように設定して行いました。/var/mail/vhosts/[email protected]/mail

# /etc/postfix/main.cfg
virtual_mailbox_maps = mysql:/etc/postfix/virtmailmaps.conf

そして:

# /etc/postfix/virtmailmaps.conf
# ...
query = SELECT destination FROM virtusers WHERE email='%s'

mysql データベースには次のvirtusersテーブルがあります:

+----+----------+-------------------+------------------------+
| id | password |        email      |      destination       |
+----+----------+-------------------+------------------------+
|  1 | ...      | [email protected] | [email protected]/mail |
+----+----------+-------------------+------------------------+

さて、dovecot では次のように設定しました:

mail_location = mbox:/var/mail/vhosts:INBOX=/var/mail/vhosts/%u/mail

そして:

password_query = SELECT email as user, password FROM virtusers WHERE email='%u';

Draftsこれは明らかに動作するようにハッキングしたものですが、squirrelmail にアクセスして電子メールを送信/削除すると、、およびフォルダーTrashSent作成され/var/mail/vhosts、その内容がすべての仮想ユーザー間で共有されます。

どうやら、ホーム オプションを正しく設定していないようですが、設定ファイル オプション (postfix、dovecot、squirrelmail) が何をしているのか、また、それがどのように連携しているのかがよくわかりません。たとえば、すでに設定しています。

# /etc/dovecot/conf.d/auth-sql.conf.ext
userdb {
  driver = static
  args = uid=vmail gid=vmail home=/var/mail/vhosts/%u
}

DraftsTrashおよびSentディレクトリが各ユーザーのホーム ディレクトリ内に存在するようにこれを修正するにはどうすればよいですか?/var/mail/vhosts/[email protected]/

答え1

あなたはそうすべきではないでしょうか

mail_location = mbox:/var/mail/vhosts/%u:INBOX=/var/mail/vhosts/%u/mail

%uつまり、現在パス内にユーザー名変数はなくmbox、パス内にのみ存在しますINBOX

関連情報