Compare commits

..

1 commit

Author SHA1 Message Date
0bc3e3eb1f Fixed deprecated var references in template 2015-10-14 18:48:41 +02:00
3 changed files with 93 additions and 96 deletions

View file

@ -34,58 +34,41 @@
# }
#
class postfix(
$smtp_listen = '127.0.0.1',
$root_mail_recipient = 'nobody',
$anon_sasl = 'no',
$manage_header_checks = 'no',
$manage_tls_policy = 'no',
$manage_transport_regexp = 'no',
$manage_virtual_regexp = 'no',
$smtp_listen = "127.0.0.1",
$root_mail_recipient = "nobody",
$anon_sasl = "no",
$manage_header_checks = "no",
$manage_tls_policy = "no",
$manage_transport_regexp = "no",
$manage_virtual_regexp = "no",
$tls_fingerprint_digest = 'sha1',
$use_amavisd = 'no',
$use_dovecot_lda = 'no',
$use_schleuder = 'no',
$use_sympa = 'no',
$use_firma = 'no',
$use_mlmmj = 'no',
$use_submission = 'no',
$use_smtps = 'no',
$mastercf_tail = '',
$use_amavisd = "no",
$use_dovecot_lda = "no",
$use_schleuder = "no",
$use_sympa = "no",
$use_firma = "no",
$use_mlmmj = "no",
$use_submission = "no",
$use_smtps = "no",
$mastercf_tail = "",
$inet_interfaces = 'all',
$myorigin = $::fqdn,
$default_alias_maps = true
) {
# selinux labels differ from one distribution to another
case $::operatingsystem {
'RedHat', 'CentOS': {
$master_cf_template = 'postfix/master.cf.redhat5.erb'
# selinux labels differ from one distribution to another
RedHat, CentOS: {
case $::operatingsystemmajrelease {
'4': { $postfix_seltype = 'etc_t' }
'5': { $postfix_seltype = 'postfix_etc_t' }
"4": { $postfix_seltype = "etc_t" }
"5": { $postfix_seltype = "postfix_etc_t" }
default: { $postfix_seltype = undef }
}
postfix::config {
'sendmail_path': value => '/usr/sbin/sendmail.postfix';
'newaliases_path': value => '/usr/bin/newaliases.postfix';
'mailq_path': value => '/usr/bin/mailq.postfix';
}
}
'Debian': {
$master_cf_template = "postfix/master.cf.debian-${::operatingsystemmajrelease}.erb"
}
'Ubuntu': {
$master_cf_template = 'postfix/master.cf.debian-sid.erb'
}
default: {
$postfix_seltype = undef
$master_cf_template = undef
$postfix_seltype = undef
}
}
@ -98,8 +81,7 @@ class postfix(
if $anon_sasl == 'yes' {
include postfix::anonsasl
}
# this global variable needs to get parameterized as well
if $::header_checks == 'yes' {
if $header_checks == 'yes' {
include postfix::header_checks
}
if $manage_tls_policy == 'yes' {
@ -117,7 +99,7 @@ class postfix(
include postfix::virtual_regexp
}
package { ['postfix', 'mailx']:
package { ["postfix", "mailx"]:
ensure => installed
}
@ -125,71 +107,86 @@ class postfix(
Package[mailx] { name => 'bsd-mailx' }
}
service { 'postfix':
service { "postfix":
ensure => running,
require => Package['postfix'],
require => Package["postfix"],
}
file { '/etc/mailname':
file { "/etc/mailname":
ensure => present,
content => "${::fqdn}\n",
content => "${fqdn}\n",
seltype => $postfix_seltype,
}
# Aliases
file { '/etc/aliases':
ensure => present,
file { "/etc/aliases":
ensure => present,
content => "# file managed by puppet\n",
replace => false,
seltype => $postfix_seltype,
notify => Exec['newaliases'],
notify => Exec["newaliases"],
}
# Aliases
exec { 'newaliases':
command => '/usr/bin/newaliases',
exec { "newaliases":
command => "/usr/bin/newaliases",
refreshonly => true,
require => Package['postfix'],
subscribe => File['/etc/aliases'],
require => Package["postfix"],
subscribe => File["/etc/aliases"],
}
# Config files
file { '/etc/postfix/master.cf':
file { "/etc/postfix/master.cf":
ensure => present,
owner => 'root',
group => 'root',
mode => '0644',
content => template($master_cf_template),
owner => "root",
group => "root",
mode => "0644",
content => $::operatingsystem ? {
Redhat => template("postfix/master.cf.redhat5.erb"),
CentOS => template("postfix/master.cf.redhat5.erb"),
Debian => template("postfix/master.cf.debian-${::operatingsystemmajrelease}.erb"),
Ubuntu => template("postfix/master.cf.debian-etch.erb"),
},
seltype => $postfix_seltype,
notify => Service['postfix'],
require => Package['postfix'],
notify => Service["postfix"],
require => Package["postfix"],
}
# Config files
file { '/etc/postfix/main.cf':
file { "/etc/postfix/main.cf":
ensure => present,
owner => 'root',
group => 'root',
mode => '0644',
source => 'puppet:///modules/postfix/main.cf',
owner => "root",
group => "root",
mode => "0644",
source => "puppet:///modules/postfix/main.cf",
replace => false,
seltype => $postfix_seltype,
notify => Service['postfix'],
require => Package['postfix'],
notify => Service["postfix"],
require => Package["postfix"],
}
# Default configuration parameters
if $default_alias_maps {
postfix::config {
'alias_maps': value => 'hash:/etc/aliases';
"alias_maps": value => "hash:/etc/aliases";
}
}
postfix::config {
'myorigin': value => $myorigin;
'inet_interfaces': value => $inet_interfaces;
"myorigin": value => "${myorigin}";
"inet_interfaces": value => "${inet_interfaces}";
}
postfix::mailalias {'root':
case $::operatingsystem {
RedHat, CentOS: {
postfix::config {
"sendmail_path": value => "/usr/sbin/sendmail.postfix";
"newaliases_path": value => "/usr/bin/newaliases.postfix";
"mailq_path": value => "/usr/bin/mailq.postfix";
}
}
}
postfix::mailalias {"root":
recipient => $root_mail_recipient,
}
}

View file

@ -8,25 +8,25 @@
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
<% if @smtp_listen == 'all' %>smtp inet n - - - - smtpd
<% else %><%= @smtp_listen %>:smtp inet n - - - - smtpd<% end %>
<% if smtp_listen == 'all' %>smtp inet n - - - - smtpd
<% else %><%= smtp_listen %>:smtp inet n - - - - smtpd<% end %>
#smtp inet n - - - 1 postscreen
#smtpd pass - - - - - smtpd
#dnsblog unix - - - - 0 dnsblog
#tlsproxy unix - - - - 0 tlsproxy
<% if @use_submission == 'yes' %>submission inet n - - - - smtpd
<% if use_submission == 'yes' %>submission inet n - - - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
<% end %>
<% if @use_smtps == 'yes' %>smtps inet n - - - - smtpd
<% if use_smtps == 'yes' %>smtps inet n - - - - smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
<% end %>
#628 inet n - - - - qmqpd
#628 inet n - - - - qmqpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - n 300 1 qmgr
@ -114,7 +114,7 @@ mailman unix - n n - - pipe
flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
${nexthop} ${user}
<% if @use_amavisd == 'yes' %>
<% if use_amavisd == 'yes' %>
amavis unix - - - - 2 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
@ -133,25 +133,25 @@ amavis unix - - - - 2 smtp
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_bind_address=127.0.0.1
<% end %>
<% if @use_dovecot_lda == 'yes' %>
<% if use_dovecot_lda == 'yes' %>
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop} -n -m ${extension}
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop} -n -m ${extension}
<% end %>
<% if @use_schleuder == 'yes' %>
<% if use_schleuder == 'yes' %>
schleuder unix - n n - - pipe
flags=DRhu user=schleuder argv=/usr/bin/schleuder ${user}
<% end %>
<% if @use_sympa == 'yes' %>
<% if use_sympa == 'yes' %>
sympa unix - n n - - pipe
flags=R user=sympa argv=/usr/lib/sympa/bin/queue ${recipient}
sympabounce unix - n n - - pipe
flags=R user=sympa argv=/usr/lib/sympa/bin/bouncequeue ${user}
<% end %>
<% if @use_mlmmj == 'yes' %>
<% if use_mlmmj == 'yes' %>
mlmmj unix - n n - - pipe
flags=DORhu user=mlmmj argv=/usr/bin/mlmmj-recieve -F -L /var/spool/mlmmj/$nexthop/
<%- end -%>
<%- unless @mastercf_tail.to_s.empty? then -%>
<%= @mastercf_tail %>
<%- unless mastercf_tail.to_s.empty? then -%>
<%= mastercf_tail %>
<%- end -%>

View file

@ -8,25 +8,25 @@
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
<% if @smtp_listen == 'all' %>smtp inet n - - - - smtpd
<% else %><%= @smtp_listen %>:smtp inet n - - - - smtpd<% end %>
<% if smtp_listen == 'all' %>smtp inet n - - - - smtpd
<% else %><%= smtp_listen %>:smtp inet n - - - - smtpd<% end %>
#smtp inet n - - - 1 postscreen
#smtpd pass - - - - - smtpd
#dnsblog unix - - - - 0 dnsblog
#tlsproxy unix - - - - 0 tlsproxy
<% if @use_submission == 'yes' %>submission inet n - - - - smtpd
<% if use_submission == 'yes' %>submission inet n - - - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
<% end %>
<% if @use_smtps == 'yes' %>smtps inet n - - - - smtpd
<% if use_smtps == 'yes' %>smtps inet n - - - - smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
<% end %>
#628 inet n - - - - qmqpd
#628 inet n - - - - qmqpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - n 300 1 qmgr
@ -114,7 +114,7 @@ mailman unix - n n - - pipe
flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
${nexthop} ${user}
<% if @use_amavisd == 'yes' %>
<% if use_amavisd == 'yes' %>
amavis unix - - - - 2 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
@ -133,25 +133,25 @@ amavis unix - - - - 2 smtp
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_bind_address=127.0.0.1
<% end %>
<% if @use_dovecot_lda == 'yes' %>
<% if use_dovecot_lda == 'yes' %>
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop} -n -m ${extension}
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d ${recipient}
<% end %>
<% if @use_schleuder == 'yes' %>
<% if use_schleuder == 'yes' %>
schleuder unix - n n - - pipe
flags=DRhu user=schleuder argv=/usr/bin/schleuder ${user}
<% end %>
<% if @use_sympa == 'yes' %>
<% if use_sympa == 'yes' %>
sympa unix - n n - - pipe
flags=R user=sympa argv=/usr/lib/sympa/bin/queue ${recipient}
sympabounce unix - n n - - pipe
flags=R user=sympa argv=/usr/lib/sympa/bin/bouncequeue ${user}
<% end %>
<% if @use_mlmmj == 'yes' %>
<% if use_mlmmj == 'yes' %>
mlmmj unix - n n - - pipe
flags=DORhu user=mlmmj argv=/usr/bin/mlmmj-recieve -F -L /var/spool/mlmmj/$nexthop/
<%- end -%>
<%- unless @mastercf_tail.to_s.empty? then -%>
<%= @mastercf_tail %>
<%- unless mastercf_tail.to_s.empty? then -%>
<%= mastercf_tail %>
<%- end -%>