Olá, neste primeiro tutorial sobre como adicionar
Disclaimer, que são mensagens automáticas que serão inseridas no rodapé das mensagens enviadas, faremos a implementação básica modificando todas as mensagens enviadas pelo seu servidor.
Primeiramente precisamos instalar o software
alterMIME, para qual o
Postfix irá redirecionar a mensagem e fará o trabalho de adicionar o Disclaimer.
Obs.: Nesta dica utilizamos o
Debian Squeeze com o repositório Stable:
# aptitude install altermime
Agora vamos criar um usuário que será responsável ela execução do filtro externo, assim como o diretório para o mesmo trabalhar as mensagens:
# useradd -r -c "Postfix Filters" -d /var/spool/filter filter -s /dev/null
# mkdir /var/spool/filter
# chown filter:filter /var/spool/filter
# chmod 750 /var/spool/filter
Precisamos fazer as modificações abaixo no arquivo
Master.cf, para que o mesmo direcione as mensagens para o filtro externo somente para as mensagens enviadas pelo nosso servidor, evitando que o mesmo adicione o conteúdo em mensagens recebidas de fora, e ao executar outros filtros locais, como
Amavis por exemplo.
Modifique o serviço SMTP, conforme abaixo:
127.0.0.1:smtp inet n - n - - smtpd
IP_LAN:smtp inet n - n - - smtpd
-o content_filter=disclaimer:
IP_WAN:smtp inet n - n - - smtpd
Você deve substituir IP_LAN pelo IP utilizado pelos clientes locais de e-mail e IP_WAN pelo IP utilizado para receber as mensagens externas.
Ainda no final do arquivo, adicione o filtro externo:
disclaimer unix - n n - - pipe
flags=Rq user=filter argv=/etc/postfix/filters/disclaimer.sh -f ${sender} - ${recipient}
Feito isso, crie o arquivo
disclaimer.sh no diretório acima (
/etc/postfix/filters) com o seguinte conteúdo:
#!/bin/sh
INSPECT_DIR=/var/spool/filter
SENDMAIL=/usr/sbin/sendmail
# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69
# Clean up when done or when aborting.
trap "rm -f in.$$" 0 1 2 3 15
# Start processing.
cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit
$EX_TEMPFAIL; }
cat >in.$$ || { echo Cannot save mail to file; exit $EX_TEMPFAIL; }
/usr/bin/altermime -input=in.$$ \
-disclaimer=/etc/postfix/disclaimer/default.txt \
-disclaimer-html=/etc/postfix/default.html \
-xheader="X-Copyrighted-Material: Colocar site da empresa aqui http://www.company.com/privacy.htm" || \
{ echo Message content rejected; exit $EX_UNAVAILABLE; }
$SENDMAIL -oi "$@" <in.$$
exit $?
Modifique o grupo da pasta
/etc/postfix/filters e do script "disclaimer.sh" para
filter, para que o usuário tenha permissão para executar o mesmo:
# chgrp filter /etc/postfix/filters -R
Você deve colocar a mensagem que será inserida automaticamente nos arquivos
/etc/postfix/disclaimer/default.txt e
/etc/postfix/default.html, com suas versões em texto puro e HTML, automaticamente.
Observe que, através do parâmetro
xheader, estamos inserindo uma informação no cabeçalho da mensagem, e é muito utilizado colocar a URL para as políticas de correio eletrônico da empresa.
Feito isso, efetue o restart no Postfix e teste o funcionamento.
Obrigado,
Fabio Soares Schmidt
http://respirandolinux.wordpress.com
Nenhum comentário foi encontrado.