diff options
Diffstat (limited to 'manifests/router/mail.pp')
-rw-r--r-- | manifests/router/mail.pp | 70 |
1 files changed, 8 insertions, 62 deletions
diff --git a/manifests/router/mail.pp b/manifests/router/mail.pp index 403579d..5efde58 100644 --- a/manifests/router/mail.pp +++ b/manifests/router/mail.pp @@ -1,64 +1,10 @@ -class firewall::router::mail($destination, $zone = 'loc', $originaldest = $ipaddress) { - shorewall::rule { 'mail-1': - action => 'DNAT', - source => 'net', - destination => "$zone:$destination:25", - proto => 'tcp', - destinationport => '25', - ratelimit => '-', - order => 1000, - } - - shorewall::rule { 'mail-2': - action => 'DNAT', - source => '$FW', - destination => "$zone:$destination:25", - proto => 'tcp', - destinationport => '25', - originaldest => "$originaldest", - ratelimit => '-', - order => 1001, - } - - shorewall::rule { 'mail-3': - action => 'DNAT', - source => 'net', - destination => "$zone:$destination:993", - proto => 'tcp', - destinationport => '993', - ratelimit => '-', - order => 1002, - } - - shorewall::rule { 'mail-4': - action => 'DNAT', - source => '$FW', - destination => "$zone:$destination:993", - proto => 'tcp', - destinationport => '993', - originaldest => "$originaldest", - ratelimit => '-', - order => 1003, - } - - shorewall::rule { 'mail-5': - action => 'DNAT', - source => 'net', - destination => "$zone:$destination:587", - proto => 'tcp', - destinationport => '587', - ratelimit => '-', - order => 1004, - } - - shorewall::rule { 'mail-6': - action => 'DNAT', - source => '$FW', - destination => "$zone:$destination:587", - proto => 'tcp', - destinationport => '587', - originaldest => "$originaldest", - ratelimit => '-', - order => 1005, +class firewall::router::mail(i + $implementation = lookup('firewall::implementation', undef, undef, 'shorewall'), + $destination, $zone = 'loc', $originaldest = $ipaddress +) { + class { "firewall::implementations::${implementation}::router::mail": + destination => $destination, + zone => $zone, + originaldest => $originaldest, } } |