X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fsalsa%2Fmanifests%2Fmail.pp;h=af3e4cba07490d477871b1de29e92f7a50767b47;hb=dcbeb6f9496a1e5ce833d3cf8b0f0b9be2d7d566;hp=d399ab4693283dc46d850336248d819a08eda59b;hpb=94bc127ef10b9d0fdb7484c3839e3dc7a1bc6d06;p=mirror%2Fdsa-puppet.git diff --git a/modules/salsa/manifests/mail.pp b/modules/salsa/manifests/mail.pp index d399ab469..af3e4cba0 100644 --- a/modules/salsa/manifests/mail.pp +++ b/modules/salsa/manifests/mail.pp @@ -29,7 +29,7 @@ class salsa::mail inherits salsa { group => '_vmail', } - $pw_salt = hkdf('/etc/puppet/secret', "mail-imap-dovecot-${::hostname}-salsa-${mail_username}-salt-generator") + $pw_salt = hkdf('/etc/puppet/secret', "mail-imap-dovecot-${::hostname}-${salsa::servicename}-${salsa::mail_username}-salt-generator") $hashed_pw = pw_hash($salsa::mail_password, 'SHA-512', $pw_salt) file { '/etc/dovecot/users': mode => '440', @@ -39,10 +39,10 @@ class salsa::mail inherits salsa { | EOF } - file { '/etc/dovecot/conf.d/10-auth.conf': content => @(EOF), auth_mechanisms = plain + disable_plaintext_auth = no passdb { driver = passwd-file @@ -57,4 +57,52 @@ class salsa::mail inherits salsa { | EOF notify => Service['dovecot'], } + file { '/etc/dovecot/local.conf': + content => @(EOF), + mail_location = maildir:~/Maildir + + service imap-login { + inet_listener imap { + address = 127.0.0.1 + } + } + + service lmtp { + unix_listener /var/spool/postfix/private/dovecot-lmtp { + group = postfix + user = postfix + mode = 0660 + } + client_limit = 1 + } + + | EOF + notify => Service['dovecot'], + } + + concat::fragment { 'puppet-postfix-main.cf--salsa': + target => '/etc/postfix/main.cf', + order => '020', + content => @("EOF"), + recipient_delimiter = + + + mydestination = + virtual_transport = lmtp:unix:private/dovecot-lmtp + virtual_mailbox_domains = ${salsa::servicename} + virtual_alias_maps = hash:/etc/postfix/virtual + + | EOF + } + exec { '/usr/sbin/postmap /etc/postfix/virtual': + refreshonly => true, + require => Package['postfix'], + } + file { '/etc/postfix/virtual': + content => @("EOF"), + postmaster@${salsa::servicename} postmaster@debian.org + admin@${salsa::servicename} salsa-admin@debian.org + | EOF + notify => Exec['/usr/sbin/postmap /etc/postfix/virtual'], + } + }