try to order these a bit
[mirror/dsa-puppet.git] / modules / ferm / templates / defs.conf.erb
1 ##
2 ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
3 ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
4 ##
5
6 @def &SERVICE($proto, $port) = {
7  proto $proto mod state state (NEW) dport $port ACCEPT;
8 }
9
10 @def &SERVICE_RANGE($proto, $port, $srange) = {
11  proto $proto mod state state (NEW) dport $port @subchain "$port" { saddr ($srange) ACCEPT; }"
12 }
13
14 @def &TCP_UDP_SERVICE($port) = {
15  proto (tcp udp) mod state state (NEW) dport $port ACCEPT;
16 }
17
18 @def &TCP_UDP_SERVICE_RANGE($port, $srange) = {
19  proto (tcp udp) mod state state (NEW) dport $port @subchain "$port" { saddr ($srange) ACCEPT; }"
20 }
21
22 @def $HOST_MAILRELAY_V4 = (<%=
23   mailrelay = []
24   scope.lookupvar('site::localinfo').keys.sort.each do |node|
25       if scope.lookupvar('site::localinfo')[node]['mailrelay']
26           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
27              next if ip =~ /:/
28              mailrelay << ip
29           end
30       end
31   end
32
33   mailrelay.join(' ')
34 %>);
35
36 @def $HOST_MAILRELAY_V6 = (<%=
37   mailrelay = []
38   scope.lookupvar('site::localinfo').keys.sort.each do |node|
39       if scope.lookupvar('site::localinfo')[node]['mailrelay']
40           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
41              next if ip =~ /\./
42              mailrelay << ip
43           end
44       end
45   end
46
47   mailrelay.join(' ')
48 %>);
49
50 @def $HOST_MAILRELAY = ( $HOST_MAILRELAY_V4 $HOST_MAILRELAY_V6 );
51
52 @def $HOST_NAGIOS_V4 = (<%=
53   nagii = []
54   scope.lookupvar('site::localinfo').keys.sort.each do |node|
55       if scope.lookupvar('site::localinfo')[node]['nagiosmaster'] or scope.lookupvar('site::localinfo')[node]['extranrpeclient']
56           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
57              next if ip =~ /:/
58              nagii << ip
59           end
60       end
61   end
62
63   nagii.join(' ')
64 %>);
65
66 @def $HOST_NAGIOS_V6 = (<%=
67   nagii = []
68   scope.lookupvar('site::localinfo').keys.sort.each do |node|
69       if scope.lookupvar('site::localinfo')[node]['nagiosmaster'] or scope.lookupvar('site::localinfo')[node]['extranrpeclient']
70           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
71              next if ip =~ /\./
72              nagii << ip
73           end
74       end
75   end
76
77   nagii.join(' ')
78 %>);
79
80 @def $HOST_NAGIOS = ( $HOST_NAGIOS_V4 $HOST_NAGIOS_V6 );
81
82 @def $HOST_MUNIN_V4 = (<%=
83   munins = []
84   scope.lookupvar('site::localinfo').keys.sort.each do |node|
85       if scope.lookupvar('site::localinfo')[node]['muninmaster']
86           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
87              next if ip =~ /:/
88              munins << ip
89           end
90       end
91   end
92
93   munins.join(' ')
94 %>);
95
96 @def $HOST_MUNIN_V6 = (<%=
97   munins = []
98   scope.lookupvar('site::localinfo').keys.sort.each do |node|
99       if scope.lookupvar('site::localinfo')[node]['muninmaster']
100           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
101              next if ip =~ /\./
102              munins << ip
103           end
104       end
105   end
106
107   munins.join(' ')
108 %>);
109
110 @def $HOST_MUNIN = ( $HOST_MUNIN_V4 $HOST_MUNIN_V6 );
111
112 @def $HOST_DB_V6  = (<%=
113   dbs = []
114   scope.lookupvar('site::localinfo').keys.sort.each do |node|
115       if scope.lookupvar('site::localinfo')[node]['dbmaster']
116           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
117              next if ip =~ /\./
118              dbs << ip
119           end
120       end
121   end
122
123   dbs.join(' ')
124 %>);
125
126 @def $HOST_DB_V4 = (<%=
127   dbs = []
128   scope.lookupvar('site::localinfo').keys.sort.each do |node|
129       if scope.lookupvar('site::localinfo')[node]['dbmaster']
130           scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
131              next if ip =~ /:/
132              dbs << ip
133           end
134       end
135   end
136
137   dbs.join(' ')
138 %>);
139
140 @def $HOST_DB = ($HOST_DB_V4 $HOST_DB_V6);
141
142 @def $HOST_DEBIAN_V4 = (<%=
143   dbs = []
144   scope.lookupvar('site::allnodeinfo').keys.sort.each do |node|
145       next unless scope.lookupvar('site::allnodeinfo')[node].has_key?('ipHostNumber')
146       scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
147          next if ip =~ /:/
148          dbs << ip
149       end
150   end
151
152   dbs.join(' ')
153 %>);
154
155 @def $HOST_DEBIAN_V6  = (<%=
156   dbs = []
157   scope.lookupvar('site::allnodeinfo').keys.sort.each do |node|
158       next unless scope.lookupvar('site::allnodeinfo')[node].has_key?('ipHostNumber')
159       scope.lookupvar('site::allnodeinfo')[node]['ipHostNumber'].each do |ip|
160          next if ip =~ /\./
161          dbs << ip
162       end
163   end
164
165   dbs.join(' ')
166 %>);
167
168 @def $HOST_GANETI_V4 = (206.12.19.213/32 206.12.19.217/32);
169 @def $HOST_DRBD_V4   = (192.168.2.213/32 192.168.2.217/32);
170
171 @def $HOST_DEBIAN = ($HOST_DEBIAN_V4 $HOST_DEBIAN_V6);
172
173 @def $sgran   = (91.103.132.24/29 85.158.45.51/32);
174 @def $weasel  = ();
175 @def $weasel  = ($weasel 86.59.118.144/28); # debian@sil
176 @def $weasel  = ($weasel 86.59.21.32/29); # anguilla1
177 @def $weasel  = ($weasel 86.59.30.32/28); # anguilla2
178 @def $weasel  = ($weasel 141.201.27.0/24); # came
179 @def $weasel  = ($weasel 141.201.123.0/24); # cosy
180 @def $weasel  = ($weasel 62.99.152.176/28); # campus sbg
181 @def $zobel   = ();
182 @def $zobel   = ($zobel 87.139.82.80/32); # exit.credativ.com
183 @def $zobel   = ($zobel 87.193.134.192/27); # credativ qsc
184 @def $zobel   = ($zobel 78.47.2.104/29); # baldur, bragi, saga
185 @def $zobel   = ($zobel 92.198.42.24/29); # DG-i Office
186 @def $zobel   = ($zobel 93.94.128.0/21);  # DG-i AS
187 @def $zobel   = ($zobel 195.49.152.0/22); # DG-i AS
188 @def $zobel   = ($zobel 194.187.64.0/22); # DG-i AS
189 @def $luca    = (64.71.152.109);
190 @def $paravoid = (83.212.9.72); # faidon.noc.grnet.gr
191 @def $tfheen   = ();
192 @def $tfheen   = ($tfheen 194.31.39.0/26); # office network
193 @def $tfheen   = ($tfheen 195.159.200.122); # home
194 @def $tfheen   = ($tfheen 77.40.254.120/29); # home
195 @def $DSA_IPS = ($sgran $weasel $zobel $luca $paravoid $tfheen);
196
197 @def $sgran6     = (2001:4b10:100b::/48);
198 @def $sgran6     = ($sgran6 2001:4b10:0000:810b::/64);
199 @def $weasel6    = ();
200 @def $weasel6    = ($weasel6 2001:826:408::/48); # unisbg
201 @def $weasel6    = ($weasel6 2001:858:10f::/48); # anguilla
202 @def $zobel6     = ();
203 @def $zobel6     = ($zobel6 2001:6f8:1215::/48); # baldur
204 @def $zobel6     = ($zobel6 2001:6f8:928::/48); # WS2 
205 @def $zobel6     = ($zobel6 2a01:198:549::/48); # WGS20
206 @def $zobel6     = ($zobel6 2a01:198:6b2::/48); # AdS20
207 @def $zobel6     = ($zobel6 2a02:158::/32);     # DG-i AS
208 @def $luca6      = ();
209 @def $paravoid6  = (2001:648:2340:1:225:64ff:fea4:8590); # faidon.noc.grnet.gr
210 @def $tfheen6    = ();
211 @def $tfheen6    = ($tfheen6 2a02:c0:1013:1::/64); # Office
212 @def $tfheen6    = ($tfheen6 2001:840:f000:4007::/64); # Home, link
213 @def $tfheen6    = ($tfheen6 2001:840:4007::/48); # Home
214 @def $DSA_V6_IPS = ($sgran6 $weasel6 $zobel6 $luca6 $paravoid6 $tfheen6);
215
216 @def $USER_christoph = ();
217 @def $USER_christoph = ($USER_christoph 212.114.250.148/31);
218 @def $USER_aurel32 = ();
219 @def $USER_aurel32 = ($USER_aurel32 88.191.126.93); # hall.aurel32.net
220 @def $USER_aurel32 = ($USER_aurel32 82.232.2.251); # farad.aurel32.net
221
222 @def $BUILDD_SSH_ACCESS = ();
223 @def $BUILDD_SSH_ACCESS = ($BUILDD_SSH_ACCESS 194.177.211.200); # grieg
224 @def $BUILDD_SSH_ACCESS = ($BUILDD_SSH_ACCESS 70.103.162.29); # master
225 @def $BUILDD_SSH_ACCESS = ($BUILDD_SSH_ACCESS 206.12.19.5); # ravel
226 @def $FREEBSD_SSH_ACCESS = ();
227 @def $FREEBSD_SSH_ACCESS = ($FREEBSD_SSH_ACCESS $DSA_IPS $BUILDD_SSH_ACCESS);
228 @def $FREEBSD_SSH_ACCESS = ($FREEBSD_SSH_ACCESS $USER_christoph $USER_aurel32); # buildd admins