私はPostfixでメールサーバーをセットアップしました、そして私は現在Postfixadminの助けを借りて仮想メールボックスを作成しているところです。 Courierを使用してIMAP認証を処理していますが、正しく設定できません。
ログを調べて、IMAPが指定されたmaildirを見つけられないという主な問題を絞り込みました。つまり、maildirは存在しません。
IMAPが期待するmaildirを手動で作成することで問題を解決できますが、メールボックスを追加するたびにこれを行う必要があるとは思いません。 Postfixadminを介して仮想メールボックスを追加するとすぐに自動的に機能する必要があります。
私は何かが足りないのですか?
関連する情報は次のとおりです。
PostfixadminはMySQLデータベースを使用してメールボックスを検索します。関連するテーブルの説明は次のとおりです。
+------------+--------------+------+-----+---------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------------------+-------+
| username | varchar(255) | NO | PRI | NULL | |
| password | varchar(255) | NO | | NULL | |
| name | varchar(255) | NO | | NULL | |
| maildir | varchar(255) | NO | | NULL | |
| quota | bigint(20) | NO | | 0 | |
| local_part | varchar(255) | NO | | NULL | |
| domain | varchar(255) | NO | MUL | NULL | |
| created | datetime | NO | | 0000-00-00 00:00:00 | |
| modified | datetime | NO | | 0000-00-00 00:00:00 | |
| active | tinyint(1) | NO | | 1 | |
+------------+--------------+------+-----+---------------------+-------+
そしてここにサンプルレコードがあります:
username = [email protected]
password = [hashed password here]
name = User 01
maildir = [email protected]
quota = 0
local_part = user
domain = domain.com
created = 2012-08-17 07:52:01
modified = 2012-08-17 07:52:01
active = 1
(domain.comは、この質問の目的のための単なるダミーです。動作しているMXレコードを持つ登録済みドメインを使用しています。)
これが私の/etc/courier/authmysqlrc
の内容です
MYSQL_SERVER 127.0.0.1
MYSQL_USERNAME [omitted]
MYSQL_PASSWORD [omitted]
MYSQL_DATABASE [omitted]
MYSQL_USER_TABLE mailbox
MYSQL_LOGIN_FIELD username
MYSQL_NAME_FIELD name
MYSQL_CRYPT_PWFIELD password
#MYSQL_CLEAR_PWFIELD password
MYSQL_MAILDIR_FIELD maildir
MYSQL_QUOTA_FIELD concat(quota,'S')
MYSQL_HOME_FIELD '/home/vmail'
MYSQL_UID_FIELD '5000'
MYSQL_GID_FIELD '5000'
(これに必要なUNIXユーザーangグループを、適切なUID:GID 5000:5000で作成しました)
ドメインをmydestinations
から削除し、Postfixadminが作成時にウェルカムメッセージを送信できるようにすることで、私の問題を解決しました。どうやらメールディレクトリはメールが到着したときに作成されるので、ウェルカムメッセージの送信がそれを処理します。