V #586
Jon Wilson
jon at phuq.co.uk
Mon Nov 8 07:27:00 EST 2004
> Date: Thu, 4 Nov 2004 18:45:19 +0100
> From: Ralph Roessner <roessner at rbg.informatik.tu-darmstadt.de>
> Subject: Re: using ldap for obtaining group membership information
>
> Cyrus IMAP with LDAP ptloader still uses saslauthd for authentication. But
> before it does authentication, it uses LDAP to canonify the user name. That
> is what you are seeing here:
>
> First it binds with admin rights:
>
> Then it changes uid to the user that is being canonified and asks for its
> own user name. The assumption is that the LDAP server will return the
> canonical user name. (In LDAPish this reads: execute a "who am i" extended
> operation with "proxyauthz" control in place).
>
> Note the error 32. This is called LDAP_NO_SUCH_OBJECT and means in this case
> that the search base ("uid=jon,cn=simple,cn=auth") does not exist. You
> probably need to adjust the SASL -> uid mapping in the LDAP configuration
> so that "The user with authcid 'jon' authenticated by the simple mechanism"
> gets translated to "uid=jon,cn=people,dc=mydomain,dc=com" or whatever your
> user subtree is called. See the slapd.conf man page, keyword "sasl-regexp".
>
> To summarize: The Cyrus IMAP ptloader does not find your users in the LDAP
> tree. Neither authentication nor group lookup is even tried.
OK. That makes sense. What confuses me is that I have "ldap_sasl: 0" in
imapd.conf, no SASL support in my LDAP server, and "sasl-authz-policy
none" in slapd.conf (just for good measure). So why is ptloader trying
to do proxyauth at all?
It looks like I am being forced to use SASL and proxyauthz when using
ptloader. Is this correct?
> Then try turning SASL off: option "ldap_sasl: 0". This may save you the
> trouble of finding a working "sasl-regexp".
Have done, see below
> Date: Thu, 4 Nov 2004 13:46:50 -0500 (EST)
> From: Igor Brezac <igor at ipass.net>
> Subject: Re: using ldap for obtaining group membership information
>
> Show us your config and I can help you from there. There are quite a few
> ways you can configure ptloader.
######## imapd.conf ############
configdirectory: /var/imap
partition-default: /home/cyrus/mail
admins: cyradmin
plaintextloginpause: 0
sieveusehomedir: false
sievedir: /home/cyrus/sieve
sasl_pwcheck_method: saslauthd
sasl_mech_list: plain login
allowplaintext: 0
ptloader_sock: /var/imap/ptclient/ptsock
ldap_base: dc=mydomain,dc=com
ldap_deref: never
lmtp_downcase_rcpt: 1
ldap_filter: "&(objectclass=inetOrgPerson)(uid=%u))"
ldap_group_base: "ou=groups,dc=mydomain,dc=com"
ldap_group_filter: "&(objectclass=posixGroup)(cn=%u)"
ldap_group_scope: sub
ldap_member_base: "ou=groups,dc=mydomain,dc=com"
ldap_member_atttribute: memberUid
ldap_member_method: attribute
ldap_member_scope: sub
ldap_bind_dn: cn=Manager,dc=mydomain,dc=com
ldap_password: p
ldap_uri: ldap://localhost/
ldap_sasl: 0
ldap_authz: 0
tls_cert_file: /var/imap/server.pem
tls_key_file: /var/imap/server.pem
###### cyrus.conf ############
START {
recover cmd="ctl_cyrusdb -r"
}
SERVICES {
imap cmd="imapd" listen="imap" prefork=0
imaps cmd="imapd -s" listen="imaps" prefork=0
pop3 cmd="pop3d" listen="pop3" prefork=0
pop3s cmd="pop3d -s" listen="pop3s" prefork=0
lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0
ptloader cmd="ptloader" listen="/var/imap/ptclient/ptsock" prefork=1
}
EVENTS {
checkpoint cmd="ctl_cyrusdb -c" period=30
delprune cmd="cyr_expire -E 3" at=0400
tlsprune cmd="tls_prune" at=0400
}
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list