Import Contacts to ldap using kopano schema
-
Hey Guys,
I was wondering if there is a way to import contacts from another ldap server.
As far as I know when you want to add a contact in kopano you need to add the record to the kopano-ldap and the dn should have the following root:
ou=Contacts,dc=cern,dc=ch
.
The example you provide in the documentation is the one about Mary Poppins:# Mary Poppins, Contacts, cern.ch dn: cn=Mary Poppins,ou=Contacts,dc=cern,dc=ch objectClass: inetOrgPerson objectClass: top objectClass: kopano-contact uidNumber: 1001 sn: Poppins cn: Mary Poppins mail: mary@cern.ch
Now I have some contacts stored in another ldap server that I would like to add to the kopano-ldap.
The only idea that I had is create an ldif file with the contacts that I want to import and add them to the kopano-ldap.Is there a way to simplify this procedure and import contacts from another ldap server even though they are implementing a different schema?
Is there any workaround that I can use to do that?
Thanks in advance
Riccardo
-
Hi @genz ,
kopano-server is only able to query one ldap server at a time, so when managing contacts in an ldap you have to make sure that this ldap also contains your users.
as for
@genz said in Import Contacts to ldap using kopano schema:
even though they are implementing a different schema?
you can quite freely configure the ldap attributes and object classes used by kopano, so it might be worth adapting your ldap.cfg to fit these external contacts.
-
Hey Guys,
I converted my contacts records and I added them to the OpenLDAP connected to thekopano-server
.
Everything seems to work but when I search in the address book every search is very slow and if I do not type some characters I receive an error like this one:HTTP 500 Internal Server Error
I added 50’000 ish records and in the OpenLDAP I have defined the indexes for
cn
,sn
andmail
attributes with the clauseseq
,sub
andpres
.I pretty sure that I am missing something here. But I am not able to understand what.
From the logs, every time I do a query using the web app it seems that kopano first does this:my-host: SRCH base="dc=cern,dc=ch" scope=2 deref=0 filter="(|(|(objectClass=posixAccount)(objectClass=kopano-contact))(objectClass=kopano-contact)(|(objectClass=posixGroup)(objectClass=kopano-dynamicgroup)) my-host: SRCH attr=objectClass kopanoSharedStoreOnly kopanoResourceType kopanoSecurityGroup uidNumber gidNumber ou cn cn modifyTimestamp my-host: SEARCH RESULT tag=101 err=0 nentries=1000 text= my-host: SRCH base="dc=cern,dc=ch" scope=2 deref=0 filter="(|(|(objectClass=posixAccount)(objectClass=kopano-contact))(objectClass=kopano-contact)(|(objectClass=posixGroup)(objectClass=kopano-dynamicgroup)) my-host: SRCH attr=objectClass kopanoSharedStoreOnly kopanoResourceType kopanoSecurityGroup uidNumber gidNumber ou cn cn modifyTimestamp my-host: SEARCH RESULT tag=101 err=0 nentries=1000 text= my-host: SRCH base="dc=cern,dc=ch" scope=2 deref=0 filter="(|(|(objectClass=posixAccount)(objectClass=kopano-contact))(objectClass=kopano-contact)(|(objectClass=posixGroup)(objectClass=kopano-dynamicgroup)) my-host: SRCH attr=objectClass kopanoSharedStoreOnly kopanoResourceType kopanoSecurityGroup uidNumber gidNumber ou cn cn modifyTimestamp my-host: SEARCH RESULT tag=101 err=0 nentries=1000 text= [...]
and after it starts to search record using the UIDs:
my-host: SRCH base="dc=cern,dc=ch" scope=2 deref=0 filter="(|(&(objectClass=kopano-contact)(|(uidNumber=29815))))" my-host: SRCH attr=objectClass uidNumber text cn uid userPassword mail kopanoAliases kopanoAdmin kopanoSharedStoreOnly kopanoResourceType kopanoResourceCapacity userCertificate;binary kopanoSendAsPrivilege my-host: SEARCH RESULT tag=101 err=0 nentries=0 text= my-host: SRCH base="dc=cern,dc=ch" scope=2 deref=0 filter="(|(&(objectClass=kopano-contact)(|(uidNumber=29816))))" my-host: SRCH attr=objectClass uidNumber text cn uid userPassword mail kopanoAliases kopanoAdmin kopanoSharedStoreOnly kopanoResourceType kopanoResourceCapacity userCertificate;binary kopanoSendAsPrivilege my-host: SEARCH RESULT tag=101 err=0 nentries=0 text= my-host: SRCH base="dc=cern,dc=ch" scope=2 deref=0 filter="(|(&(objectClass=kopano-contact)(|(uidNumber=29817))))" my-host: SRCH attr=objectClass uidNumber text cn uid userPassword mail kopanoAliases kopanoAdmin kopanoSharedStoreOnly kopanoResourceType kopanoResourceCapacity userCertificate;binary kopanoSendAsPrivilege my-host: SEARCH RESULT tag=101 err=0 nentries=0 text=
No matter which word I type the behaviour it’s always the same.
Thanks,
Riccardo -
This post is deleted! -
I found a solution:
I had to add this in the
/etc/kopano/server.cfg
in order to avoid the full sync for every query.sync_gab_realtime = no