LINUX.ORG.RU
ФорумAdmin

Обратное от сборщика почты для бесплатных сервисов почты.

 


0

1

Все эти Google, Mail.Ru, Yandex имеют сборщиков почты. Есть ли возможность сделать наоборот, на почтовом сервера поднять какой-то демон (желательно из распространённых в дистрибутивах) и самому передавать почту со своего домена на эти сервисы, без задействия их сборщиков почты. На своём домене работает связка postfix-dovecot.


У меня есть такое: почта попадающая в определенный IMAP (dovecot) ящик копируется и на gmail.com через локальный MTA (exim4)

$ incrontab -l
/home/info/Maildir/.ucan/cur/ IN_MOVED_TO /home/info/bin/resend_email.sh $@$#

$ cat /home/info/bin/resend_email.sh

#!/bin/sh

exec  >> /home/info/tmp/resend_email.log
exec 2>> /home/info/tmp/resend_email.log

echo "$1"
TMPMSG=/home/info/tmp/tmpmsg.$$
cp "$1" $TMPMSG

/usr/bin/file -bi $TMPMSG | /bin/fgrep -q 'message/rfc822'
if [ $? -ne 0 ]; then
        # expand compressed mail
        gzip -d -c $TMPMSG > $TMPMSG.2
        mv $TMPMSG.2 $TMPMSG
fi


/usr/bin/sendemail -o tls=no -f info@$MYLOCALDOMAIN -t $GMAILUSER@gmail.com -o  message-format=raw -o message-file="$TMPMSG" -s 127.0.0.1:25
ERR=$?
echo "ret code: $ERR"
[ $ERR -eq 0 ] && rm $TMPMSG
anonymous
()
Ответ на: комментарий от anonymous

Организовать пересылку всей почты этим скриптом (потребуются изменения) можно через procmail

anonymous
()

На своём домене работает связка postfix-dovecot.

Dovecot. Он умеет Sieve. А если не надо ничего вообще локально оставлять, через что-нибудь в самом Postfix. aliases, например. Целиком если домен надо, надо посмотреть в нём аналог mailertbles или virtusertables от Sendmail, наверняка есть что-то.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 2)

Пересылка не подходит, а то я бы её организовал средствами postfix. Причина из-за повсеместного включения жёсткой проверки dmarc.

Viper
() автор топика
Ответ на: комментарий от Viper

Пересылка не подходит, а то я бы её организовал средствами postfix.
Причина из-за повсеместного включения жёсткой проверки dmarc.

Если ориентироваться на это, то ничего не поможет. Или имеется ввиду перекладывать по, например, imap с места на место ?

AS ★★★★★
()
Ответ на: комментарий от Viper
/usr/bin/sendemail  -f info@$MYLOCALDOMAIN -t $GMAILUSER@gmail.com -o  message-format=raw

Конверт у письма новый, письмо на gmail идет от имени моего локального юзера, с моего домена.

А за счет message-format=raw при просмотре письма видны реальные отправитель и получатель.

anonymous
()
Ответ на: комментарий от Viper

Да, именно IMAP и имелся ввиду.

Тогда мысль вслух: порыться в расширениях Sieve. Может и есть что-то, и, вероятно, реализовано уже в Divecot-Sieve. Хотя, я тут бегло поискал сейчас по сочетанию «RFC Sieve», не попалось.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от Viper

есть такая штука imapsync, самому пользовать не приходилось просто знаю о ее существовании, если она и не подходит под ваши требования, можно в коде порыться и поменять под себя.

anc ★★★★★
()
Ответ на: комментарий от anonymous

Спасибо. Хотел попробовать, но postfix игнорит -o в команде sendmail. А сейчас только в голову пришло. По идеи, DMARC учитывает поле From в заголовках, и никак не учитывает поля в smtp-конверте. То есть можно использовать smtp-траспорт в postfix. Только в этом случае всплывает проблема с spf, который как раз проверяет валидность mail from.

Viper
() автор топика
Последнее исправление: Viper (всего исправлений: 1)
Ответ на: комментарий от anc

Бегло я с ним ранее ознакомился. Он для одноразовой синхронизации. Нашёл isync, он, судя по всему, умеет синхронизировать imap по каждому запуску (например в кроне), ни как демон.

Viper
() автор топика
Ответ на: комментарий от AS

В sieve искал в первую очередь, на там манипулирование внутри dovecot-а и есть возможность отослать out-of-office.

Viper
() автор топика

А есть MDA, который может по IMAP письмо положить?

Viper
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.