Назад | Перейти на главную страницу

Настройка прокси-сервера IMAP для использования IMAP IDLE?

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

Я работаю в компании, у которой есть собственный почтовый сервер IMAP, использующий VPOP3 Enterprise.[1] v6.10 на Windows Server (извините, не знаю, какая версия). Нашему системному администратору (в основном) нравится почтовый сервер, который мы используем, это платная лицензия, и он принимает окончательное решение. Моя единственная реальная жалоба на сервер - это отсутствие (или сломанная) поддержка IMAP IDLE. Я ненавижу отсутствие поддержки IDLE, и я спросил об этом системного администратора. Он говорит, что ранее включал поддержку IDLE в VPOP3, но, очевидно, есть некоторая странность с Outlook и IDLE (или, может быть, просто реализация VPOP3?), Которая помешала ему оставить ее включенной [вероятно, половина компании, если не больше, использует Outlook для своих почтовый клиент]. Я нашел очень мало документации[2] о поддержке VPOP3 для IMAP IDLE[3].

Многие из нас работают «в полевых условиях», и приятно иметь возможность получать электронную почту, когда вас нет в офисе ... поэтому многие из нас используют для этого свои смартфоны. К сожалению, мы должны настроить наши устройства на «опрос» сервера, что требует поиска баланса между частотой опроса и временем автономной работы. Меня испортила "push" почта с Gmail и моей университетской почтовой учетной записью (до перехода на Google Apps раньше работала на собственных серверах IMAP), поэтому я очень надеюсь обойти эту проблему.

С фоном в стороне - я хочу настроить другой сервер в нашей локальной сети для "прокси" почты с сервера VPOP3 и позволить клиентам подключаться к нему.

В идеале я бы хотел, чтобы решение:

  1. автоматически синхронизировать все изменения с прокси-сервера обратно в VPOP3 (например, отмечать сообщения как прочитанные, удалять, перемещать в папки и т. д.)
  2. не требовать моего вмешательства, если другие в компании хотят использовать этот прокси
    • Я не хочу вручную настраивать имена пользователей и пароли для подключения к серверу VPOP3. Предпочтительное решение не будет кэшировать / получать почту для пользователя, пока он не войдет в прокси-сервер в первый раз. После того, как они вошли в систему, кешируйте свои учетные данные (надеюсь, зашифрованные!) И опрашивайте VPOP3 для получения электронной почты каждую минуту (?) Или около того. Таким образом, я не буду тратить ресурсы на пользователей, которые не будут его использовать [а их, вероятно, будет много].
  3. позволяют клиентам поддерживать соединение в режиме IDLE для поддержки по электронной почте.
  4. требовать как можно меньше места на диске (т.е. избегать хранения самой почты на моем прокси-сервере IMAP)
    • Мне бы очень хотелось, чтобы большая часть содержимого почты (тело, вложения) оставалась на сервере VPOP3, а прокси просто загружал сообщения на лету. Или, возможно, кешировать последние X дней / МБ / сообщений для пользователей, которые вошли в систему (чтобы не загромождать основной почтовый сервер запросами). Я нормально храню заголовки / метаданные на прокси; Я просто не хочу хранить дублировать все сообщения и вложения на прокси-сервере.

Еще немного информации о наших серверах:

Варианты, которые я просмотрел (но не обязательно отклонил):

[1] www.pscs.co.uk/products/vpop3/enterprise.php
[2] www.pscs.co.uk/manual/index.html?services_imap_advanced.html
[3] wiki.pscs.co.uk/reference:imap4_advanced?s[]=idle
[4] serverfault.com/questions/458015/imap-proxy-with-message-cache
[5] dovecot.org/pipermail/dovecot/2013-June/090884.html
[6] serverfault.com/questions/500591/fetch-all-mail-from-an-imap-server-with-postfix-to-distribute-on-local-imap-serv
[7] offlineimap.org
[8] imapsync.lamiral.info
[9] www.fetchmail.info
[10] pyropus.ca/software/getmail/

main.c:      * If this token is IDLE, discard it.
main.c:     if ( ! strncasecmp( CP, "IDLE", strlen( "IDLE" ) ) )

если прокси-сервер IMAP http://squirrelmail.org/download.php#imap_proxy тогда возможность IDLE отбрасывается. возможно, сложно реализовать его функцию.