KOPANO-LDAP.CFG(5) | Kopano Core user reference | KOPANO-LDAP.CFG(5) |
kopano-ldap.cfg - The Kopano LDAP configuration file
ldap.cfg
The ldap.cfg is a configuration file for LDAP user plugin. All options to correctly retrieve user and group information can be set here.
The file consists of one big section, but parameters can be grouped by functionality.
The parameters are written in the form:
name = value
The file is line-based. Each newline-terminated line represents either a comment, nothing, a parameter or a directive. A line beginning with `#' is considered a comment, and will be ignored by Kopano. Parameter names are case sensitive. Lines beginning with `!' are directives.
Directives are written in the form:
!directive [argument(s)]
The following directives exist:
include
Example: !include common.cfg
propmap
In the propmap the configuration names must be the hex property tag of the requested property. The value given to the configuration name must be the LDAP attribute to which the property should be mapped.
Example: !propmap ldap.propmap.cfg
These historic directives specify a single LDAP server to use. Its use is discouraged in favor of ldap_uri.
Defaults: ldap_host=localhost, ldap_port=389, ldap_protocol=ldap
Specifies the URI of one or more LDAP server(s) to use, without any DN portion, such as "ldap://server:389/", "ldaps://server:636/" or "ldapi:///". If ldap_uri is set, the values of the historic directives ldap_host, ldap_port and ldap_protocol are ignored.
Default: (empty, such that URI list is constructed from ldap_host, ldap_port, ldap_protocol)
Request that any LDAP connections be secured with TLS, and reject the connection if this security cannot be established. See the OpenLDAP documentation for setting up ldap.cfg and TLS requirements.
Default: no
The charset that the LDAP server uses to store strings. All strings sent to the LDAP server or retrieved from the server will be interpreted in this charset. In most setups, utf-8 is used, but may also be iso-8859-15. All charsets supported by the system iconv() are supported here.
Default: utf-8
The bind dn as to connect to the LDAP server. Leave empty to connect anonymous.
Default value is empty.
When ldap_bind_user is a valid DN, this should be filled in too.
Default value is empty.
The timeout for network operations in seconds.
Default: 30
This value is used to detect changes in the item in the LDAP server. Since it is a standard LDAP attribute, you should never have to change this. It is mainly used for addressbook synchronisation between your server and your offline data.
Default: modifyTimeStamp
Limit result sets in pages of this size, downloading fewer results at a time from the LDAP server.
Default: 1000
This is the subtree entry where all objects are defined in the LDAP server.
Default: dc=kopano,dc=com
An object is defined by this attribute what type it is, e.g. user, group, etc. Every object type should have a unique value in this attribute in order to define what which entry is.
The value of this attribute must be specified in the ldap_*_type_attribute_value settings. Each of those settings may specify multiple values for the type attribute, separated by comma's. All of these values must be present in the objects type attribute for a match to be made and the object to be recognised as that type.
It is possible for ambiguities to arise by setting the same string for multiple ldap_*_type_attribute_value settings. This ambiguity will be resolved by preferring objects with more matching values. If the ambiguity cannot be resolved in this way, then the first possibility is chosen from the list (addresslist, tenant, dynamic group, group, contact, user).
Default: objectClass
The value in ldap_object_type_attribute which defines a user.
Default for OpenLDAP: posixAccount
Default for ADS: user
The value in ldap_object_type_attribute which defines a group.
Default for OpenLDAP: posixGroup
Default for ADS: group
The value in ldap_object_type_attribute which defines a contact.
Default for OpenLDAP: inetOrgPerson
Default for ADS: contact
The value in ldap_object_type_attribute which defines a tenant. This option is only used in multi-tenancy installations.
Default for OpenLDAP: organizationalUnit
Default for ADS: kopano-company
The value in ldap_object_type_attribute which defines an addresslist.
Default: kopano-addresslist
The value in ldap_object_type_attribute which defines a dynamic group.
Default: kopano-dynamicgroup
Adds an extra filter to the user search.
Hint: Use the kopanoAccount attribute in the filter to differentiate between non-kopano and kopano users.
Default for OpenLDAP is empty.
Default for ADS: (objectCategory=Person)
This is the unique attribute of a user which is never going to change, unless the user is removed from LDAP. When this value changes, Kopano will remove the previous user and store from the database, and create a new user with this unique value.
Default for OpenLDAP: uidNumber
Default for ADS: objectGUID
Contents type for the ldap_user_unique_attribute. This value can be binary or text.
Default for OpenLDAP: text
Default for ADS: binary
This value is the fullname of a user. It will be used on outgoing messages, and store names.
Default: cn
This value is the loginname of a user. This is what the user uses to login on kopano. The DAgent will use this value to open the store of the user.
Default for OpenLDAP: uid
Default for ADS: sAMAccountName
This value is the password of a user. When using ldap_authentication_method = password, this value will be checked. The ldap_bind_user should have enough access rights to read the password field.
Default for OpenLDAP: userPassword
Default for ADS: unicodePwd
This value can be bind or password. When set to bind, the plugin will authenticate by opening a new connection to the LDAP server as the user with the given password. When set to password, the plugin will read and match the password field from the LDAP server itself. When set to password, the ldap_bind_user should have enough access rights to read the password field.
Default for OpenLDAP: bind
Default for ADS: bind
This value is the email address of a user. It will be used to set the From on outgoing messages.
Default: mail
This value is the email aliases of a user. It can be used to find extra valid email accounts for incoming email. These email addresses cannot be used for outgoing email.
Default: kopanoAliases
This value indicates if a user has administrator rights. 0 or not presents means no. 1 means yes. In multi-tenancy environment a value of 1 means that the user is administrator over his own tenant. A value of 2 means he is administrator over all companies within the environment.
Default: kopanoAdmin
This value indicates if a user is nonactive. Nonactive users cannot login, but the store can be used as a shared store for other users.
Setting this value to 1 will make a mailbox nonactive. The nonactive attribute provided by the Kopano schema for nonactive users is kopanoSharedStoreOnly
Default: kopanoSharedStoreOnly
This attribute can change the type of a non-active user. The value of this attribute can be room or equipment to make it such a resource. If this attribute is not present, or not one of the previously described values, the user will be a normal non-active user.
Default: kopanoResourceType
Resources often have a limited capacity. Use this attribute to control this value. user.
Default: kopanoResourceCapacity
This attribute contains the list of users for which the user can use the sendas feature.
Default: kopanoSendAsPrivilege
Contents type for the ldap_sendas_attribute this value can be dn, binary or text.
Default for OpenLDAP: text
Default for ADS: dn
This value is used to find the users in the sendas list.
Defaults to empty value, using the ldap_user_unique_attribute setting. By using the DN, you can also add groups to the sendas list.
Default for OpenLDAP is empty.
Default for ADS: distinguishedName
The attribute which contains the user's public certificate to be used for encrypted S/MIME messages. Both Active Directory and OpenLDAP use the same ldap attribute by default. The format of the certificate should be the binary DER format.
Default: userCertificate
Adds an extra filter to the group search.
Hint: Use the kopanoAccount attribute in the filter to differentiate between non-kopano and kopano groups.
Default for OpenLDAP is empty.
Default for ADS: (objectCategory=Group)
This is the unique attribute of a group which is never going to change, unless the group is removed from LDAP. When this value changes, Kopano will remove the previous group from the database, and create a new group with this unique value.
Default for OpenLDAP: gidNumber
Default for ADS: objectSid
Contents type for the ldap_group_unique_attribute this value can be binary or text.
Default for OpenLDAP: text
Default for ADS: binary
This value is the name of a group.
Default: cn
This value is the member list of a group.
Default for OpenLDAP: memberUid
Default for ADS: member
Contents type for the ldap_groupmembers_attribute this value can be dn, binary or text.
Default for OpenLDAP: text
Default for ADS: dn
This value is used to find the users in a group if ldap_groupmembers_attribute_type is text.
Defaults to empty value, using the ldap_user_unique_attribute setting.
Default is empty.
If this attribute is present, you can make a group a security group. These groups can be used to place permissions on folders.
Default for OpenLDAP: kopanoSecurityGroup
Default for ADS: groupType
The type of the ldap_group_security_attribute is very different for ADS and OpenLDAP. The value of this option can be boolean or ads. The ads option only looks at the highest bit in the numeric value of the groupType attribute.
Default for OpenLDAP: boolean
Default for ADS: ads
Add an extra filter to the tenant search.
Hint: Use the kopanoAccount attribute in the filter to differentiate between non-kopano and kopano companies.
Default for OpenLDAP is empty.
Default for ADS: (objectCategory=Company)
This is the unique attribute of a tenant which is never going to change, unless the tenant is removed from LDAP. When this value changes, Kopano will remove the previous tenant from the database, and create a new tenant with this unique value.
Default for OpenLDAP: ou
Default for ADS: objectSid
Contents type for the ldap_company_unique_attribute this value can be binary or text.
Default for OpenLDAP: text
Default for ADS: binary
This value is the name of a tenant.
Default: cn
This attribute contains the list of tenants which can view the members of the tenant where this attribute is set on. tenants which are not listed in this attribute cannot see the presence of the tenant space itself nor its members.
Default: kopanoViewPrivilege
Contents type for the ldap_company_view_attribute this value can be dn, binary or text.
Default for OpenLDAP: text
Default for ADS: dn
The attribute of the tenant which is listed in ldap_company_view_attribute.
Default: Empty, using the ldap_company_unique_attribute
This attribute contains the list of users outside of the selected tenant space who are administrator over the selected tenant space. Note that local users should not be listed as administrator here, those users need the ldap_isadmin_attribute attribute.
Default: kopanoAdminPrivilege
Contents type for the ldap_company_admin_attribute this value can be dn, binary or text.
Default for OpenLDAP: text
Default for ADS: dn
The attribute of the user which is listed in ldap_company_admin_attribute.
Default: Empty, using the ldap_user_unique_attribute
This attribute contains the user who acts as the system administrator of this tenatn space. This can either be a local user or a user from a different tenant space. At the moment this user is set as the sender of quota warning emails.
Default: kopanoSystemAdmin
Contents type for the ldap_company_system_admin_attribute this value can be dn, binary or text.
Default for OpenLDAP: text
Default for ADS: dn
The attribute of the user which is listed in ldap_system_admin_attribute.
Default: Empty, using the ldap_user_unique_attribute
Add a filter to the addresslist search.
Hint: Use the kopanoAccount attribute in the filter to differentiate between non-kopano and kopano addresslists.
Default: (objectClass=kopano-addresslist)
This is the unique attribute of a addresslist which is never going to change, unless the addresslist is removed from LDAP. When this value changes, Kopano will remove the previous addresslist from the database, and create a new addresslist with this unique value.
Default: cn
Contents type for the ldap_addresslist_unique_attribute this value can be dn, binary or text. On LDAP this value should be text. On ADS this value should be dn
Default: text
This is the name of the attribute on the addresslist object that specifies the filter to be applied for this addresslist. All users matching this filter AND matching the default ldap_user_search_filter will be included in the addresslist.
Default: kopanoFilter
This is the name of the attribute on the addresslist object that specifies the search base to be applied for this addresslist.
Default: kopanoBase
The attribute containing the name of the addresslist
Default: cn
Add an extra filter to the dynamicgroup search.
Hint: Use the kopanoAccount attribute in the filter to differentiate between non-kopano and kopano dynamic groups.
Default is empty.
This is the unique attribute of a dynamicgroup which is never going to change, unless the dynamicgroup is removed from LDAP. When this value changes, Kopano will remove the previous dynamicgroup from the database, and create a new dynamicgroup with this unique value.
Default: cn
Contents type for the ldap_dynamicgroup_unique_attribute this value can be binary or text. On LDAP this value should be text. On ADS this value should be binary
Default: text
This is the name of the attribute on the dynamicgroup object that specifies the filter to be applied for this dynamicgroup. All users matching this filter AND matching the default search filters for objects will be included in the dynamicgroup.
Default: kopanoFilter
This is the name of the attribute on the dynamicgroup object that specifies the search base to be applied for this dynamicgroup.
Default: kopanoBase
The attribute containing the name of the dynamicgroup.
Default: cn
Default: kopanoQuotaOverride
Default: kopanoQuotaWarn
Default: kopanoQuotaSoft
Default: kopanoQuotaHard
Default: kopanoUserDefaultQuotaOverride
Default: kopanoUserDefaultQuotaWarn
Default: kopanoUserDefaultQuotaSoft
Default: kopanoUserDefaultQuotaHard
This value is used to multiply the quota values to bytes. When the values in LDAP are in Kb, use 1024 here.
Default: 1
This attribute contains the list of users who will receive an email when a user exceeds his quota. User who exceeds his quota will be automatically added to the recipients list, this list only indicates who else will be notified.
Default: kopanoQuotaUserWarningRecipients
Contents type for the ldap_quota_userwarning_recipients_attribute this value can be dn, binary or text. On LDAP this value should be text. On ADS this value should be dn
Default: text
The attribute of the user which is listed in ldap_quota_userwarning_recipients_attribute
Default: Empty, using ldap_user_unique_attribute
This attribute contains the list of users who will receive an email when a tenant exceeds its quota. The system administrator of the tenant that is over quota will automatically be added to the recipients list, this list only indicates who else will be notified.
Default: kopanoQuotaCompanyWarningRecipients
Contents type for the ldap_quota_companywarning_recipients_attribute this value can be dn, binary or text. On LDAP this value should be text. On ADS this value should be dn
Default: text
The attribute of the user which is listed in ldap_quota_companywarning_recipients_attribute
Default: Empty, using ldap_user_unique_attribute
The attribute indicating the object must be hidden from the addressbook. The object will still be detected as kopano user and is allowed to login and work as regular kopano user, but will not be visible in the addressbook for other users.
Default: kopanoHidden
When searching in the addressbook, this filter will be used. Normally, the storage server will only search in the unique attribute, loginname, fullname and emailaddress. You might want to search in more fields, like 'lastname'. Kopano also uses a postfix wildcard only. Using the '*' wildcard with prefixes makes a search slower, but can return more results.
Hint: Use the kopanoAccount attribute in the filter to differentiate between non-kopano and kopano objects.
You can set a custom search filter here. '%s' will be replaced with the string being searched.
Active Directory has a shortcut for searching in the addressbook using the 'anr' attribute. This is recommended on ADS installations.
Default:
Recommended for ADS installations: (anr=%s)
Optional for OpenLDAP installations: (|(mail=%s*)(uid=%s*)(cn=*%s*)(fullname=*%s*)(givenname=*%s*)(lastname=*%s*)(sn=*%s*))
When the ldap plugin retrieves information from the LDAP Server, large queries can be created to retrieve data for multiple objects at once. These large queries can perform badly on some LDAP server implementations. This option limits the number of elements that can be retrieved in one search filter and therefore limits the size of the filter. Instead, a broader search filter is created which retrieves all objects from the LDAP server. This results in slightly higher processing overhead and network activity, but with the bonus that the query can be served by the LDAP server much faster (a factor of 40 in 5000-object queries has been observed).
Setting this value to 0 will never limit the filter, setting it to a value of 1 will always limit the filter (since all queries will be retrieving one or more objects).
Default: 1000
/etc/kopano/server.cfg
/etc/kopano/ldap.cfg
Written by Kopano.
November 2016 | Kopano 8 |