я проводил бесчисленные часы на это, и теперь я полагал, что идентификатор прибывает в 'Интернет' для справки.
Я установил новую установку постфикса + голубятня + mysql.
Прямо сейчас я могу получить электронное письмо от своего отображенного, считают 'sean@domain.com', но по некоторым причинам все сообщения вставляются в/var/mail/sean
ожидаемое местоположение:/var/vmail/domain.com/sean
плохо перечислите основные части кода, я раньше получал эту работу.
постфикс master.cf
dovecot unix - n n - - pipe
flags=DRhu user=vmail:mail argv=/usr/lib/dovecot/deliver -d ${recipient}
постфикс main.cf
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
10-mail.conf голубятня
mail_location = maildir:/var/vmail/%d/%n
mail_uid = vmail
mail_gid = mail
first_valid_uid = 150
last_valid_uid = 150
10-auth.conf голубятня
disable_plaintext_auth = yes
!include auth-sql.conf.ext
Автор-sql.conf.ext голубятни
passdb {
driver = sql
args = /etc/dovecot/dovecot-sql.conf.ext
}
userdb {
driver = sql
args = /etc/dovecot/dovecot-sql.conf.ext
}
Голубятня-sql.conf.ext голубятни
driver = mysql
connect = host=localhost dbname=mail user=mail password=P@ssw0rd
default_pass_scheme = MD5-CRYPT
password_query = \
SELECT username as user, password, '/var/vmail/%d/%n' as userdb_home, \
'maildir:/var/vmail/%d/%n' as userdb_mail, 150 as userdb_uid, 8 as userdb_gid \
FROM mailbox WHERE username = '%u' AND active = '1'
user_query = \
SELECT '/var/vmail/%d/%n' as home, 'maildir:/var/vmail/%d/%n' as mail, \
150 AS uid, 8 AS gid, concat('dirsize:storage=', quota) AS quota \
FROM mailbox WHERE username = '%u' AND active = '1'
И это в значительной степени делает это для части конфигурации того, что я пытаюсь сделать.
Какие-либо идеи того, что я делаю неправильно? {Я должен быть лысым к этому времени завтра :)}
У меня также была эта проблема, и мне потребовалось некоторое время, чтобы разобраться. Если у кого-то есть такая проблема, стоит проверить /var/log/mail.log
на наличие ошибок вроде:
postfix/trivial-rewrite[2149]: warning: do not list domain localdomain.co.uk in BOTH mydestination and virtual_mailbox_domains
Я только что удалил localdomain.co.uk
mydestination = line
в файле /etc/postfix/main.cf
. Похоже, это решило проблему.
была та же проблема. после недели ночей обнаружил, что вам может понадобиться создать папку INBOX в /home/username/mail/.imap/INBOX.
Это помогло мне.
Система - roundcube / dovecot / postfix / mysql / centos 6.4 Надеюсь, я смогу сэкономить некоторые здравомыслия !!
Пол.
Я полагаю, вы путаете две категории пользователей. Есть системные пользователи и виртуальные пользователи.
Если вы пытаетесь использовать systemuser, вам просто нужно добавить эту строку:
mailbox_command = /usr/local/libexec/dovecot/deliver # or mailbox_command = /usr/libexec/dovecot/deliver # or mailbox_command = /usr/lib/dovecot/deliver # or wherever it was installed in your system.
Если вы пытаетесь использовать виртуальные пользователи, вы должны настроить их также и на postfix.
Примерно так: obs: Я постараюсь использовать ваши mysql confs, но не буду, если я все сделаю правильно.
/etc/postfix/virtual-address-mysql.cf
Содержание:
user=mail password=P@ssw0rd dbname=mail hosts=localhost query=select username as address from mailbox where active = '1' and username = '%s';
Послушайте, я могу что-то упустить в вашем запросе.
Теперь postfix может знать вашего виртуального пользователя.
Необходимо отобразить его сейчас.
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_mailbox_maps $virtual_mailbox_domains virtual_mailbox_maps = proxy:mysql:/etc/postfix/virtual-address-mysql.cf
Я бы пошел к виртуальным пользователям, лучше управлять БД, чем системным пользователям.
Вы также можете использовать виртуальные домены и виртуальные псевдонимы
Та же логика и конф похож на это:
virtual_mailbox_domains = proxy:mysql:/etc/postfix/vdomains.cf virtual_alias_maps = proxy:mysql:/etc/postfix/virtual-alias.cf
Я думаю, что это. Если вам нужна дополнительная помощь, я думаю, вы можете найти в
Проблема в вашем файле «virtual_mailbox_map.cnf» (может иметь другое имя), это должно быть что-то вроде этого
hosts = 127.0.0.1
user = postfix
password = password
dbname = postfix
query = SELECT CONCAT(domain, '/', maildir) FROM mailbox WHERE username='%s' AND active = 1
Исправление в запросе, потому что во всех руководствах, которые я видел, они используют что-то вроде это
query = SELECT maildir FROM mailbox WHERE username='%s' AND active = 1