diff --git a/smtpd/files/smtpd.conf.CentOS b/smtpd/files/smtpd.conf.CentOS deleted file mode 100644 index a2ea7b6..0000000 --- a/smtpd/files/smtpd.conf.CentOS +++ /dev/null @@ -1,5 +0,0 @@ -listen on localhost - -table aliases db:/etc/aliases.db - -include "/etc/opensmtpd/smtpd.conf.local" diff --git a/smtpd/files/smtpd.conf.OpenBSD b/smtpd/files/smtpd.conf.OpenBSD deleted file mode 100644 index 9202595..0000000 --- a/smtpd/files/smtpd.conf.OpenBSD +++ /dev/null @@ -1,5 +0,0 @@ -listen on lo0 - -table aliases db:/etc/mail/aliases.db - -include "/etc/mail/smtpd.conf.local" diff --git a/smtpd/files/smtpd.conf.RedHat b/smtpd/files/smtpd.conf.RedHat deleted file mode 100644 index a2ea7b6..0000000 --- a/smtpd/files/smtpd.conf.RedHat +++ /dev/null @@ -1,5 +0,0 @@ -listen on localhost - -table aliases db:/etc/aliases.db - -include "/etc/opensmtpd/smtpd.conf.local" diff --git a/smtpd/manifests/init.pp b/smtpd/manifests/init.pp index 0b2c294..01f82b6 100644 --- a/smtpd/manifests/init.pp +++ b/smtpd/manifests/init.pp @@ -23,13 +23,11 @@ class smtpd { $package = "opensmtpd" $service = "opensmtpd" $confdir = "/etc/opensmtpd" + $aliases = "/etc/aliases" package { $package: ensure => installed, - before => [ - File["${confdir}/smtpd.conf"], - File["${confdir}/smtpd.conf.local"], - ], + before => File["${confdir}/smtpd.conf"], } exec { "/usr/sbin/alternatives --set mta /usr/sbin/sendmail.opensmtpd": @@ -49,6 +47,7 @@ class smtpd { $package = undef $service = "smtpd" $confdir = "/etc/mail" + $aliases = "/etc/mail/aliases" file { "/etc/mailer.conf": ensure => present, @@ -71,18 +70,6 @@ class smtpd { } file { "${confdir}/smtpd.conf": - ensure => present, - mode => "0644", - owner => "root", - group => $::operatingsystem ? { - "openbsd" => "wheel", - default => "root", - }, - source => "puppet:///modules/smtpd/smtpd.conf.${::operatingsystem}", - notify => Service[$service], - } - - file { "${confdir}/smtpd.conf.local": ensure => present, mode => "0644", owner => "root", @@ -155,7 +142,7 @@ class smtpd::server( $mda = "/usr/local/bin/procmail -Y -t -f %{sender}" - File["/etc/mail/smtpd.conf.local"] { + File["${confdir}/smtpd.conf"] { content => template("smtpd/server.conf.erb"), } diff --git a/smtpd/templates/client.conf.erb b/smtpd/templates/client.conf.erb index 5bdfd8e..696f302 100644 --- a/smtpd/templates/client.conf.erb +++ b/smtpd/templates/client.conf.erb @@ -1,3 +1,11 @@ +<% if @operatingsystem == "OpenBSD" -%> +listen on lo0 +<% else -%> +listen on localhost +<% end -%> + +table aliases db:<%= @aliases %>.db + <% if @relay -%> accept from local for any relay via <%= @relay %><% if @mail_domain %> as "@<%= @mail_domain %>"<% end %> <% else -%> diff --git a/smtpd/templates/server.conf.erb b/smtpd/templates/server.conf.erb index 34cab56..f4fe530 100644 --- a/smtpd/templates/server.conf.erb +++ b/smtpd/templates/server.conf.erb @@ -1,6 +1,8 @@ +listen on lo0 listen on egress port smtp tls certificate server listen on egress port submission tls-require certificate server auth +table aliases db:/etc/mail/aliases.db table clients db:/etc/mail/clients.db <% @domains.each do |domain| -%> table aliases.<%= domain %> db:/etc/mail/aliases.<%= domain %>.db