summaryrefslogtreecommitdiff
path: root/roles/postfix/templates
diff options
context:
space:
mode:
authorDennis Brentjes <d.brentjes@gmail.com>2016-08-28 16:08:42 +0200
committerDennis Brentjes <d.brentjes@gmail.com>2016-08-28 16:14:56 +0200
commit68515bbb478f326a252ca688fcc97f3fdc8c4f97 (patch)
tree05954f1bf339c6ad973ed07736e0d328d5fbe3db /roles/postfix/templates
downloadansible-68515bbb478f326a252ca688fcc97f3fdc8c4f97.tar.gz
ansible-68515bbb478f326a252ca688fcc97f3fdc8c4f97.tar.bz2
ansible-68515bbb478f326a252ca688fcc97f3fdc8c4f97.zip
Initial commit, finally got around to cleanup and make it into a
gitrepo.
Diffstat (limited to 'roles/postfix/templates')
-rw-r--r--roles/postfix/templates/main.cf.j248
-rw-r--r--roles/postfix/templates/mysql-virtual-alias-maps.cf.j25
-rw-r--r--roles/postfix/templates/mysql-virtual-mailbox-domains.cf.j25
-rw-r--r--roles/postfix/templates/mysql-virtual-mailbox-maps.cf.j25
4 files changed, 63 insertions, 0 deletions
diff --git a/roles/postfix/templates/main.cf.j2 b/roles/postfix/templates/main.cf.j2
new file mode 100644
index 0000000..80e880a
--- /dev/null
+++ b/roles/postfix/templates/main.cf.j2
@@ -0,0 +1,48 @@
+# See /usr/share/postfix/main.cf.dist for a commented, more complete version
+
+
+compatibility_level = 2
+
+smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
+biff = no
+
+# appending .domain is the MUA's job.
+append_dot_mydomain = no
+
+# Uncomment the next line to generate "delayed mail" warnings
+#delay_warning_time = 4h
+
+readme_directory = no
+
+# TLS parameters
+smtpd_tls_cert_file = /etc/letsencrypt/live/www.brentj.es/fullchain.pem
+smtpd_tls_key_file = /etc/letsencrypt/live/www.brentj.es/privkey.pem
+smtpd_use_tls=yes
+smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
+smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
+
+# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
+# information on enabling SSL in the smtp client.
+
+smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
+myhostname = alexstrasza.kassala.de
+alias_maps = hash:/etc/aliases
+alias_database = hash:/etc/aliases
+myorigin = /etc/mailname
+mydestination = alexstrasza.kassala.de, localhost.kassala.de, localhost
+relayhost =
+mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
+mailbox_size_limit = 0
+recipient_delimiter = +
+inet_interfaces = all
+virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
+virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
+virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf
+virtual_transport = dovecot
+dovecot_destination_recipient_limit = 1
+smtpd_sasl_type = dovecot
+smtpd_sasl_path = private/auth
+smtpd_sasl_auth_enable = yes
+smtpd_tls_security_level = may
+smtpd_tls_auth_only = yes
+smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
diff --git a/roles/postfix/templates/mysql-virtual-alias-maps.cf.j2 b/roles/postfix/templates/mysql-virtual-alias-maps.cf.j2
new file mode 100644
index 0000000..e8c1827
--- /dev/null
+++ b/roles/postfix/templates/mysql-virtual-alias-maps.cf.j2
@@ -0,0 +1,5 @@
+user = mail
+password = {{ mail_database_password }}
+hosts = 127.0.0.1
+dbname = mail
+query = SELECT destination FROM virtual_aliases WHERE source='%s'
diff --git a/roles/postfix/templates/mysql-virtual-mailbox-domains.cf.j2 b/roles/postfix/templates/mysql-virtual-mailbox-domains.cf.j2
new file mode 100644
index 0000000..cf736b5
--- /dev/null
+++ b/roles/postfix/templates/mysql-virtual-mailbox-domains.cf.j2
@@ -0,0 +1,5 @@
+user = mail
+password = {{ mail_database_password }}
+hosts = 127.0.0.1
+dbname = mail
+query = SELECT 1 FROM virtual_domains WHERE name='%s'
diff --git a/roles/postfix/templates/mysql-virtual-mailbox-maps.cf.j2 b/roles/postfix/templates/mysql-virtual-mailbox-maps.cf.j2
new file mode 100644
index 0000000..40f8907
--- /dev/null
+++ b/roles/postfix/templates/mysql-virtual-mailbox-maps.cf.j2
@@ -0,0 +1,5 @@
+user = mail
+password = {{ mail_database_password }}
+hosts = 127.0.0.1
+dbname = mail
+query = SELECT 1 FROM virtual_users WHERE email='%s'