você está aqui: Home  → Arquivo de Mensagens Programação Shell Linux: Inscrições Abertas

Postfix - Habilite o Auto-Reply/Vacation usando o Autoresponse

Colaboração: Alexandro Silva

Data de Publicação: 26 de Outubro de 2009

Qual o Sysadmin que nunca se deparou com seu chefe informando numa sexta-feira perto do final do expediente que entrará de férias na segunda. Informando que precisa que seus emails sejam respondidos automaticamente avisando suas férias?

Foi para resolver está situação que o Charles criou o Autoresponse. Este script foi criado para auxiliar o postfix na tarefa de responder automaticamente a mensagens.

Sua instalação é muito simples e o troço funciona que é uma beleza.

Agora vamos por a mão na massa!!!

Baixe e descompacte o Autoresponse.

mkdir ~/tmp
cd ~/tmp
wget -c http://www.nefaria.com/scriptz/autoresponse-1.6.3.tar.gz
tar -xvf autoresponse-1.6.3.tar.gz

Acesse o diretório criado e execute os comandos para a instalação

cd autoresponse
useradd -d /var/spool/autoresponse -s 'which nologin' autoresponse
mkdir -p /var/spool/autoresponse/log /var/spool/autoresponse/responses
cp ./autoresponse /usr/local/sbin/
chown -R autoresponse.autoresponse /var/spool/autoresponse
chmod -R 0770 /var/spool/autoresponse

Faça uma cópia de segurança do arquivo /etc/postfix/master.cf

cd /etc/postfix
cp master.cf master.cf.ORIG

Edite o master.cf e localize a seguinte linha

smtp      inet  n       -       n       -       -       smtpd

Adicione a seguinte linha, abaixo da informada anteriormente

-o content_filter=autoresponder:dummy

A linha ficará assim:

smtp      inet  n       -       n       -       -       smtpd
      -o content_filter=autoresponder:dummy

Adicione a linha abaixo no final da seção "# Other external delivery methods.":

autoresponder unix      -      n       n       -       -        pipe
   flags=Fq user=autoresponse argv=/usr/local/sbin/autoresponse -s ${sender} -r ${original_recipient} -S ${sasl_username} -C ${client_address}

Salve o arquivo e execute o seguinte comando:

postconf -e 'autoresponder_destination_recipient_limit = 1'

Reinicie o postfix

/etc/init.d/postfix restart

Feito. A partir de agora o postfix responderá automaticamente os emails quando necessário.

Para autocriar uma mensagem de resposta automática via email:

Envie um e-mail para [usuário]+autoresponse@seudominio.com.br onde "usuário"
é a conta de e-mail para o usuário que você está definindo a mensagem de
resposta automática. A mensagem deve ser proveniente da conta de email
do próprio usuário (por razões de segurança), caso contrário uma resposta
automática não será criada.  Se você tem uma mensagem pré-existente, será
excluída e o usuário será notificado por e-mail que a mensagem de resposta
automática foi desativada. Pense nisso como um interruptor. Se você não tiver
um pré-existente mensagem de resposta automática, a mensagem que você enviar
passará a ser a sua resposta automática. Você deseja formatar a mensagem
exatamente como você gostaria que ela aparecesse.

Você também poderá criar uma mensagem automática através da console:

Para habilitar a autoresposta digite:

autoresponse -e usuário@seudominio.com.br

O VI será aberto para que você possa digitar a mensagem que será exibida no corpo do email.

Para desabilitar a autoresposta

autoresponse -d usuário@seudominio.com.br

Para habilitar novamente:

autoresponse -E usuário@seudominio.com.br

Para deletar a autoresposta

autoresponse -D usuário@seudominio.com.br

NOTA: Em alguns momentos ao desativar, reativar ou mudar a mensagem tive que apagar o diretório do usuário que foi criado em /var/spool/autoresponse/responses/usuario@dominio.com.br e em /var/spool/autoresponse/logs/usuario@dominio.com.br para que o autoresponse voltasse a funcionar para esse usuário.

Blog do autor


Veja a relação completa dos artigos de Alexandro Silva