1 = LDAP Mail Integration = 2 3 LDAP can be used to identify mail recipients by configuring the mail transport 4 agent (MTA) to issue queries to a suitable service. Where necessary, the 5 following definitions need to be incorporated into the example configuration 6 files given below: 7 8 || '''Definition''' || '''Purpose''' || 9 || `LDAP_SERVICE_BIND_DN` || LDAP user identity to connect to the service || 10 || `LDAP_SERVICE_PASSWORD` || LDAP user password for connection || 11 || `LDAP_HOST` || The host providing the LDAP service || 12 || `LDAP_PORT` || The port number of the LDAP service || 13 || `LDAP_BASE_DN` || The section of the database to search || 14 15 == Using LDAP with Exim == 16 17 Example configuration files for Exim are distributed in `conf/exim/ldap`: 18 19 {{{#!table 20 '''File''' || '''Purpose''' 21 == 22 `010_exim4-config_ldap_people_outgoing` 23 ||<rowspan="4"> Defines recipients and outgoing mail routing 24 == 25 `020_exim4-config_ldap_people` 26 == 27 `020_exim4-config_ldap_resources` 28 == 29 `020_exim4-config_ldap_people_outgoing_recipients` 30 }}} 31 32 Where [[../LocalSMTP|local SMTP routing]] is being performed ''and'' the 33 recipients are local system users, the following file is also useful: 34 35 {{{#!table 36 '''File''' || '''Purpose''' 37 == 38 `020_exim4-config_ldap_people_local_system` 39 || Defines routing for local recipients for delivery to local system 40 .. mailboxes 41 }}} 42 43 These files can be incorporated into the Exim configuration. On Debian 44 systems, they can be copied into `/etc/exim4/conf.d/router`. 45 46 == Using LDAP with Postfix == 47 48 Example configuration files for Postfix are distributed in `conf/postfix/ldap`: 49 50 {{{#!table 51 '''File''' || '''Purpose''' 52 == 53 `main.cf.example` 54 || Defines recipients and outgoing mail routing (for inclusion in `main.cf`) 55 == 56 `virtual_alias_maps_people.cf` 57 ||<rowspan="3"> Defines recipients and outgoing mail routing 58 == 59 `virtual_alias_maps_people_outgoing.cf` 60 == 61 `virtual_alias_maps_resources.cf` 62 }}} 63 64 These files can be incorporated into the Postfix configuration. On Debian 65 systems, `main.cf.example` can be merged into `/etc/postfix/main.cf`, 66 whereas the remaining files would be installed into `/etc/postfix/ldap`. 67 68 The following files are common to LDAP and [[../Simple|simple]] integration 69 and are found in `conf/postfix`: 70 71 {{{#!table 72 '''File''' || '''Purpose''' 73 == 74 `master.cf.items` 75 || Mail handler definitions for the imip-agent transports 76 == 77 `transport` 78 || Transport definitions for `/etc/postfix/transport` 79 == 80 `virtual` 81 || Outgoing message routing for `/etc/postfix/virtual` 82 }}} 83 84 These files can be incorporated into the Postfix configuration. On Debian 85 systems, `master.cf.items` can be merged into `/etc/postfix/master.cf`, 86 whereas the other files can be merged into any existing files of the same 87 names in `/etc/postfix`. 88 89 == LDAP Representations for Mail Recipients == 90 91 Relevant LDAP resources for structuring recipient information include the 92 following: 93 94 {{{#!table 95 '''RFC''' || '''Relevance''' 96 == 97 [[http://tools.ietf.org/html/rfc2307|RFC 2307]] 98 || Defines the `posixAccount` object class 99 == 100 [[https://tools.ietf.org/html/rfc2739|RFC 2739]] 101 || Defines the `calEntry` object class supporting `calFBURL` 102 == 103 [[http://tools.ietf.org/html/rfc2798|RFC 2798]] 104 || Defines the `inetOrgPerson` object class 105 == 106 [[http://tools.ietf.org/html/rfc4524|RFC 4524]] 107 || Defines the `mail` attribute 108 }}} 109 110 An additional draft RFC describes the `mailRecipient` object class: 111 112 * https://tools.ietf.org/html/draft-lachman-ldap-mail-routing-03 113 114 Resource schemas for LDAP are not effectively standardised for the purposes of 115 this software. A useful object class, `inetResource`, was defined for the 116 iPlanet Calendar Server: 117 118 * http://docs.oracle.com/cd/E19566-01/819-4437/6n6jckqrf/index.html#anocg 119 * http://docs.oracle.com/cd/E19566-01/819-4437/6n6jckqr8/index.html 120 121 Although Kolab maintains notions of resources, they are tied up with the 122 notion of a shared folder and the `kolabSharedFolder` object class, although the 123 `mailRecipient` object class is employed by resources in Kolab.