pykolab.noarch 0.7.27-3.1.el6.kolab_14
"kolab sync-mailhost-attrs -d 9" updates one of our LDAP entries twice, once/first with the correct mailbox mailhost and once/second with an alias mailbox mailhost. We know that the alias mailbox should not even exist in cyrus but it does.
In our case we think the problem would not show up if "sync-mailhost-attrs" wouldn't use "alias" in LDAP-Filter. And by the way we are asking if it makes sense to use "alias" attribute in LDAP filter for "sync-mailhost-attrs".
Is it somehow possible to avoid this by configuration?
The filter we see with "-d 9"*
(&(&(objectclass=kolabinetorgperson)(objectclass=mailrecipient)(mail=*))(|(mail=pitb.mse@domain.de)(alias=pitb.mse@domain.de)))
The LDAP objetc
dn:: ------------------------------------------------------------------------------------------------------------------------------== objectClass: gosaAccount objectClass: gotoEnvironment objectClass: inetOrgPerson objectClass: kolabInetOrgPerson objectClass: lhmNoPersonEntry objectClass: lhmObject objectClass: lhmTempKolab objectClass: mailRecipient objectClass: organizationalPerson objectClass: person objectClass: posixAccount objectClass: top cn: mailbox-ftd.pdika.mse gidNumber: 504 homeDirectory: /home/ftd.pdika.mse sn: mailbox-ftd.pdika.mse uid: ftd.pdika.mse uidNumber: 121101051 alias: pitb.mse@domain.de displayName: MSE-PDIKA-FTD givenName: mailbox l:: TcO8bmNoZW4= lhmCalUser: Nein lhmDisplayPrintTel: FALSE lhmDisplayPrintTelIndex: FALSE lhmFaxUser: Nein lhmListMemberAuto: FALSE lhmMailboxServer: head lhmObjectID: 8111155151 lhmOfficeLocalityName:: TcO8bmNoZW4= lhmOfficePostalCode: 82222 lhmOfficeStreetAddress: Friedenstr. 40 lhmPopImap: IMAP lhmTempKolabEnabled: TRUE mail: ftd.pdika.mse@domain.de mailQuota: 1048576 ou: MSE-PDIKA-FTD postalCode: 81671 street: Friedenstr. 40
Cyrus/Kolab knows about the alias mailbox
root@kolabmupdatep001a [0] ~ # kolab lm user/pitb.mse@domain.de user/pitb.mse@domain.de root@kolabmupdatep001a [0] ~ # kolab list-mailbox-metadata user/pitb.mse@domain.de Folder user/pitb.mse@domain.de /shared/vendor/cmu/cyrus-imapd/partition fast /shared/vendor/cmu/cyrus-imapd/lastupdate 2-Aug-2016 07:37:16 +0200 /shared/vendor/cmu/cyrus-imapd/duplicatedeliver false /shared/vendor/cmu/cyrus-imapd/pop3newuidl true /shared/vendor/cmu/cyrus-imapd/size 3813044 /shared/vendor/cmu/cyrus-imapd/sharedseen false /shared/vendor/cmu/cyrus-imapd/server kolabbep004.srv.ha3.dir.domain.de /shared/vendor/cmu/cyrus-imapd/uniqueid 8c61c735-6190-4f2f-a3cf-4aa81231c356
Cyrus/Kolab knows about the mail mailbox
root@kolabmupdatep001a [0] ~ # kolab list-mailbox-metadata user/ftd.pdika.mse@domain.de Folder user/ftd.pdika.mse@domain.de /shared/vendor/cmu/cyrus-imapd/partition fast /shared/vendor/cmu/cyrus-imapd/lastupdate 12-Aug-2016 09:25:12 +0200 /shared/vendor/cmu/cyrus-imapd/duplicatedeliver false /shared/vendor/cmu/cyrus-imapd/pop3newuidl true /shared/vendor/cmu/cyrus-imapd/server kolabbep002.srv.ha3.dir.domain.de /shared/vendor/cmu/cyrus-imapd/size 7289824 /shared/vendor/cmu/cyrus-imapd/sharedseen false /shared/vendor/kolab/folder-type mail /shared/vendor/cmu/cyrus-imapd/uniqueid 07b5aa5e-9216-4382-856d-618c43546b5f root@kolabmupdatep001a [0] ~ # kolab lm user/ftd.pdika.mse@domain.de user/ftd.pdika.mse@domain.de
our config
oot@kolabmupdatep001a [0] ~ # cat /etc/kolab/kolab.conf
# Managed by Puppet, from modules/kolab/templates/kolab/kolab.conf.erb
## !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
## due to a software problem kolab is not able to use "autocreate_folders" under
## [kolab] section. It's only possible to use it in a domain specific section
##
## !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[kolab]
imap_backend = cyrus-imap
domain_sync_interval = 600
sync_interval = 300
default_locale = de_DE
auth_mechanism = ldap
primary_domain = domain.de
policy_uid = (givenname)s.%(surname)s.lower()
daemon_rcpt_policy = False
[domain.de]
primary_mail = %(uid)s@%(domain)s
default_quota = 1048576
autocreate_folders = {
'Kalender': {
'annotations': {
'/private/vendor/kolab/folder-type': "event.default",
'/shared/vendor/kolab/folder-type': "event",
},
},
'Kalender/Privat': {
'annotations': {
'/private/vendor/kolab/folder-type': "event.private",
'/shared/vendor/kolab/folder-type': "event",
},
},
'Kalender/Vertraulich': {
'annotations': {
'/private/vendor/kolab/folder-type': "event.confidential",
'/shared/vendor/kolab/folder-type': "event",
},
},
'Configuration': {
'annotations': {
'/private/vendor/kolab/folder-type': "configuration.default",
'/shared/vendor/kolab/folder-type': "configuration",
},
},
'Adressbuch': {
'annotations': {
'/private/vendor/kolab/folder-type': "contact.default",
'/shared/vendor/kolab/folder-type': "contact",
},
},
'Drafts': {
'annotations': {
'/private/vendor/kolab/folder-type': "mail.drafts",
},
},
'Sent': {
'annotations': {
'/private/vendor/kolab/folder-type': "mail.sentitems",
},
},
'Junk': {
'annotations': {
'/private/vendor/kolab/folder-type': "mail.junkemail",
},
},
'Aufgaben': {
'annotations': {
'/private/vendor/kolab/folder-type': "task.default",
'/shared/vendor/kolab/folder-type': "task",
},
},
'Archives': {
'quota': 0,
'partition': 'archive'
},
'Trash': {
'annotations': {
'/private/vendor/kolab/folder-type': "mail.wastebasket",
},
},
}
[imap]
virtual_domains = userid
[ldap]
ldap_uri = ldap://ldap.domain.de:389
supported_controls = 0,2,3
base_dn = c=de
bind_dn = cn=svc pykolab,ou=kolab,o=Application,c=de
bind_pw = o-------------------*******i
service_bind_dn = cn=svc pykolab,ou=kolab,o=Application,c=de
service_bind_pw = o----------------------------*****************i
user_base_dn = c=de
user_filter = (|(uid=cyrus-admin)(uid=sieve-admin)(&(objectclass=inetorgperson)(objectclass=mailrecipient)))
user_scope = sub
kolab_user_base_dn = c=de
kolab_user_filter = (&(objectclass=kolabinetorgperson)(objectclass=mailrecipient)(mail=*))
group_base_dn = c=de
group_filter = (&(objectclass=lhmDistributionList)(|(objectclass=groupofuniquenames)(objectclass=groupofurls))(!(objectclass=nstombstone)))
group_scope = sub
resource_base_dn = c=de
resource_filter = (&(objectclass=kolabresource)(|(&(objectclass=kolabsharedfolder)(kolabfoldertype=event)(mail=NOCHNICHTAKTIV))(objectclass=groupofuniquenames)(objectclass=groupofurls))(!(objectclass=nstombstone)))
sharedfolder_base_dn = c=de
sharedfolder_filter = (&(objectclass=kolabsharedfolder)(!%(group_filter)s)(!(objectclass=nstombstone)))
sharedfolder_acl_entry_attribute = acl
domain_base_dn = ou=kolab,o=Application,c=de
domain_filter = (&(objectclass=domainrelatedobject)(associatedDomain=*))
domain_name_attribute = associateddomain
domain_rootdn_attribute = inetdomainbasedn
auth_attributes = mail, uid
mail_attributes = mail, alias
mailserver_attribute = mailhost
quota_attribute = mailquota
unique_attribute = nsuniqueid
[wallace]
footer_html = /etc/kolab/footer.html
footer_text = /etc/kolab/footer.text
modules = invitationpolicy, resources
kolab_invitation_policy = EVENT_SAVE_AND_FORWARD:domain.de, EVENT_CANCEL_DELETE_AND_NOTIFY, ACT_UPDATE_AND_NOTIFY, ACT_MANUAL
resource_calendar_expire_days = 100
invitationpolicy_autoupdate_other_attendees_on_reply = True
[kolab_smtp_access_policy]
cache_retention = 86400
address_search_attrs = mail, alias
sender_header = True
xsender_header = False
alias_sender_header = False
delegate_sender_header = True
sender_header_enc_key = 'simple'
[cyrus-sasl]
result_attribute = mail
[cyrus-imap]
uri = imaps://imap.domain.de:993
admin_login = cyrus-admin
admin_password = o++++++++++++++************+sh
[kolab_wap]
api_url = https://kolabwebadminp001.srv.ha3.dir.domain.de/api
skin = default
sql_uri = mysql://kolab:-------@bmN@kolabdywp001.srv.ha3.dir.domain.de/kolab
ssl_verify_host =
ssl_verify_peer =
login_filter = (&(|(mail=%s)(mail=%U@%d))(objectclass=inetorgperson))
session_timeout = 1440
memcache_pconnect = true