+ if $::hostname in [zandonai,zelenka] {
+ include ferm::zivit
+ }
+
+ if $::hostname in [glinka,klecker,rietz,sibelius] {
+ ferm::rule { 'dsa-rsync':
+ domain => '(ip ip6)',
+ description => 'Allow rsync access',
+ rule => '&SERVICE(tcp, 873)'
+ }
+ }
+
+ case $::hostname {
+ bm-bl9: {
+ @ferm::rule { 'dsa-iscsi':
+ description => 'Allow iscsi access',
+ rule => '&SERVICE_RANGE(tcp, 3260, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ }
+ oyens: {
+ @ferm::rule { 'dsa-spice':
+ description => 'Allow spice-console access',
+ rule => '&SERVICE(tcp, 6082)'
+ }
+ @ferm::rule { 'dsa-memcache':
+ description => 'Allow memcache access',
+ rule => '&SERVICE_RANGE(tcp, 11211, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-memcache6':
+ domain => 'ip6',
+ description => 'Allow memcache access',
+ rule => '&SERVICE_RANGE(tcp, 11211, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-amqp':
+ description => 'Allow rabbitmq access',
+ rule => '&SERVICE_RANGE(tcp, 5672, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-amqp6':
+ domain => 'ip6',
+ description => 'Allow rabbitmq access',
+ rule => '&SERVICE_RANGE(tcp, 5672, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-keystone':
+ description => 'Allow keystone access',
+ rule => '&SERVICE_RANGE(tcp, 5000, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-keystone6':
+ domain => 'ip6',
+ description => 'Allow keystone access',
+ rule => '&SERVICE_RANGE(tcp, 5000, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-keystone-admin':
+ description => 'Allow keystone access',
+ rule => '&SERVICE_RANGE(tcp, 35357, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-keystone-admin6':
+ domain => 'ip6',
+ description => 'Allow keystone access',
+ rule => '&SERVICE_RANGE(tcp, 35357, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-glance-api':
+ description => 'Allow glance access',
+ rule => '&SERVICE_RANGE(tcp, 9292, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-glance-api6':
+ domain => 'ip6',
+ description => 'Allow glance access',
+ rule => '&SERVICE_RANGE(tcp, 9292, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-glance-registry':
+ description => 'Allow glance access',
+ rule => '&SERVICE_RANGE(tcp, 9191, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-glance-registry6':
+ domain => 'ip6',
+ description => 'Allow glance access',
+ rule => '&SERVICE_RANGE(tcp, 9191, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-neutron':
+ description => 'Allow glance access',
+ rule => '&SERVICE_RANGE(tcp, 9696, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-neutron6':
+ domain => 'ip6',
+ description => 'Allow glance access',
+ rule => '&SERVICE_RANGE(tcp, 9696, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-nova-ec2':
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8773, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-nova-ec26':
+ domain => 'ip6',
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8773, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-nova2':
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8774, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-nova26':
+ domain => 'ip6',
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8774, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-nova-metadata':
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8775, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-nova-metadata6':
+ domain => 'ip6',
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8775, ( 2001:41c8:1000::/48 ))'
+ }
+ @ferm::rule { 'dsa-cinder':
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8776, ( 5.153.231.240/27 172.29.123.0/24 ))'
+ }
+ @ferm::rule { 'dsa-cinder6':
+ domain => 'ip6',
+ description => 'Allow nova access',
+ rule => '&SERVICE_RANGE(tcp, 8776, ( 2001:41c8:1000::/48 ))'
+ }
+ }
+ }
+ case $::hostname {
+ czerny,clementi: {
+ @ferm::rule { 'dsa-upsmon':
+ description => 'Allow upsmon access',
+ rule => '&SERVICE_RANGE(tcp, 3493, ( 82.195.75.64/26 192.168.43.0/24 ))'
+ }
+ }
+ bendel: {
+ @ferm::rule { 'listmaster-ontp-in':
+ description => 'ONTP has a broken mail setup',
+ table => 'filter',
+ chain => 'INPUT',
+ rule => 'source 188.165.23.89/32 proto tcp dport 25 jump DROP',
+ }
+ @ferm::rule { 'listmaster-ontp-out':
+ description => 'ONTP has a broken mail setup',
+ table => 'filter',
+ chain => 'OUTPUT',
+ rule => 'destination 78.8.208.246/32 proto tcp dport 25 jump DROP',
+ }
+ }
+ lotti,lully,loghost-grnet-01: {
+ @ferm::rule { 'dsa-syslog':
+ description => 'Allow syslog access',
+ rule => '&SERVICE_RANGE(tcp, 5140, $HOST_DEBIAN_V4)'
+ }
+ @ferm::rule { 'dsa-syslog-v6':
+ domain => 'ip6',
+ description => 'Allow syslog access',
+ rule => '&SERVICE_RANGE(tcp, 5140, $HOST_DEBIAN_V6)'
+ }
+ }
+ kaufmann: {
+ @ferm::rule { 'dsa-hkp':
+ domain => '(ip ip6)',
+ description => 'Allow hkp access',
+ rule => '&SERVICE(tcp, 11371)'
+ }
+ }
+ gombert: {
+ @ferm::rule { 'dsa-infinoted':
+ domain => '(ip ip6)',
+ description => 'Allow infinoted access',
+ rule => '&SERVICE(tcp, 6523)'
+ }
+ }
+ draghi: {
+ @ferm::rule { 'dsa-finger':
+ domain => '(ip ip6)',
+ description => 'Allow finger access',
+ rule => '&SERVICE(tcp, 79)'
+ }
+ @ferm::rule { 'dsa-ldap':
+ domain => '(ip ip6)',
+ description => 'Allow ldap access',
+ rule => '&SERVICE(tcp, 389)'
+ }
+ @ferm::rule { 'dsa-ldaps':
+ domain => '(ip ip6)',
+ description => 'Allow ldaps access',
+ rule => '&SERVICE(tcp, 636)'
+ }
+ }
+ sonntag: {
+ @ferm::rule { 'dsa-bugs-search':
+ description => 'port 1978 for bugs-search from bug web frontends',
+ rule => '&SERVICE_RANGE(tcp, 1978, ( 140.211.166.26 206.12.19.140 ))'
+ }
+ }
+ default: {}
+ }
+
+ # redirect snapshot into varnish
+ case $::hostname {
+ sibelius: {
+ @ferm::rule { 'dsa-snapshot-varnish':
+ rule => '&SERVICE(tcp, 6081)',
+ }
+ @ferm::rule { 'dsa-nat-snapshot-varnish':
+ table => 'nat',
+ chain => 'PREROUTING',
+ rule => 'proto tcp daddr 193.62.202.30 dport 80 REDIRECT to-ports 6081',
+ }
+ }
+ lw07: {
+ @ferm::rule { 'dsa-snapshot-varnish':
+ rule => '&SERVICE(tcp, 6081)',
+ }
+ @ferm::rule { 'dsa-nat-snapshot-varnish':
+ table => 'nat',
+ chain => 'PREROUTING',
+ rule => 'proto tcp daddr 185.17.185.185 dport 80 REDIRECT to-ports 6081',
+ }
+ }
+ default: {}
+ }
+ case $::hostname {
+ bm-bl1,bm-bl2: {
+ @ferm::rule { 'dsa-vrrp':
+ rule => 'proto vrrp daddr 224.0.0.18 jump ACCEPT',
+ }
+ @ferm::rule { 'dsa-conntrackd':
+ rule => 'interface vlan2 daddr 225.0.0.50 jump ACCEPT',
+ }
+ @ferm::rule { 'dsa-bind-notrack-in':
+ domain => 'ip',
+ description => 'NOTRACK for nameserver traffic',
+ table => 'raw',
+ chain => 'PREROUTING',
+ rule => 'proto (tcp udp) daddr 5.153.231.24 dport 53 jump NOTRACK'
+ }
+
+ @ferm::rule { 'dsa-bind-notrack-out':
+ domain => 'ip',
+ description => 'NOTRACK for nameserver traffic',
+ table => 'raw',
+ chain => 'OUTPUT',
+ rule => 'proto (tcp udp) saddr 5.153.231.24 sport 53 jump NOTRACK'
+ }