1.1 --- a/README.txt Tue Oct 20 20:01:37 2015 +0200
1.2 +++ b/README.txt Wed Oct 21 00:27:36 2015 +0200
1.3 @@ -131,7 +131,7 @@
1.4 routing or account querying. However, example configuration files are provided
1.5 that demonstrate the use of LDAP to identify mail recipients:
1.6
1.7 -For Exim (in conf/exim)...
1.8 +For Exim with LDAP (in conf/exim/ldap)...
1.9
1.10 010_exim4-config_people_outgoing Defines recipients and outgoing
1.11 mail routing
1.12 @@ -152,6 +152,19 @@
1.13 situations, examples of maintaining recipient information using a simpler
1.14 approach are provided:
1.15
1.16 +For Exim without LDAP (in conf/exim/simple)...
1.17 +
1.18 + 010_exim4-config_people_outgoing Defines recipients and outgoing
1.19 + mail routing
1.20 + 890_exim4-config_ldap_people ...
1.21 + 890_exim4-config_ldap_resources ...
1.22 +
1.23 + virtual_people Defines recipient identities
1.24 + virtual_resources belonging to known domains
1.25 +
1.26 + virtual_domains Defines recipient domains
1.27 + virtual_people_outgoing Defines sender addresses
1.28 +
1.29 For Postfix without LDAP (in conf/postfix/simple)...
1.30
1.31 main.cf.example Defines recipients and outgoing
1.32 @@ -276,8 +289,17 @@
1.33
1.34 The software itself requires the following packages:
1.35
1.36 + Python: python
1.37 pytz: python-tz
1.38
1.39 The management Web interface requires the following packages:
1.40
1.41 + Apache: apache2
1.42 Babel: python-babel
1.43 +
1.44 +Although not necessarily within the scope of the deployment of this software,
1.45 +the following mail storage solutions would be used to receive and hold
1.46 +messages:
1.47 +
1.48 + Cyrus: cyrus-imapd
1.49 + Dovecot: dovecot-imapd dovecot-ldap dovecot-lmtpd
2.1 --- a/conf/exim/010_exim4-config_people_outgoing Tue Oct 20 20:01:37 2015 +0200
2.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
2.3 @@ -1,14 +0,0 @@
2.4 -LDAP_PERSON_OUTGOING_QUERY = (&(|(mail=${quote_ldap:${sender_address_local_part}}@${sender_address_domain})(alias=${quote_ldap:${sender_address_local_part}}@${sender_address_domain}))(objectclass=inetorgperson))
2.5 -
2.6 -people_outgoing:
2.7 - debug_print = "R: person_outgoing for $sender_address_local_part@$sender_address_domain"
2.8 - driver = accept
2.9 - unseen
2.10 - no_expn
2.11 - no_verify
2.12 - condition = ${if eq {}{${lookup ldap{ \
2.13 - user="$ldap_service_bind_dn" \
2.14 - pass=$ldap_service_password \
2.15 - ldap://$ldap_host:$ldap_port/$ldap_base_dn?mail?sub?LDAP_PERSON_OUTGOING_QUERY} \
2.16 - }}{no}{yes}}
2.17 - transport = people_outgoing_transport
3.1 --- a/conf/exim/890_exim4-config_ldap_people Tue Oct 20 20:01:37 2015 +0200
3.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
3.3 @@ -1,12 +0,0 @@
3.4 -LDAP_PERSON_QUERY = (&(|(mail=${quote_ldap:${local_part}}@${domain})(alias=${quote_ldap:${local_part}}@${domain}))(objectclass=inetorgperson))
3.5 -
3.6 -ldap_person:
3.7 - debug_print = "R: ldap_person for $local_part@$domain"
3.8 - driver = accept
3.9 - condition = ${if eq {}{${lookup ldap{ \
3.10 - user="$ldap_service_bind_dn" \
3.11 - pass=$ldap_service_password \
3.12 - ldap://$ldap_host:$ldap_port/$ldap_base_dn?mail?sub?LDAP_PERSON_QUERY} \
3.13 - }}{no}{yes}}
3.14 - transport = people_transport
3.15 - cannot_route_message = Unknown user
4.1 --- a/conf/exim/890_exim4-config_ldap_resources Tue Oct 20 20:01:37 2015 +0200
4.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
4.3 @@ -1,12 +0,0 @@
4.4 -LDAP_RESOURCE_QUERY = (&(|(mail=${quote_ldap:${local_part}}@${domain})(alias=${quote_ldap:${local_part}}@${domain}))(&(!(objectclass=inetOrgPerson))(objectclass=mailRecipient)))
4.5 -
4.6 -ldap_resource:
4.7 - debug_print = "R: ldap_resource for $local_part@$domain"
4.8 - driver = accept
4.9 - condition = ${if eq {}{${lookup ldap{ \
4.10 - user="$ldap_service_bind_dn" \
4.11 - pass=$ldap_service_password \
4.12 - ldap://$ldap_host:$ldap_port/$ldap_base_dn?mail?sub?LDAP_RESOURCE_QUERY} \
4.13 - }}{no}{yes}}
4.14 - transport = resources_transport
4.15 - cannot_route_message = Unknown user
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/conf/exim/ldap/010_exim4-config_people_outgoing Wed Oct 21 00:27:36 2015 +0200
5.3 @@ -0,0 +1,14 @@
5.4 +LDAP_PERSON_OUTGOING_QUERY = (&(|(mail=${quote_ldap:${sender_address_local_part}}@${sender_address_domain})(alias=${quote_ldap:${sender_address_local_part}}@${sender_address_domain}))(objectclass=inetorgperson))
5.5 +
5.6 +people_outgoing:
5.7 + debug_print = "R: person_outgoing for $sender_address_local_part@$sender_address_domain"
5.8 + driver = accept
5.9 + unseen
5.10 + no_expn
5.11 + no_verify
5.12 + condition = ${if eq {}{${lookup ldap{ \
5.13 + user="$ldap_service_bind_dn" \
5.14 + pass=$ldap_service_password \
5.15 + ldap://$ldap_host:$ldap_port/$ldap_base_dn?mail?sub?LDAP_PERSON_OUTGOING_QUERY} \
5.16 + }}{no}{yes}}
5.17 + transport = people_outgoing_transport
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/conf/exim/ldap/890_exim4-config_ldap_people Wed Oct 21 00:27:36 2015 +0200
6.3 @@ -0,0 +1,12 @@
6.4 +LDAP_PERSON_QUERY = (&(|(mail=${quote_ldap:${local_part}}@${domain})(alias=${quote_ldap:${local_part}}@${domain}))(objectclass=inetorgperson))
6.5 +
6.6 +ldap_person:
6.7 + debug_print = "R: ldap_person for $local_part@$domain"
6.8 + driver = accept
6.9 + condition = ${if eq {}{${lookup ldap{ \
6.10 + user="$ldap_service_bind_dn" \
6.11 + pass=$ldap_service_password \
6.12 + ldap://$ldap_host:$ldap_port/$ldap_base_dn?mail?sub?LDAP_PERSON_QUERY} \
6.13 + }}{no}{yes}}
6.14 + transport = people_transport
6.15 + cannot_route_message = Unknown user
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/conf/exim/ldap/890_exim4-config_ldap_resources Wed Oct 21 00:27:36 2015 +0200
7.3 @@ -0,0 +1,12 @@
7.4 +LDAP_RESOURCE_QUERY = (&(|(mail=${quote_ldap:${local_part}}@${domain})(alias=${quote_ldap:${local_part}}@${domain}))(&(!(objectclass=inetOrgPerson))(objectclass=mailRecipient)))
7.5 +
7.6 +ldap_resource:
7.7 + debug_print = "R: ldap_resource for $local_part@$domain"
7.8 + driver = accept
7.9 + condition = ${if eq {}{${lookup ldap{ \
7.10 + user="$ldap_service_bind_dn" \
7.11 + pass=$ldap_service_password \
7.12 + ldap://$ldap_host:$ldap_port/$ldap_base_dn?mail?sub?LDAP_RESOURCE_QUERY} \
7.13 + }}{no}{yes}}
7.14 + transport = resources_transport
7.15 + cannot_route_message = Unknown user
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/conf/exim/simple/010_exim4-config_people_outgoing Wed Oct 21 00:27:36 2015 +0200
8.3 @@ -0,0 +1,9 @@
8.4 +people_outgoing:
8.5 + debug_print = "R: person_outgoing for $sender_address_local_part@$sender_address_domain"
8.6 + driver = accept
8.7 + unseen
8.8 + no_expn
8.9 + no_verify
8.10 + domains = lsearch;/etc/exim4/virtual_domains
8.11 + senders = lsearch;/etc/exim4/virtual_people_outgoing
8.12 + transport = people_outgoing_transport
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/conf/exim/simple/890_exim4-config_people Wed Oct 21 00:27:36 2015 +0200
9.3 @@ -0,0 +1,7 @@
9.4 +ldap_person:
9.5 + debug_print = "R: ldap_person for $local_part@$domain"
9.6 + driver = accept
9.7 + domains = lsearch;/etc/exim4/virtual_domains
9.8 + local_parts = lsearch;/etc/exim4/virtual_people
9.9 + transport = people_transport
9.10 + cannot_route_message = Unknown user
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/conf/exim/simple/890_exim4-config_resources Wed Oct 21 00:27:36 2015 +0200
10.3 @@ -0,0 +1,7 @@
10.4 +ldap_resource:
10.5 + debug_print = "R: ldap_resource for $local_part@$domain"
10.6 + driver = accept
10.7 + domains = lsearch;/etc/exim4/virtual_domains
10.8 + local_parts = lsearch;/etc/exim4/virtual_resources
10.9 + transport = resources_transport
10.10 + cannot_route_message = Unknown user
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/conf/exim/simple/virtual_domains Wed Oct 21 00:27:36 2015 +0200
11.3 @@ -0,0 +1,1 @@
11.4 +example.com:
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/conf/exim/simple/virtual_people Wed Oct 21 00:27:36 2015 +0200
12.3 @@ -0,0 +1,2 @@
12.4 +paul.boddie:
12.5 +vincent.vole:
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
13.2 +++ b/conf/exim/simple/virtual_people_outgoing Wed Oct 21 00:27:36 2015 +0200
13.3 @@ -0,0 +1,2 @@
13.4 +paul.boddie@example.com:
13.5 +vincent.vole@example.com:
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
14.2 +++ b/conf/exim/simple/virtual_resources Wed Oct 21 00:27:36 2015 +0200
14.3 @@ -0,0 +1,3 @@
14.4 +resource-car-porsche911:
14.5 +resource-room-confroom:
14.6 +resource-room-sauna: