Receber emails com corpo incompleto

1

Eu tenho um host inteligente com o Getmail + Sendmail + Postfix + Dovecot conectado a um servidor remoto. Este host inteligente funciona apenas para um domínio. O postfix é usado para enviar mensagens dentro deste domínio e para domínios externos. Para receber, eu uso o Getmail para receber e-mails através do POP3S do meu servidor remoto e, em seguida, encaminhar com o Sendmail para minhas contas de usuário locais.

Para receber e-mails automaticamente de domínios externos, configurei um script para executar 5 em 5 minutos (com crontab), para verificar todas as contas de e-mail remotas no meu servidor remoto, para obter novas mensagens pelo Getmail.

Agora, recebi alguns comportamentos estranhos de um usuário, que está enviando e-mails de um domínio externo, para o domínio do meu smarthost. Às vezes, o destino recebe apenas parte do e-mail que foi enviado, parece que esse servidor às vezes não recebe todos os dados do e-mail, e a única coisa relacionada que eu vejo é que há formatação de texto que talvez esteja provocando isso, mas não é um tipo específico.

Nos logs mail.log e getmail, não há nenhum problema sendo relatado, tudo parece bem.

Este usuário está usando o Outlook.

Alguém aqui viu isso antes?

Observação: se você precisar de alguma configuração desse servidor, posso fornecer.

    
por SipriusPT 21.02.2017 / 17:54

1 resposta

0

Depois de algum debug, percebo que isso estava sendo feito no Getmail.

E com a ajuda de Charles Cazabon do Getmail , consegui resolver este "mistério".

Parece que faltavam alguns argumentos extras em cada RC getmail que eu gerava, ao evocar o sendmail, como:

-f [sender]: Set the envelope sender address. This is the address where delivery problems are sent to. With Postfix versions before 2.1, the Errors-To: message header overrides the error return address.

e o argumento que estava fazendo com que alguns usuários recebessem apenas metade de seus e-mails:

-i: When reading a message from standard input, don't treat a line with only a . character as the end of input.

Agora, este é o RC padrão do getmail que estou usando neste host inteligente:

[retriever]
type = SimplePOP3SSLRetriever
server = [remote server FQDN]
port: 995
username = test@[remote server domain]
password = qwe123

[destination]
type = MDA_external
path = /usr/sbin/sendmail
arguments = ('-i','-f [local network admin user]',"-bm", "test")
unixfrom = true

[options]
delete = true
message_log = ~/.getmail/logs/getmailrc_test.log

Espero que isso ajude outras pessoas com o mesmo problema.

Um grande obrigado pela ajuda Charles Cazabon !!!

    
por 18.05.2017 / 16:21