Add basic LDAP config for recipients and senders
This commit is contained in:
parent
660b1900c8
commit
782a07a450
5 changed files with 46 additions and 12 deletions
|
|
@ -15,5 +15,9 @@ postfix:
|
|||
virtual_mailbox_domains: []
|
||||
mynetworks: []
|
||||
mydestination: []
|
||||
ldap:
|
||||
enable: false
|
||||
server_host: ldap.example.com
|
||||
search_base: "dc=example,dc=com"
|
||||
|
||||
postfixmaps: []
|
||||
|
|
|
|||
|
|
@ -1,23 +1,23 @@
|
|||
- name: install postfix
|
||||
apt:
|
||||
pkg: postfix
|
||||
pkg:
|
||||
- postfix
|
||||
- postfix-ldap
|
||||
|
||||
- name: remove exim4 package
|
||||
apt:
|
||||
name: exim4
|
||||
state: absent
|
||||
|
||||
- name: copy main.cf
|
||||
- name: copy postfix config
|
||||
template:
|
||||
src: main.cf.j2
|
||||
dest: /etc/postfix/main.cf
|
||||
notify:
|
||||
- restart postfix
|
||||
|
||||
- name: copy master.cf
|
||||
template:
|
||||
src: master.cf.j2
|
||||
dest: /etc/postfix/master.cf
|
||||
src: "{{ item.src }}"
|
||||
dest: "{{ item.dest }}"
|
||||
with_items:
|
||||
- { src: "main.cf.j2", dest: "/etc/postfix/main.cf" }
|
||||
- { src: "master.cf.j2", dest: "/etc/postfix/master.cf" }
|
||||
- { src: "virtual-senders.cf.j2", dest: "/etc/postfix/virtual-senders.cf" }
|
||||
- { src: "virtual-recipients.cf.j2", dest: "/etc/postfix/virtual-recipients.cf" }
|
||||
notify:
|
||||
- restart postfix
|
||||
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ relay_domains = {{ postfix.relay_domains|join(', ') }}
|
|||
relay_transport = {{ postfix.relay_transport }}
|
||||
sender_dependent_relayhost_maps = {{ postfix.sender_dependent_relayhost_maps }}
|
||||
virtual_alias_maps = {{ postfix.virtual_alias_maps }}
|
||||
virtual_mailbox_domains = {{ postfix.virtual_mailbox_domains|join(' ') }}
|
||||
virtual_mailbox_domains = {{ postfix.virtual_mailbox_domains|join(' ') }}
|
||||
|
||||
mailbox_size_limit = 0
|
||||
recipient_delimiter = +
|
||||
|
|
@ -69,6 +69,13 @@ dovecot_destination_recipient_limit = 1
|
|||
virtual_transport = dovecot
|
||||
{% endif %}
|
||||
|
||||
{% if postfix.ldap.enable %}
|
||||
# LDAP config
|
||||
smtpd_sender_login_maps = proxy:ldap:/etc/postfix/virtual-senders.cf
|
||||
virtual_mailbox_maps = proxy:ldap:/etc/postfix/virtual-recipients.cf
|
||||
local_recipient_maps = $virtual_mailbox_maps
|
||||
{% endif %}
|
||||
|
||||
# opendkim
|
||||
|
||||
{% if postfix.enable_opendkim %}
|
||||
|
|
|
|||
12
templates/virtual-recipients.cf.j2
Normal file
12
templates/virtual-recipients.cf.j2
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{% if postfix.ldap.enable %}
|
||||
bind = yes
|
||||
# bind_dn =
|
||||
# bind_pw =
|
||||
server_host = {{ postfix.ldap.server_host }}
|
||||
search_base = {{ postfix.ldap.recipients.search_base }}
|
||||
query_filter = {{ postfix.ldap.recipients.query_filter }}
|
||||
result_attribute = cn
|
||||
result_format =%s
|
||||
{% else %}
|
||||
# LDAP is not configured for this server.
|
||||
{% endif %}
|
||||
11
templates/virtual-senders.cf.j2
Normal file
11
templates/virtual-senders.cf.j2
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{% if postfix.ldap.enable %}
|
||||
bind = yes
|
||||
# bind_dn =
|
||||
# bind_pw =
|
||||
server_host = {{ postfix.ldap.server_host }}
|
||||
search_base = {{ postfix.ldap.senders.search_base }}
|
||||
query_filter = {{ postfix.ldap.senders.query_filter }}
|
||||
result_attribute = cn
|
||||
{% else %}
|
||||
# LDAP is not configured for this server.
|
||||
{% endif %}
|
||||
Loading…
Add table
Add a link
Reference in a new issue