summaryrefslogtreecommitdiffstats
path: root/roles/IMAP/templates
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2013-12-02 22:43:44 +0100
committerGuilhem Moulin <guilhem@fripost.org>2015-06-07 02:51:09 +0200
commit9ff98e18e5dd6967bce1457cff1884ec632cf2b5 (patch)
tree99adb4054b83f975dec12753d8d76a80d3c1d64a /roles/IMAP/templates
parentc7080c68fb4594f01a2edc98a2014c109a5afe16 (diff)
Configure the Mail Delivery Agent.
Diffstat (limited to 'roles/IMAP/templates')
-rw-r--r--roles/IMAP/templates/etc/postfix/main.cf.j260
1 files changed, 60 insertions, 0 deletions
diff --git a/roles/IMAP/templates/etc/postfix/main.cf.j2 b/roles/IMAP/templates/etc/postfix/main.cf.j2
new file mode 100644
index 0000000..1fb2fcc
--- /dev/null
+++ b/roles/IMAP/templates/etc/postfix/main.cf.j2
@@ -0,0 +1,60 @@
+########################################################################
+# MDA configuration
+#
+# {{ ansible_managed }}
+# Do NOT edit this file directly!
+
+smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
+biff = no
+readme_directory = no
+mail_owner = postfix
+
+delay_warning_time = 4h
+maximal_queue_lifetime = 5d
+
+myorigin = /etc/mailname
+myhostname = mda{{ imapno | default('') }}.$mydomain
+mydomain = {{ ansible_domain }}
+append_dot_mydomain = no
+
+# Turn off all TCP/IP listener ports except that necessary for the MDA.
+master_service_disable = !2526.inet inet
+
+queue_directory = /var/spool/postfix-{{ postfix_instance[inst].name }}
+data_directory = /var/lib/postfix-{{ postfix_instance[inst].name }}
+multi_instance_group = {{ postfix_instance[inst].group | default('') }}
+multi_instance_name = postfix-{{ postfix_instance[inst].name }}
+multi_instance_enable = yes
+
+# This server is a Mail Delivery Agent
+mynetworks_style = host
+inet_interfaces = 172.16.0.1
+{% if 'MX' in group_names %}
+ 127.0.0.1
+{% endif %}
+inet_protocols = ipv4
+
+# No local delivery
+mydestination =
+local_transport = error:5.1.1 Mailbox unavailable
+alias_maps =
+alias_database =
+local_recipient_maps =
+
+message_size_limit = 67108864
+recipient_delimiter = +
+
+# No relay: this server is inbound-only
+relay_transport = error:5.1.1 Relay unavailable
+default_transport = error:5.1.1 Transport unavailable
+
+# Virtual transport (the alias resolution is already done by the MX:es)
+virtual_transport = lmtp:unix:private/dovecot-lmtpd
+virtual_mailbox_domains = ldap:$config_directory/virtual/mailbox_domains.cf
+virtual_mailbox_maps = ldap:$config_directory/virtual/mailbox_maps.cf
+mailbox_transport_maps = ldap:$config_directory/virtual/transport_content_filter_maps.cf
+
+# Don't rewrite remote headers
+local_header_rewrite_clients =
+# Tolerate occasional high latency
+smtpd_timeout = 1200s