[Dovecot] Dovecot + managesieve + ldap not working

Stephan Bosch stephan at rename-it.nl
Wed Oct 5 22:46:37 EEST 2011


On 10/5/2011 9:20 PM, Philip Brechler wrote:
> Am 05.10.2011 um 21:04 schrieb Stephan Bosch:
>
>> On 10/5/2011 6:11 PM, Philip Brechler wrote:
>>
>> I'd expect to see more errors and debug messages preceding the log line above.
>>
>> Looking at your config, I suspect your problem has something to do with the fact that you provide no 'home' directory for your users. The default location of the active sieve script (as configured with sieve=) is ~/.dovecot.sieve. You don't override this, so this is what you are now using. Since no home directory is defined, ~/ cannot be substituted, causing this failure (there must be an error about this in your logs somewhere). You can do something analogous to your sieve_dir setting and use % variable substitution in your sieve= setting. Still, having no home directory for your users is a bad idea. Read the wiki for more information:
>>
>> http://wiki2.dovecot.org/VirtualUsers/Home
>>
>> Also read this carefully:
>>
>> http://wiki2.dovecot.org/Pigeonhole/ManageSieve/Configuration
>>
> Hi,
> thanks for your fast response I added a sieve= Option and now I get this log reading until it fails with the same error massage in telnet
>
>   Info: client out: OK	1	user=user
> 2011-10-05 21:15:53 auth(default): Info: master in: REQUEST	3	12101	1
> 2011-10-05 21:15:53 auth(default): Info: ldap(user,127.0.0.1): user search: base=dc=piratenfraktion-berlin,dc=de scope=subtree filter=(|(&(objectClass=organizationalPerson)(uid=user))(&(objectClass=organizationalPerson)(mail=user))) fields=uid
> 2011-10-05 21:15:53 auth(default): Info: ldap(user,127.0.0.1): result: uid(mail=maildir:/var/mail/%$/Maildir/)=maildir:/var/mail/user/Maildir/
> 2011-10-05 21:15:53 auth(default): Info: master out: USER	3	user	mail=maildir:/var/mail/user/Maildir/
> 2011-10-05 21:15:53 managesieve-login: Info: Login: user=<user>, method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, secured
> 2011-10-05 21:15:53 MANAGESIEVE(user): Info: Effective uid=5000, gid=5000, home=(none)
> 2011-10-05 21:15:53 MANAGESIEVE(user): Info: sieve-storage: using active sieve script path: /var/var/mail/sievescript/user_scripts/.dovecot.sieve
> 2011-10-05 21:15:53 MANAGESIEVE(user): Info: sieve-storage: using sieve script storage directory: /var/mail/sievescript/user_scripts/
>
> That's it no more errors or anything.

In fact, I see no errors at all. That is not possible if you get that 
same critical error in telnet. I would also expect the following 
additional debug message:

MANAGESIEVE(user): Info: sieve-storage: relative path to sieve storage 
in active link: ...

Or an error aboutsieve_storage_verify_dir() failing.

I'm not sure what is going on at your end. Make sure you are checking 
the correct log file: the BYE error in telnet has a time stamp that 
matches the line in your log file.

Two additional things I notice:

- You still don't return a home directory from your userdb.
- You placed the active sieve script link (.dovecot.sieve) inside your 
sieve_dir directory (/var/mail/sievescript/user_scripts/). That is not 
recommended. I would recommend something like the following:

sieve_dir=/var/mail/sievescript/%u/scripts/
sieve=/var/mail/sievescript/%u/.dovecot.sieve

Regards,

Stephan.




More information about the dovecot mailing list