Estou tentando realizar ações personalizadas após o spamassassin.
Eu tenho linha de trabalho no postfix master.cf
spamassassin unix - n n - - pipe user=spamd argv=/usr/bin/spamc -e
/usr/sbin/sendmail -oi -f ${sender} ${recipient}
Mas eu quero redirecionar a saída do spamc para o meu script, que aceita argumentos, executa minhas ações e redireciona a saída do spam para o sendmail.
Eu tentei fazer
spamassassin unix - n n - - pipe user=spamd argv=/usr/bin/spamc -e
/home/scripts/my.sh ${sender} ${recipient}
E my.sh
apenas ecoando $1
e $2
, mas veja em mail.log
spamc[31244]: exec failed: Exec format error
Em suma, quero pelo menos mostrar args do remetente do remetente no echo e depois tentar redirecionar a saída do spamc para o sendmail no meu script, mas mesmo assim não consegui executar o eco simples (
UPDATE
Atualmente, tenho o seguinte conf no postfix:
smtp inet n - - - - smtpd -v -o content_filter=filter
filter unix - n n - - pipe user=spamd argv=/home/scripts/my.sh -oi -f ${sender} ${recipient}
O script experimental funciona e agora envia a saída do spamc para o arquivo (sem sendmail)
/usr/bin/spamc > /home/scripts/res
Como posso extrair esses cabeçalhos smtp como De , Para e X-Spam-Flag do resultado de spamc usando o bash e redireciona o resultado do spamc para o sendmail ? Eu quero de alguma forma usar pipes para não chamar spamc duas vezes. Eu acho que o grep pode me ajudar, mas eu não sei exatamente como extrair - outros cabeçalhos podem ser considerados como está, mas o cabeçalho De contém informação extra + mail em <>
(exemplo - De: =? UTF-8? B? NameInBB64? =) Mas não tenho certeza de que o endereço de e-mail está sempre dentro de < & gt ;. Minha sugestão está correta?
Tags bash postfix spamassassin