Press "Enter" to skip to content

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

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 mas 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}

Saia salvando o arquivo e execute o seguinte comando:

postconf -e ‘autoresponder_destination_recipient_limit = 1’

Reinicie o postfix

/etc/init.d/postfix restart

Feito. Apartir 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.

Fonte: Nefaria

creysson.jpg

3 Comments

  1. Miguel Miguel October 11, 2009

    desculpe, mas me pareceu tão complicado se comparado ao recurso de forward/vacation….vc conhece ?
    Basta rodar o comando “vacation” e digitar o texto que será usado como resposta automática. Só isso.
    O texto até aceita substituição usando variáveis como $SUBJECT, $FROM, etc…
    O mecanismo independe inclusive do mailer/mta que pode ser o postfix, sendmail, qmail, etc.

  2. Jorge Piotto Jorge Piotto October 20, 2009

    cara vai tudo bonitinho…porém…
    este comando
    useradd -d /var/spool/autoresponse -s ‘which nologin’ autoresponse
    nao reconhece
    tentei faze-lo diferente
    useradd -d /var/spool/autoresponse -s ‘ ’ autoresponse
    assim ele aceitou… mas qndo reinicia o postfix, frita tudo… para de funcionar na hora…
    cara me da uma força por favor

  3. alexos alexos October 20, 2009

    Olá Jorge,

    Troque a aspa por crase. Não funcionando faça o seguinte:

    Crie o usuário com useradd -d /var/spool/autoresponse -s autoresponse

    Usando o comando vipw edite a linha referente ao usuário criado mudando a shell padrão de /bin/bash para nologin

    Sds,

    Alexandro Silva
    http://alexos.org

Comments are closed.