Я пытаюсь установить почтовый сервис на свой сервер с этим, и это обвиняет.
После заканчивающейся конфигурации я заставил рабочие учетные записи пользователей - его возможное успешно входить в систему на каждой учетной записи с Thunderbird, управлять папками и т.д. Я могу послать электронное письмо от одной учетной записи до другого без ошибки (по крайней мере, на стороне клиента) - но они не могут быть поставлены. В mail.log
я имею:
Aug 31 13:03:46 serwer postfix/virtual[3516]: 4DCB1E132A: to=<admin@example.com>, relay=virtual, delay=2117, delays=2117/0.01/0/0.01, dsn=4.2.0, status=deferred (delivery failed to mailbox /home/vmail/%d/%n/1: unable to create lock file /home/vmail/%d/%n/1.lock: No such file or directory)
Конечно, домен отличается, просто заменил его теперь для сокрытия реального. Поскольку я искал в сети решения, я заметил, что в других подобных записях в журнале, путь к maildir полон разрешенный, как:
/home/vmail/example.com/admin/1.lock
В моих журналах все еще с %d
и %n
- действительно ли это - проблема?
Постфикс conf:
smtpd_tls_cert_file=/etc/postfix/ssl/smtpd.cert
smtpd_tls_key_file=/etc/postfix/ssl/smtpd.key
smtpd_use_tls=yes
smtpd_tls_auth_only=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_sasl_type=dovecot
smtpd_sasl_path=private/auth
smtpd_sasl_auth_enable=yes
smtpd_recipient_restrictions=permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
virtual_mailbox_base=/home/vmail/%d/%n
virtual_mailbox_domains=mysql:/etc/postfix/mysql-domains.cf
virtual_mailbox_maps=mysql:/etc/postfix/mysql-maps.cf
virtual_alias_maps=mysql:/etc/postfix/mysql-alias.cf
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
local_recipient_maps = $virtual_mailbox_maps
Вы не используете параметр virtual_mailbox_base
, например you » Предполагается, что .
Префикс, который виртуальный (8) агент доставки добавляет ко всем результатам поиска пути в таблице $ virtual_mailbox_maps. Это мера безопасности, чтобы гарантировать, что неконтролируемая карта не засоряет файловую систему почтовыми ящиками.
Это только мера безопасности и не предназначена для указания, куда следует доставить электронное письмо. Это задача virtual_mailbox_maps
.
Вместо этого вы должны установить его на virtual_mailbox_base = / home / vmail
и запросить MySQL от virtual_mailbox_maps
, возвращающего относительное путь к каталогу почтовых ящиков пользователей, например "domain.com/username", который затем станет "/home/vmail/domain.com/username" после добавления virtual_mailbox_base
.