Fix apache module name
[mirror/dsa-puppet.git] / modules / roles / manifests / security_tracker.pp
index 1210c7e..5f9493b 100644 (file)
@@ -1,5 +1,44 @@
 class roles::security_tracker {
+       include apache2::ssl
+       include apache2::proxy_http
+       include apache2::expires
+
+       apache2::module { 'cache_disk':
+               ensure => present,
+       }
+
+       # security-tracker abusers
+       #  66.170.99.1  20180706 excessive number of requests
+       #  66.170.99.2  20180706 excessive number of requests
+       @ferm::rule { 'dsa-sectracker-abusers':
+               prio  => "000",
+               rule  => "saddr (66.170.99.1 66.170.99.2) DROP",
+       }
+
+
        ssl::service { 'security-tracker.debian.org':
-               notify => Service['apache2'],
+               notify  => Exec['service apache2 reload'],
+               key => true,
+       }
+
+       apache2::site { 'security-tracker.debian.org':
+               site   => 'security-tracker.debian.org',
+               content => template('roles/apache-security-tracker.debian.org.conf.erb')
+       }
+
+       # traffic shaping http traffic
+       @ferm::rule { 'dsa-security-tracker-shape':
+               table => 'mangle',
+               chain => 'OUTPUT',
+               rule  => "proto tcp sport 443 MARK set-mark 20",
+       }
+
+       file { '/usr/local/sbin/traffic-shape':
+               mode   => '0755',
+               content => template('roles/security-tracker/traffic-shape'),
+               notify => Exec['/usr/local/sbin/traffic-shape'],
+       }
+       exec { '/usr/local/sbin/traffic-shape':
+               refreshonly => true
        }
 }