Мне нужно доставить входящую почту от моего локального MTA в (удаленный) почтовый ящик IMAP. Есть ли инструмент, который может это сделать?
Я не могу доставить почту через SMTP, потому что спам-фильтры удаленной системы и т. Д. Слишком строгие и не позволяют надежно "простую" пересылку почты.
Местный MTA - exim4. Это вряд ли изменится, но я открыт для предложений (это мой личный сервер). У меня нет доступа к удаленной системе, кроме учетной записи IMAP, конечно.
Знаю о offlineimap и подобных программах; однако моя цель - не хранить почту локально.
Возможно, самый простой подход - использовать ssh
как местный агент доставки.
Вы должны изменить маршрутизатор для локальной доставки следующим образом:
begin routers
. . . . .
local:
driver = accept
domains = +local_domains
transport = remote_delivery
. . . . .
и транспорт:
begin transports
. . . . .
remote_delivery:
driver = pipe
command = /path/to/ssh -i /path/rsa_key user@remote.tld \
deliver -d \$local_part@\$domain -f \$sender_address
. . . . .
Каждый раз, когда местный MTA хочет доставить сообщение локально, remote_delivery
транспорт будет активирован. ssh
установит авторизованное для ключевого файла соединение с удаленным хостом, затем вызовет deliver
утилите, а затем передайте сообщение ее stdin
. И deliver
все остальное сделает утилита.