Puppet Class: directadmin::modsecurity

Inherits:
directadmin
Defined in:
manifests/modsecurity.pp

Overview

directadmin::mod_security



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'manifests/modsecurity.pp', line 2

class directadmin::modsecurity inherits directadmin {
  if $::directadmin::modsecurity {
    directadmin::custombuild::set { 'modsecurity': value => 'yes' }

    # This enables the modsecurity ruleset from DirectAdmin, it's disabled by us by default
    if $::directadmin::modsecurity_ruleset {
      directadmin::custombuild::set { 'modsecurity_ruleset': value => $::directadmin::modsecurity_ruleset }
    } else {
      directadmin::custombuild::set { 'modsecurity_ruleset': value => 'no' }
    }

    # This enables our custom wordpress ruleset
    if $::directadmin::modsecurity_wordpress {
      file { [ '/usr/local/directadmin/custombuild/custom/modsecurity/', '/usr/local/directadmin/custombuild/custom/modsecurity/conf/' ]:
        ensure  => directory,
        require => File['/usr/local/directadmin/custombuild/custom/'],
        before  => File['/usr/local/directadmin/custombuild/custom/modsecurity/conf/wordpress.conf'],
      }
      file { '/usr/local/directadmin/custombuild/custom/modsecurity/conf/wordpress.conf':
        ensure  => present,
        content => template('directadmin/modsecurity/modsec-wordpress.conf.erb'),
      }
    }
  }
}