Instalei o Zimbra Collaboration Suite no CentOS 7. Preciso usar o mutt para enviar um email a cada hora.
O problema é que sempre que meu script executa o mutt, ele não salva a mensagem em uma pasta específica (IMAP remoto) no .muttrc.
Enquanto isso, quando executo o comando diretamente, ele salva a mensagem na pasta.
Esta é minha configuração .muttrc, reside na página inicial do usuário atual que executa o script:
set from="IP Address Information <ip-no-reply@xxx>"
set folder="imaps://username:password@localhost"
set mask="!^\\.[^.]"
set record="+IPInfo"
set postponed="+Drafts"
set spoolfile="+INBOX"
set edit_headers=yes
set ssl_starttls=yes
set ssl_force_tls=yes
set smtp_url = "smtp://username:password@localhost:587"
Esta é a invocação do mutt, executada pelo cron a cada hora:
echo "Test" | mutt -s "IP Address Information" [email protected]
Se eu invocasse o comando assim:
mutt -s "IP Address Information" [email protected]
e siga o processo (o vira-lata abre o vi e deixa-me digitar o corpo), ele salva a mensagem na pasta. Mas não posso colocar esse comando no script, pois era para ser automático.
Esta é a pasta de destino que mencionei:
Responder1
Recentemente dividi a localização do mutt e do Zimbra e descobri que houve um problema de certificado durante a entrega do email.
mutt está aguardando confirmação para aceitar ou rejeitar um certificado e, se for executado sem interatividade, rejeita automaticamente o certificado. [esta é minha suposição do comportamento]
Aqui está um .muttrc atualizado:
set from="IP Address Information <ip-no-reply@xxx>"
set folder="imaps://username:password@zimbra_or_postfix_server"
set mask="!^\\.[^.]"
set record="+IPInfo"
set postponed="+Drafts"
set spoolfile="+INBOX"
set edit_headers=yes
set certificate_file=.mutt-certs
set ssl_starttls=yes
set ssl_force_tls=yes
set smtp_url = "smtp://username:password@zimbra_or_postfix_server:587"
Eu estava procurando a solução para esse problema e encontrei a resposta aqui:http://www.seas.upenn.edu/cets/answers/mutt-certificates.htmlque explicou que preciso adicionar set certificate_file
uma diretiva a um arquivo.
Depois de deixar o mutt salvar o certificado autoassinado, o script pode mais uma vez entregar o email ao MTA. Mas quando eu verifico a caixa de correio da conta em uso para a entrega, existe uma pasta chamada 'IPInfo' que segue a set record
diretiva. E, portanto, presumo que a solução para o meu problema original é permitir que o mutt salve o certificado autoassinado.
Espero que isso ajude quem está procurando uma resposta semelhante.