Невозможно просматривать подпапки почты на клиентах iOS с определенным сервером. Dovecot и Maildir

Невозможно просматривать подпапки почты на клиентах iOS с определенным сервером. Dovecot и Maildir

Это немного странно, и я был бы признателен за любой совет. Если это лучше для ServerFault, дайте мне знать.

Я не думаю, что это относится к AskDifferent или подобному. Хотя я говорю о поведении, которое я наблюдаю на своих устройствах iOS относительно почты, я считаю, что это проблема на стороне сервера по двум основным причинам:

  • Поведение началось только после обновления сервера.
  • Поведение наблюдается только в учетных записях этого сервера, второй почтовый сервер, который я настроил таким же образом, не имеет этой проблемы на тех же устройствах iOS.

Проблема

Около месяца назад я обновил свой почтовый сервер с Debian 11 до 12. Все прошло без сучка и задоринки, никаких ошибок в системном журнале, можно отправлять и получать электронные письма с помощью моего обычного клиентского программного обеспечения, так что все хорошо.

В течение следующих дней я обнаружил, что не могу перемещать письма в подпапки на моем iPhone или iPad. Я могу выбрать письмо(я), которое хочу переместить, затем выбрать папку, в которую хочу их переместить, и они исчезнут из списка и немедленно вернутся. Это не влияет на удаление писем (например, отправку их в корзину) или перемещение писем между папками «Входящие» и «Спам».

Я также обнаружил, что если я перехожу в почтовую папку, то папки «верхнего уровня» работают нормально, но любые папки внутри них вызывают сообщение «Ошибка учетной записи», направляющее меня в настройки для проверки пароля учетной записи.

Inbox <–– Accessible
Financial <–– Accessible
Financial/Receipts <–– Inaccessible on iOS clients

Когда я выполняю любое из этих действий с моим файлом mail.log, который tail'd, он выглядит просто нормально. Для просмотра папки: Соединение установлено для моего пользователя, затем выход из системы с пометкой "команды не отправлены". Для перемещения электронной почты: Соединение установлено для моего пользователя происходит дважды, и больше ничего.

Однако на моем Mac все это не проблема, я все еще могу просматривать эти папки, перемещать сообщения в них и из них, все, без проблем. Мой префикс IMAP одинаков на всех трех устройствах (пустой).

В Dovecot мой mailbox_location установлен как «maildir:~/Maildir:LAYOUT=fs».

Я надеюсь, что кто-то здесь уже сталкивался с чем-то подобным. Или может указать мне, где я могу получить больше информации от своего сервера или клиентов, которая может помочь мне найти причину.

Спасибо за прочтение!

Редактировать 1 (2 апреля):

Команда IMAP Listвыводит все мои почтовые папки в том виде, в котором я их ожидаю увидеть, например:

2 list "" "*"
* LIST (\HasChildren) "/" Financial
* LIST (\HasChildren) "/" Financial/Receipts
* LIST (\HasNoChildren) "/" "Financial/Receipts/eBay Receipts"
* LIST (\HasNoChildren \Sent) "/" Sent
* LIST (\HasNoChildren \Drafts) "/" Drafts
* LIST (\HasNoChildren \Trash) "/" Trash
* LIST (\HasNoChildren \Junk) "/" Junk
* LIST (\HasNoChildren) "/" INBOX
...

lsubМне это тоже не показалось чем-то необычным...

3 lsub "" "*"
* LSUB (\Junk) "/" Junk
* LSUB (\Trash) "/" Trash
* LSUB (\Drafts) "/" Drafts
* LSUB (\Sent) "/" Sent
* LSUB () "/" Financial
* LSUB () "/" Financial/Receipts
* LSUB () "/" "Financial/Receipts/eBay Receipts"
...

Извините, я забыл упомянуть, у меня установлен разделитель «/», что namespaceподтверждает:

4 namespace
* NAMESPACE (("" "/")) NIL NIL

Редактировать 2 (3 апреля):

Я также обнаружил, что мой второй почтовый сервер, который я обновил таким же образом в то же время, не имеет этой проблемы ни на одном из моих устройств. Я сброшу файлы конфигурации сегодня вечером с обоих серверов для сравнения и, надеюсь, это объяснит поведение

Редактировать 3 (3 апреля):

Новый поворот. Я установил профили ведения журнала Developer "Mail" и "Sync" на свой телефон, чтобы посмотреть, какие команды и ответы IMAP происходят в Mail на моем iPhone, и обнаружил, что телефон пытается ВЫБРАТЬ папки без разделителей (например, 15 SELECT "FinancialReceipts"вместо 15 SELECT "Financial/Receipts"). Однако странно, что все остальные команды использовали разделитель (например, STATUS).

Я добавилrawlogconfig в файл Dovecot 10-master.conf и запустил его, doveadm reloadчтобы включить ведение журнала сеанса IMAP для моей учетной записи.

Первая пара файлов .in и .out теперь показывала команды SELECT, отправленные с правильным разделителем. Я тестировал просмотр нескольких папок на телефоне, и они отлично синхронизировались, и я также мог перемещать сообщения в подпапки.

Я удалил конфигурацию rawlog и снова перезагрузил Dovecot. Поначалу перемещение сообщений и просмотр подпапок работали, но примерно через полчаса все снова остановилось.

Учитывая, что я уже перезапускал Dovecot, чтобы попытаться решить эту проблему, и это не помогло, я не думаю, что запуск doveadm reloadзаставил все снова работать. Я думаю, что это связано с изменением состояния в Dovecot, когда я включил rawlogging...

Связанный контент