From dad5888cea24eb71cb58d0a260a208ba6e2d8073 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Wed, 4 Aug 2010 22:43:58 -0300 Subject: Initial import --- manifests/mail.pp | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 manifests/mail.pp (limited to 'manifests/mail.pp') diff --git a/manifests/mail.pp b/manifests/mail.pp new file mode 100644 index 0000000..0864b7c --- /dev/null +++ b/manifests/mail.pp @@ -0,0 +1,48 @@ +class mail { + $mail_delivery = "postfix" + $postfix_smtp_listen = "all" + $postfix_mydestination = '$myhostname, $mydomain, localhost.$mydomain, localhost' + + case $postfix_mynetworks { + '': { $postfix_mynetworks = "127.0.0.0/8" } + } + + # Module requirements + include postfix + include database + include ssl::mail + + # Subsystems + include mail::packages + include mail::sasl + include mail::tls + + # TODO + #include mail::dovecot + #include mail::postfixadmin + #include mail::header_checks + + # Postfix configuration + postfix::config { + "mydomain": value => "$domain"; + "myhostname": value => "$fqdn"; + "mydestination": value => "$postfix_mydestination"; + "mynetworks": value => "$postfix_mynetworks"; + "relay_domains": value => "$domain"; + "virtual_alias_maps": value => "hash:/etc/postfix/virtual"; # TODO: use postfixadmin config instead + "transport_maps": value => "hash:/etc/postfix/transport"; + "mailbox_command": value => '/usr/bin/maildrop -d ${USER}'; + } + + postfix::hash { "/etc/postfix/virtual": + ensure => present, + } + + postfix::hash { "/etc/postfix/transport": + ensure => present, + } + + # Recipient restrictions + postfix::config { "smtpd_recipient_restrictions": + value => 'permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_rbl_client psbl.surriel.com, check_policy_service inet:127.0.0.1:60000' } +} -- cgit v1.2.3