Se você se perguntar o que era isso: era um caminho errado na configuração, porque eu usei% u mas eu usei% m
Eu quero usar managesieve no meu servidor dovecot que usa usuários virtuais e um ldap para os usuários. Isso está no meu dovecot.conf:
plugin {
sieve_dir=/var/mail/sievescript/%u_scripts
sieve_extensions = +imapflags
}
protocol managesieve {
login_executable = /usr/lib/dovecot/managesieve-login
mail_executable = /usr/lib/dovecot/managesieve
managesieve_max_line_length = 65536
managesieve_logout_format = bytes=%i/%o
listen = *:2000
}
Se eu tentar falar com managesieve com telnet, isso acontece:
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
"IMPLEMENTATION" "dovecot"
"SIEVE" "fileinto reject envelope encoded-character vacation subaddress comparator- i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date imapflags"
"SASL" "PLAIN LOGIN"
"STARTTLS"
"NOTIFY" "mailto"
"VERSION" "1.0"
OK "Dovecot ready."
AUTHENTICATE "PLAIN" "xxxxxxxxxxxxx"
BYE "Internal error occured. Refer to server log for more information. [2011-10-02 00:48:09]"
Connection closed by foreign host.
O log da Dovecot diz:
2011-10-02 00:48:09 MANAGESIEVE(user): Fatal: Failed to create sieve storage with data: /var/mail/sievescript/user_scripts
A pasta sievescirpt é de propriedade de dovecot: dovecot. Alguém pode ajudar por favor?
Obrigado.
O Dovecot não acessa scripts de email ou peneira como o usuário do dvecot, o que é explicado na documentação VirtualUsers , então é muito provável que você precise para descobrir o que UserID que a Dovecot está usando para esse usuário virtual, conforme atribuído a partir do banco de dados do usuário.