Пустой почтовый ящик SquirrelMail, электронные письма хранятся неправильно

Я пытаюсь настроить почтовый сервер на экземпляре Amazon EC2 Micro - после этого сообщения от flurdy. Я установил Postfix, Courier IMAP и Squirrel Mail. Я тестировал возможность отправлять и получать электронные письма через postfix - и это работает нормально. Я успешно подключился к SquirrelMail - однако папка "Входящие" пуста.

Похоже, файлы электронной почты создаются в /var/spool/mail/myuser в отличие от /var/spool/mail/virtual/myuser, Сначала я не мог подключиться к SquirrelMail - потому что каталог myuser не был инициирован в virtual/, Поэтому я вручную добавил это через

maildirmake myuser

Проблема в том, что электронные письма не хранятся в /var/spool/mail/virtual/myuser каталог, но все еще в /var/spool/mail/myuser файл.

Редактировать> postconf -n

alias_database = hash: / etc / postfix / aliases alias_maps = hash: / etc / postfix / aliases append_dot_mydomain = нет biff = нет config_directory = /etc/postfix
delay_warning_time = 4h
disable_vrfy_command = yes
inet_command = да = 7d
minimal_backoff_time = 1000 с mydestination = $mydomain, $myhostname, localhost, localhost.localdomain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mynetworks_style = host
myorigin = mymailexample.co.uk
readme_directory = нет recipient_delimiter = +
relayhost =
smtp_helo_timeout = 60s не smtp_tls_session_cache_database = ВТКЕЕ:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org, reject_rbl_client blackholes.easynet.nl, reject_rbl_client dnsbl.njabl.org
smtpd_data_restrictions = reject_unauth_pipelining
smtpd_delay_reject = yes
smtpd_hard_error_limit = 12
smtpd_helo_required = да smtpd_helo_restrictions = permit_mynetworks, warn_if_reject reject_non_fqdn_hostname, reject_invalid_hostname, разрешение smtpd_recipient_limit = 16
smtpd_recipient_restrictions = reject_unauth_pipelining, permit_mynetworks, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_destination, разрешение smtpd_sender_restrictions = permit_mynetworks, warn_if_reject reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining, разрешение smtpd_soft_error_limit = 3
smtpd_tls_cert_file = / и т.д. / SSL /certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache /mysql_alias.cf
virtual_gid_maps = static:5000
virtual_mailbox_base = /var/spool/mail/virtual
virtual_mailbox_domains = mysql:/etc/postfix/mysql_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_mailbox.cf
virtual_uid_maps = static:5000

Правка> Это результат concat(home,'/',maildir) из запроса SQL - Вы можете увидеть, что почтовый каталог заканчивается косой чертой /

/ Вар / катушка / почта / виртуальный / MyUser /             

Решено> Я заметил, что в mail.log было следующее>

postfix/trivial-rewrite[16423]: предупреждение: не перечислять домен mymailexample.co.uk в ОБА mydestination и virtual_mailbox_domains
..
postfix/virtual[17251]: 149535DC7: to=, ретранслятор = виртуальный, задержка = 0,14, задержки = 0,12/0,01/0/0,01, DSN =2,0,0, статус = отправлено (доставлено в почтовый ящик)

Я обновил /etc/postfix/main.cf в

mydestination = mail.mymailexample.co.uk, localhost, localhost.localdomain

И это сработало. Предупреждение исчезает, и теперь отображаются логи (доставлено в maildir)

..
postfix / virtual [17251]: 149535DC7: to =, relay = virtual, задержка = 0,14, задержки = 0,12/0,01/0/0,01, DSN =2,0,0, статус = отправлено (доставлено в maildir)

1 ответ

Как задокументировано, для доставки в формате maildir местоположение почтового ящика должно заканчиваться косой чертой:

joe@example.com  example.com/joe/

Это и только это сообщает postfix о доставке в maildir.

Конечно, могут быть другие проблемы, мешающие его работе, но мы не знаем.

Другие вопросы по тегам