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

imapsync из папки в почтовый ящик

Я хотел бы знать, можно ли синхронизировать почту между резервной копией maildir, используемой списанной установкой dovecot, и действующей учетной записью электронной почты в cyrus, или перенести почту из резервной копии в cyrus. Далее следует рассказ о том, почему мы должны это сделать.

У нас был сервер cPanel с почтой, который мы сейчас переводим на почтовый сервер, который мы собираемся поддерживать внутри компании. Собственный почтовый сервер состоит из Postfix + Cyrus + SOGo + LDAP (для аутентификации). На сервере cPanel был dovecot. Мы планируем использовать imapsync для передачи почты между серверами.

Я протестировал это с двумя активными почтовыми ящиками на обоих серверах, и передача происходит без проблем. Однако вопрос в том, что мы скопировали почтовые папки для пользователей на сервере cPanel на наш локальный сервер в отдельном месте и хотим выполнить перенос / синхронизацию из этих папок в почтовые ящики.

Проверка эта ссылка пролили свет на синхронизацию между папками, но обе синхронизируют папку с почтовым ящиком imap.

Вот как выглядит скопированная папка для пользователя (находится в / some / random / location / on / the / server / me):

drwx------ 2 tester tester  16384 Jul 14 09:51 cur
-rw-r----- 1 tester tester      0 May 27 12:55 dovecot-acl-list
-rw-r----- 1 tester tester   2908 Jul 14 09:50 dovecot.index
-rw-r----- 1 tester tester 196608 Jul 14 09:51 dovecot.index.cache
-rw-r----- 1 tester tester   8712 Jul 14 09:51 dovecot.index.log
-rw-r----- 1 tester tester     13 May 27 15:45 dovecot-keywords
-rw-r----- 1 tester tester   8358 Jul 14 09:50 dovecot-uidlist
-rw------- 1 tester tester      8 Jun 22 11:06 dovecot-uidvalidity
-rw------- 1 tester tester      0 May 27 12:55 dovecot-uidvalidity.51a30a63
-rw-r----- 1 tester tester   2762 Jul 14 01:11 maildirsize
drwx------ 2 tester tester   4096 Jul 14 09:50 new
-rw-r----- 1 tester tester     44 Jun 22 11:05 subscriptions
drwx------ 2 tester tester   4096 Jul 14 01:11 tmp

Вот как выглядит конечное местоположение imap для пользователя:

-rw------- 1 cyrus mail  781 Jul 14 10:29 1.
-rw------- 1 cyrus mail  752 Jul 14 10:33 cyrus.cache
-rw------- 1 cyrus mail  156 Jul 14 10:29 cyrus.header
-rw------- 1 cyrus mail  184 Jul 14 10:33 cyrus.index
drwx------ 2 cyrus mail 4096 Jul 14 10:32 Sent
drwx------ 2 cyrus mail 4096 Jul 14 10:29 spam

         where 1. is the mail received by this user.

Для синхронизации между почтовыми ящиками я использовал следующую команду:

imapsync --host1 webmail.my1testserver.com --user1 me@my1testserver.com --password1 XXXXXX   --host2 localhost --user2 testuser --password2 XXXXXX

Синхронизация происходит между моим почтовым ящиком, который находится в сети, и моим локальным почтовым ящиком imap. Теперь, как мне синхронизировать папку на моем сервере с почтовым ящиком на моем сервере?

Чтобы уточнить, резервная копия, взятая из cPanel, находится в форме папок, имя папки которых является именем пользователя (первая часть адреса электронной почты). Это необходимо перенести / добавить в действующие почтовые ящики Cyrus.

maildir_to_imap.pl можно использовать для копирования сообщений из maildir в IMAP
почтовые ящики.

Usage: maildir_to_imap.pl -i <users list> -D <imapHost[:port]> 

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

#  Format:  maildir,IMAP user,IMAP password

/mhub4/maildirs/jill.thomas@abc.net,jill.thomas,password
/mhub4/maildirs/jsampson@abc.net,jessi.sampson,secret

Необязательные аргументы:

-L logfile  
-n <integer>  (The number of child processes to run, default is 1)
-d debug
-I log IMAP commands and responses

Поскольку этот вопрос все еще появлялся в моих поисках в 2019 году, я выбрасываю две ссылки на проекты, которые синхронизируются между локальным репозиторием Maildir и сервером IMAP:

Также после смерти автора imap-tools зеркало можно найти здесь: https://github.com/andrewnimmo/rick-sanders-imap-tools. И imapsync по-прежнему не поддерживает Maildir.

imapsync не синхронизирует Maildir с IMAP, только IMAP с серверами IMAP.

Чтобы сделать Maildir для IMAP, посмотрите http://www.athensfbc.com/imap_tools/