class postfix {
+ package { 'postfix':
+ ensure => installed
+ }
+
+ service { 'postfix':
+ ensure => running
+ }
+
+ include debian_org::mail_incoming_port
+
munin::check { 'ps_exim4': ensure => absent }
munin::check { 'exim_mailqueue': ensure => absent }
munin::check { 'exim_mailstats': ensure => absent }
munin::check { 'ps_smtp': script => 'ps_' }
munin::check { 'ps_smtpd': script => 'ps_' }
- @ferm::rule {
- domain => '(ip ip6)',
- description => 'Allow smtp access',
- rule => '&SERVICE(tcp, 25)'
+ if ! has_role('lists') {
+ concat { '/etc/postfix/main.cf':
+ notify => Exec['service postfix reload'],
+ }
+ concat::fragment { 'puppet-postfix-main.cf--header':
+ target => '/etc/postfix/main.cf',
+ order => '000',
+ content => template('postfix/main.cf-header.erb')
+ }
+ } else {
+ include fail2ban::postfix
+ }
+
+ exec { 'service postfix reload':
+ path => '/usr/bin:/usr/sbin:/bin:/sbin',
+ command => 'service postfix reload',
+ refreshonly => true,
+ require => Package['postfix'],
}
}