O wrapper de filtro de vírus de e-mail para ClamAV clamassassin
anexa seus cabeçalhos aos cabeçalhos das mensagens.
X-Virus-Status: No
X-Virus-Checker-Version: clamassassin 1.2.4 with clamscan / ClamAV 1.0.3/27134/Mon Dec 25 11:40:06 2023
Seria melhor que qualquer MTA que entregasse a mensagem apenas precedesse os cabeçalhos, como sugere a RFC 5322, 3.6 :
No entanto, para efeitos desta especificação, os campos de cabeçalho NÃO DEVEM ser reordenados quando uma mensagem é transportada ou transformada. Mais importante ainda, os campos de cabeçalho de rastreamento e os campos de cabeçalho reenviados NÃO DEVEM ser reordenados e DEVEM ser mantidos em blocos anexados à mensagem. Consulte as seções 3.6.6 e 3.6.7 para obter mais informações.
Por exemplo, spamassassin
acrescenta seus X-Spam-*
cabeçalhos acima dos cabeçalhos existentes. Por que clamassassin
não faz o mesmo e como alterar esse comportamento? Se, por exemplo, .procmailrc
tivesse o seguinte, esperaria que esses cabeçalhos aparecessem no mesmo lugar.
:0 fw
| clamassassin
:0 fw
| spamassassin
Razões
O
clamassassin
é um script de shell antigo que foi desenvolvido entre 2003 e 2007, enquanto o RFC 5322 é mais recente, datado de 2008. Portanto, o autor declamassassin
, James Lick, pode não estar ciente de tais demandas.Além disso, utiliza o (re)formatador de correio
clamassassin
do Procmail para adicionar os cabeçalhos. Como apenas , , & são anexados aos cabeçalhos, é impossível alterar esse comportamento sem uma grande reescrita do script.formail(1)
formail
-a
-A
-i
-I
Gambiarra
Como solução alternativa, escrevi um pequeno script,
mail-prepender.sh
que pode ser usado para substituirformail
o caso de uso declamassassin
. Ele simplesmente acrescenta todos os cabeçalhos fornecidos como qualquer um desses sinalizadores e mantém todo o resto intacto. Os sinalizadores-x
&-X
também são implementados comoclamassassin
usos-c -x
para extrair oSubject
cabeçalho dos cabeçalhos originais.Em sistemas baseados em Debian, o script é configurável através de
/etc/default/clamassassin
onde você pode adicionar o caminho para este script como o caminhoformail
adicionando, por exemplo,Resultados
Testado no Debian 12, onde o início dos cabeçalhos agora fica assim em resultados limpos:
Quando o ClamAV detecta algo, os cabeçalhos ficam assim: