Penguin
Blame: ActiveDirectoryMail
EditPageHistoryDiffInfoLikePages
Annotated edit history of ActiveDirectoryMail version 6, including all changes. View license author blame.
Rev Author # Line
3 JamesSpooner 1 Over a weekend myself and my CoWorker decided to create a mail system using ActiveDirectory as a backend database for authentication of usernames.
2
3 This allows us a single central database for users names/passwords.
4
5 Software Configuration:
6 * Windows 2003 Datacenter Server
7 * Debian Linux 3.0 (woody)
8 * Exim 3.35
9 * Cyrus 2.1.15
10 * Samba 3.0b2
11
12 to be continued...
13
4 JamesSpooner 14 !! Exim Configuration
6 DavidAmmouial 15 We need to two entries to the exim config file (/etc/exim/exim.conf). The director entry (active_directory_user) takes a (local) email address after alias expansion (remember, order is important) and decides whether the mailbox exists and if so, what transport should be used to deliver the mail. The transport entry (local_delivery_cyrus) will use cyrdeliver to pass the resolved mail to the cyrus mailbox and will return an error if the mailbox doesn't exist.
3 JamesSpooner 16
4 JamesSpooner 17 ! Directors Section
18
19 active_directory_user:
3 JamesSpooner 20 driver = aliasfile
21 search_type = ldapm
4 JamesSpooner 22 query = "user=\"cn=admin,ou=Accounts,dc=domain,dc=co,dc=nz\" pass=\"Secret12\" \
23 ldap://adserver.domain.co.nz:389/dc=domain,dc=co,dc=nz?sAMAccountName?sub?(sAMAccountName=$local_part)"
3 JamesSpooner 24 expand
25 transport = local_delivery_cyrus
26
4 JamesSpooner 27
28 ! Transports Section
29 local_delivery_cyrus:
30 driver = pipe
31 command = /usr/sbin/cyrdeliver $local_part
32 user = cyrus
33 group = mail
34 return_output
35 log_output
36 prefix =
37 suffix =
38
39
40 See [LDAPNotes] for more information on LDAP Urls / Searches.
41
5 GerwinVanDeSteeg 42 !!Notes:
43 * In the ldap search query, the attribute __sAMAccountName__ is the pre windows 2000 Logon name (username only), the Windows 2000 logon name is stored in __userPrincipalName__ (includes @domain.co.nz). Their email address is stored in the __mail__ attribute (bob@domain.co.nz or bob@fred.tla) -- GerwinVanDeSteeg
3 JamesSpooner 44
45 -----
46 CategoryInteroperability