você está aqui: Home  → Arquivo de Mensagens

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

Opinião dos Leitores

Mauro Rechi
26 Jul 2016, 12:53
Alguém sabe como fazer a acentuação no texto de resposta?
Mauro Rechi
09 Jun 2016, 21:04
Funciona perfeitamente! Só alterem na seção "# Other external delivery methods." no master.cf tive que substituir a opção "${original_recipient}" por "${recipient}" .
Este é o certo!
leonardo
16 Mai 2015, 14:21
estou executando esse comando useradd -d /var/spool/autoresponse -s 'which nologin' autoresponse e está retornando essa resposta: useradd: shell 'which nologin' inválida. Sabe me dizer o que é?
Jairo Rodrigues
03 Mai 2012, 19:25
Na seção "# Other external delivery methods." no master.cf tive que substituir a opção "${original_recipient}" por "${original_recipient}" para que funcionasse... no mais tudo perfeito... é simples... prático e funcional!

abs
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script