X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Ftemplates%2Fdefs.conf.erb;h=fa4729fdbc67472c8bb23d08de20553c37254f5a;hb=8523b352f2b2e9a9fb29573d8f20f4202fe7a865;hp=2c97337ade639955f915144acea5532011ce959e;hpb=422c7cbff1fa0db0b11f077a73a0227c9cc775ae;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/templates/defs.conf.erb b/modules/ferm/templates/defs.conf.erb index 2c97337ad..fa4729fdb 100644 --- a/modules/ferm/templates/defs.conf.erb +++ b/modules/ferm/templates/defs.conf.erb @@ -8,13 +8,43 @@ } @def &SERVICE_RANGE($proto, $port, $srange) = { - proto $proto mod state state (NEW) dport $port saddr ($srange) ACCEPT; + proto $proto mod state state (NEW) dport $port @subchain "$port" { saddr ($srange) ACCEPT; }" } @def &TCP_UDP_SERVICE($port) = { proto (tcp udp) mod state state (NEW) dport $port ACCEPT; } +@def $HOST_MAILRELAY_V4 = (<%= + mailrelay = [] + localinfo.keys.sort.each do |node| + if localinfo[node]['mailrelay'] + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /:/ + mailrelay << ip + end + end + end + + mailrelay.join(' ') +%>); + +@def $HOST_MAILRELAY_V6 = (<%= + mailrelay = [] + localinfo.keys.sort.each do |node| + if localinfo[node]['mailrelay'] + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /\./ + mailrelay << ip + end + end + end + + mailrelay.join(' ') +%>); + +@def $HOST_MAILRELAY = ( $HOST_MAILRELAY_V4 $HOST_MAILRELAY_V6 ); + @def $HOST_NAGIOS_V4 = (<%= nagii = [] localinfo.keys.sort.each do |node|