Debian Wheezy - Erro: Return-Path nulo no Sieve scripts [Resolvido] [Dica]
Debian Wheezy - Erro: Return-Path nulo no Sieve scripts [Resolvido]
Publicado por Fabrizio em 18/02/2015
[ Hits: 1.813 ]
Tenho quebrado a cabeça para fazer funcionar o aviso de férias pelo Sieve scripts do Dovecot.
Administro um servidor que é usado para baixar e-mails por Fetchmail e enviar e-mails via relay, e precisava deste aviso de férias ativado. Acontece que depois de muito pesquisar, mensagens automáticas (não enviadas pelo usuário e sim pelo próprio sistema) têm em seu cabeçalho o valor Return-Path: <>.
Foi definido por RFCs como a 822, que o Return-Path precisa ter o valor <> a fim de evitar loops, mas tem hospedagens que bloqueiam o relay, caso não possua nenhum valor, como a Locaweb por exemplo, por questões de segurança, evitar a propagação de SPAMs etc.
Achei que é possível escrever no Return-Path, o mesmo endereço do TO (Para) colocando o parâmetro "sieve_vacation_send_from_recipient = yes" dentro da seção plugin, em /etc/dovecot/conf.d/90-sieve.conf, conforme explica na wiki do Dovecot neste link:
Pigeonhole/Sieve/Extensions/Vacation - Dovecot Wiki
Porém este parâmetro do Dovecot não funcionava de jeito nenhum, revirei páginas e páginas do Google e nada, até que descobri o por quê: utilizo o Debian Wheezy e a versão do Dovecot do Debian Wheezy, a 2.1.7, possui um bug que ignora o valor "yes". Corrigi o problema colocando o repositório Backports e atualizando a versão do Dovecot para a 2.2.9.
Vou demonstrar alguns passos para corrigir o problema.
1. Colocar o repositório Backports no "sources.list":
# echo -e "\ndeb http://http.debian.net/debian wheezy-backports main" >> /etc/apt/sources.list
2. Rodar um:
3. Instalar a versão do Dovecot pelo repositório Backports:
# apt-get -t wheezy-backports install dovecot-imapd dovecot-managesieved dovecot-sieve
Esta versão corrige o bug que não aceita o parâmetro "sieve_vacation_send_from_recipient = yes" e impossibilita o envio de auto-respostas para alguns domínios via relay com o "Return-Path" nulo.
Obs.: o ".forward" junto com o comando vacation dentro do home do usuário funciona sem problemas, escrevendo no Return-Path o mesmo valor do TO, porém, como uso o webmail Roundcube, os Sieve scripts acabam facilitando por já terem uma compatibilidade melhor com o Roundcube.