diff options
-rw-r--r-- | puppet/modules/site_postfix/manifests/mx.pp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/puppet/modules/site_postfix/manifests/mx.pp b/puppet/modules/site_postfix/manifests/mx.pp index 71d61621..de317205 100644 --- a/puppet/modules/site_postfix/manifests/mx.pp +++ b/puppet/modules/site_postfix/manifests/mx.pp @@ -30,13 +30,25 @@ class site_postfix::mx { 'mailbox_size_limit': value => '0'; 'home_mailbox': - value => 'Maildir/'; + value => ''; + 'virtual_mailbox_domains': + value => 'deliver.local'; + 'virtual_mailbox_base': + value => '/var/mail/vmail'; + 'virtual_mailbox_maps': + value => 'static:Maildir/'; # Note: virtual-aliases map will take precedence over leap_mx # lookup (tcp:localhost) 'virtual_alias_maps': value => 'hash:/etc/postfix/virtual-aliases tcp:localhost:4242'; 'luser_relay': - value => 'vmail'; + value => ''; + # uid and gid are set to an arbitrary hard-coded value here, this + # must match the 'vmail' user block below + 'virtual_uid_maps': + value => 'static:42424'; + 'virtual_gid_maps': + value => 'static:42424'; 'smtpd_tls_received_header': value => 'yes'; # Note: we are setting this here, instead of in site_postfix::mx::smtp_tls @@ -67,11 +79,19 @@ class site_postfix::mx { # greater verbosity for debugging, take out for production #include site_postfix::debug + # Make the 'vmail' user for leap-mx. This user is where all legitimate, + # non-system mail is delivered so leap-mx can process it. Previously, we let + # the system pick a uid/gid, but we need to know what they are set to in order + # to set the virtual_uid_maps and virtual_gid_maps. Its a bit overkill write a + # fact just for this, so instead we pick arbitrary numbers that seem unlikely + # to be used and then use them in the postfix configuration user { 'vmail': ensure => present, comment => 'Leap Mailspool', home => '/var/mail/vmail', shell => '/bin/false', + uid => '42424', + gid => '42424', managehome => true, } |