2 if $::hostname in [zandonai,zelenka] {
6 if (getfromhash($site::nodeinfo, 'hoster', 'name') == "aql") {
12 @ferm::rule { 'dsa-upsmon':
13 description => 'Allow upsmon access',
14 rule => '&SERVICE_RANGE(tcp, 3493, ( 82.195.75.64/26 192.168.43.0/24 ))'
17 lotti,loghost-grnet-01,loghost-osuosl-01: {
18 @ferm::rule { 'dsa-syslog':
19 description => 'Allow syslog access',
20 rule => '&SERVICE_RANGE(tcp, 5140, $HOST_DEBIAN_V4)'
22 @ferm::rule { 'dsa-syslog-v6':
24 description => 'Allow syslog access',
25 rule => '&SERVICE_RANGE(tcp, 5140, $HOST_DEBIAN_V6)'
27 @ferm::rule { 'fastly-syslog':
28 description => 'Allow syslog access',
29 rule => '&SERVICE_RANGE(tcp, 5141, $HOST_FASTLY)'
33 @ferm::rule { 'dsa-hkp':
35 description => 'Allow hkp access',
36 rule => '&SERVICE(tcp, 11371)'
40 @ferm::rule { 'dsa-infinoted':
42 description => 'Allow infinoted access',
43 rule => '&SERVICE(tcp, 6523)'
47 @ferm::rule { 'dsa-finger':
49 description => 'Allow finger access',
50 rule => '&SERVICE(tcp, 79)'
52 @ferm::rule { 'dsa-ldap':
54 description => 'Allow ldap access',
55 rule => '&SERVICE(tcp, 389)'
57 @ferm::rule { 'dsa-ldaps':
59 description => 'Allow ldaps access',
60 rule => '&SERVICE(tcp, 636)'
68 @ferm::rule { 'dsa-vrrp':
69 rule => 'proto vrrp daddr 224.0.0.18 jump ACCEPT',
71 @ferm::rule { 'dsa-bind-notrack-in':
73 description => 'NOTRACK for nameserver traffic',
75 chain => 'PREROUTING',
76 rule => 'proto (tcp udp) daddr 5.153.231.24 dport 53 jump NOTRACK'
79 @ferm::rule { 'dsa-bind-notrack-out':
81 description => 'NOTRACK for nameserver traffic',
84 rule => 'proto (tcp udp) saddr 5.153.231.24 sport 53 jump NOTRACK'
87 @ferm::rule { 'dsa-bind-notrack-in6':
89 description => 'NOTRACK for nameserver traffic',
91 chain => 'PREROUTING',
92 rule => 'proto (tcp udp) daddr 2001:41c8:1000:21::21:24 dport 53 jump NOTRACK'
95 @ferm::rule { 'dsa-bind-notrack-out6':
97 description => 'NOTRACK for nameserver traffic',
100 rule => 'proto (tcp udp) saddr 2001:41c8:1000:21::21:24 sport 53 jump NOTRACK'
109 @ferm::rule { 'dsa-postgres-udd':
110 description => 'Allow postgress access',
111 domain => '(ip ip6)',
112 # quantz, master, coccia
114 &SERVICE_RANGE(tcp, 5452, (
115 ${ join(getfromhash($site::allnodeinfo, 'quantz.debian.org', 'ipHostNumber'), " ") }
116 ${ join(getfromhash($site::allnodeinfo, 'master.debian.org', 'ipHostNumber'), " ") }
117 ${ join(getfromhash($site::allnodeinfo, 'coccia.debian.org', 'ipHostNumber'), " ") }
118 ${ join(getfromhash($site::allnodeinfo, 'respighi.debian.org', 'ipHostNumber'), " ") }
119 ${ join(getfromhash($site::allnodeinfo, 'wuiet.debian.org', 'ipHostNumber'), " ") }
125 @ferm::rule { 'dsa-postgres':
126 description => 'Allow postgress access',
127 domain => '(ip ip6)',
129 &SERVICE_RANGE(tcp, 5433, (
130 ${ join(getfromhash($site::allnodeinfo, 'bmdb1.debian.org', 'ipHostNumber'), " ") }
137 @ferm::rule { 'dsa-postgres-main':
138 description => 'Allow postgress access to cluster: main',
139 domain => '(ip ip6)',
141 &SERVICE_RANGE(tcp, 5435, (
142 ${ join(getfromhash($site::allnodeinfo, 'ticharich.debian.org', 'ipHostNumber'), " ") }
143 ${ join(getfromhash($site::allnodeinfo, 'petrova.debian.org', 'ipHostNumber'), " ") }
144 ${ join(getfromhash($site::allnodeinfo, 'ullmann.debian.org', 'ipHostNumber'), " ") }
145 ${ join(getfromhash($site::allnodeinfo, 'olin.debian.org', 'ipHostNumber'), " ") }
146 ${ join(getfromhash($site::allnodeinfo, 'wuiet.debian.org', 'ipHostNumber'), " ") }
147 ${ join(getfromhash($site::allnodeinfo, 'quantz.debian.org', 'ipHostNumber'), " ") }
148 ${ join(getfromhash($site::allnodeinfo, 'respighi.debian.org', 'ipHostNumber'), " ") }
149 ${ join(getfromhash($site::allnodeinfo, 'rusca.debian.org', 'ipHostNumber'), " ") }
150 ${ join(getfromhash($site::allnodeinfo, 'tate.debian.org', 'ipHostNumber'), " ") }
155 @ferm::rule { 'dsa-postgres-dak':
156 description => 'Allow postgress access to cluster: dak',
157 domain => '(ip ip6)',
159 &SERVICE_RANGE(tcp, 5434, (
160 ${ join(getfromhash($site::allnodeinfo, 'coccia.debian.org', 'ipHostNumber'), " ") }
161 ${ join(getfromhash($site::allnodeinfo, 'quantz.debian.org', 'ipHostNumber'), " ") }
162 ${ join(getfromhash($site::allnodeinfo, 'nono.debian.org', 'ipHostNumber'), " ") }
163 ${ join(getfromhash($site::allnodeinfo, 'wuiet.debian.org', 'ipHostNumber'), " ") }
164 ${ join(getfromhash($site::allnodeinfo, 'respighi.debian.org', 'ipHostNumber'), " ") }
165 ${ join(getfromhash($site::allnodeinfo, 'usper.debian.org', 'ipHostNumber'), " ") }
166 ${ join(getfromhash($site::allnodeinfo, 'ullmann.debian.org', 'ipHostNumber'), " ") }
170 @ferm::rule { 'dsa-postgres-wannabuild':
171 description => 'Allow postgress access to cluster: wannabuild',
172 domain => '(ip ip6)',
174 &SERVICE_RANGE(tcp, 5436, (
175 ${ join(getfromhash($site::allnodeinfo, 'respighi.debian.org', 'ipHostNumber'), " ") }
176 ${ join(getfromhash($site::allnodeinfo, 'wuiet.debian.org', 'ipHostNumber'), " ") }
177 ${ join(getfromhash($site::allnodeinfo, 'ullmann.debian.org', 'ipHostNumber'), " ") }
182 @ferm::rule { 'dsa-postgres-bacula':
183 description => 'Allow postgress access to cluster: bacula',
184 domain => '(ip ip6)',
186 &SERVICE_RANGE(tcp, 5437, (
187 ${ join(getfromhash($site::allnodeinfo, 'dinis.debian.org', 'ipHostNumber'), " ") }
188 ${ join(getfromhash($site::allnodeinfo, 'storace.debian.org', 'ipHostNumber'), " ") }
193 @ferm::rule { 'dsa-postgres-dedup':
194 description => 'Allow postgress access to cluster: dedup',
195 domain => '(ip ip6)',
197 &SERVICE_RANGE(tcp, 5439, (
198 ${ join(getfromhash($site::allnodeinfo, 'delfin.debian.org', 'ipHostNumber'), " ") }
202 @ferm::rule { 'dsa-postgres-debsources':
203 description => 'Allow postgress access to cluster: debsources',
204 domain => '(ip ip6)',
206 &SERVICE_RANGE(tcp, 5440, (
207 ${ join(getfromhash($site::allnodeinfo, 'sor.debian.org', 'ipHostNumber'), " ") }
214 @ferm::rule { 'dsa-postgres-danzi':
216 description => 'Allow postgress access',
217 rule => '&SERVICE_RANGE(tcp, 5433, ( 206.12.19.0/24 209.87.16.0/24 5.153.231.18/32 ))'
219 @ferm::rule { 'dsa-postgres-danzi6':
221 description => 'Allow postgress access',
222 rule => '&SERVICE_RANGE(tcp, 5433, ( 2607:f8f0:610:4000::/64 2607:f8f0:614:1::/64 2001:41c8:1000:21::21:18/128 ))'
225 @ferm::rule { 'dsa-postgres2-danzi':
226 description => 'Allow postgress access2',
227 rule => '&SERVICE_RANGE(tcp, 5434, ( 209.87.16.0/24 ))'
229 @ferm::rule { 'dsa-postgres2-danzi6':
231 description => 'Allow postgress access2',
232 rule => '&SERVICE_RANGE(tcp, 5434, ( 2607:f8f0:614:1::/64 ))'
236 @ferm::rule { 'dsa-postgres-backup':
237 description => 'Allow postgress access',
238 rule => '&SERVICE_RANGE(tcp, 5432, ( $HOST_PGBACKUPHOST_V4 ))'
240 @ferm::rule { 'dsa-postgres-backup6':
242 description => 'Allow postgress access',
243 rule => '&SERVICE_RANGE(tcp, 5432, ( $HOST_PGBACKUPHOST_V6 ))'
247 @ferm::rule { 'dsa-postgres':
248 description => 'Allow postgress access',
249 domain => '(ip ip6)',
251 &SERVICE_RANGE(tcp, 5473, (
252 ${ join(getfromhash($site::allnodeinfo, 'lw07.debian.org', 'ipHostNumber'), " ") }
253 ${ join(getfromhash($site::allnodeinfo, 'snapshotdb-manda-01.debian.org', 'ipHostNumber'), " ") }
260 @ferm::rule { 'dsa-postgres-snapshot':
261 description => 'Allow postgress access',
262 rule => '&SERVICE_RANGE(tcp, 5439, ( 185.17.185.176/28 ))'
264 @ferm::rule { 'dsa-postgres-snapshot6':
266 description => 'Allow postgress access',
267 rule => '&SERVICE_RANGE(tcp, 5439, ( 2001:1af8:4020:b030::/64 ))'
270 snapshotdb-manda-01: {
271 @ferm::rule { 'dsa-postgres-snapshot':
272 domain => '(ip ip6)',
273 description => 'Allow postgress access from leaseweb (lw07 and friends)',
274 rule => '&SERVICE_RANGE(tcp, 5442, ( 185.17.185.176/28 2001:1af8:4020:b030::/64 ))'
282 @ferm::rule { 'dsa-vpn':
283 description => 'Allow openvpn access',
284 rule => '&SERVICE(udp, 17257)'
286 @ferm::rule { 'dsa-routing':
287 description => 'forward chain',
289 rule => 'policy ACCEPT;
290 mod state state (ESTABLISHED RELATED) ACCEPT;
291 interface tun+ ACCEPT;
292 REJECT reject-with icmp-admin-prohibited
295 @ferm::rule { 'dsa-vpn-mark':
297 chain => 'PREROUTING',
298 rule => 'interface tun+ MARK set-mark 1',
300 @ferm::rule { 'dsa-vpn-nat':
302 chain => 'POSTROUTING',
303 rule => 'outerface !tun+ mod mark mark 1 MASQUERADE',
306 ubc-enc2bl01,ubc-enc2bl02,ubc-enc2bl09,ubc-enc2bl10: {
307 @ferm::rule { 'dsa-ssh-priv':
308 description => 'Allow ssh access',
309 rule => '&SERVICE_RANGE(tcp, 22, ( 172.29.40.0/22 172.29.203.0/24 ))',
312 ubc-node-arm01,ubc-node-arm02,ubc-node-arm03: {
313 @ferm::rule { 'dsa-ssh-priv':
314 description => 'Allow ssh access',
315 rule => '&SERVICE_RANGE(tcp, 22, ( 172.29.43.240 ))',
323 @ferm::rule { 'dsa-tftp':
324 description => 'Allow tftp access',
325 rule => '&SERVICE_RANGE(udp, 69, ( 172.28.17.0/24 ))'
329 @ferm::rule { 'dsa-tftp':
330 description => 'Allow tftp access',
331 rule => '&SERVICE_RANGE(udp, 69, ( 82.195.75.64/26 192.168.43.0/24 ))'