From 98227ad8da45544ef97cb8647c377f399672a4a0 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 12:04:20 -0400 Subject: update indentation to be standard Change-Id: Ic0ac3a7e6c9ce0e5f95bab023dbbf890c31d9e1c --- .../site_openvpn/manifests/server_config.pp | 144 ++++++++++----------- 1 file changed, 72 insertions(+), 72 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_openvpn/manifests/server_config.pp b/puppet/modules/site_openvpn/manifests/server_config.pp index b1f4997c..03cf9394 100644 --- a/puppet/modules/site_openvpn/manifests/server_config.pp +++ b/puppet/modules/site_openvpn/manifests/server_config.pp @@ -60,12 +60,12 @@ define site_openvpn::server_config( concat { "/etc/openvpn/${openvpn_configname}.conf": - owner => root, - group => root, - mode => 644, - warn => true, - require => File['/etc/openvpn'], - notify => Exec['restart_openvpn']; + owner => root, + group => root, + mode => 644, + warn => true, + require => File['/etc/openvpn'], + notify => Exec['restart_openvpn']; } if $tls_remote != undef { @@ -79,99 +79,99 @@ define site_openvpn::server_config( openvpn::option { "ca ${openvpn_configname}": - key => 'ca', - value => "${x509::variables::local_CAs}/${site_config::params::ca_bundle_name}.crt", - server => $openvpn_configname; + key => 'ca', + value => "${x509::variables::local_CAs}/${site_config::params::ca_bundle_name}.crt", + server => $openvpn_configname; "cert ${openvpn_configname}": - key => 'cert', - value => "${x509::variables::certs}/${site_config::params::cert_name}.crt", + key => 'cert', + value => "${x509::variables::certs}/${site_config::params::cert_name}.crt", server => $openvpn_configname; "key ${openvpn_configname}": - key => 'key', - value => "${x509::variables::keys}/${site_config::params::cert_name}.key", - server => $openvpn_configname; + key => 'key', + value => "${x509::variables::keys}/${site_config::params::cert_name}.key", + server => $openvpn_configname; "dh ${openvpn_configname}": - key => 'dh', - value => '/etc/openvpn/keys/dh.pem', - server => $openvpn_configname; + key => 'dh', + value => '/etc/openvpn/keys/dh.pem', + server => $openvpn_configname; "tls-cipher ${openvpn_configname}": - key => 'tls-cipher', - value => $config['tls-cipher'], - server => $openvpn_configname; + key => 'tls-cipher', + value => $config['tls-cipher'], + server => $openvpn_configname; "auth ${openvpn_configname}": - key => 'auth', - value => $config['auth'], - server => $openvpn_configname; + key => 'auth', + value => $config['auth'], + server => $openvpn_configname; "cipher ${openvpn_configname}": - key => 'cipher', - value => $config['cipher'], - server => $openvpn_configname; + key => 'cipher', + value => $config['cipher'], + server => $openvpn_configname; "dev ${openvpn_configname}": - key => 'dev', - value => 'tun', - server => $openvpn_configname; + key => 'dev', + value => 'tun', + server => $openvpn_configname; "duplicate-cn ${openvpn_configname}": - key => 'duplicate-cn', - server => $openvpn_configname; + key => 'duplicate-cn', + server => $openvpn_configname; "keepalive ${openvpn_configname}": - key => 'keepalive', - value => $config['keepalive'], - server => $openvpn_configname; + key => 'keepalive', + value => $config['keepalive'], + server => $openvpn_configname; "local ${openvpn_configname}": - key => 'local', - value => $local, - server => $openvpn_configname; + key => 'local', + value => $local, + server => $openvpn_configname; "mute ${openvpn_configname}": - key => 'mute', - value => '5', - server => $openvpn_configname; + key => 'mute', + value => '5', + server => $openvpn_configname; "mute-replay-warnings ${openvpn_configname}": - key => 'mute-replay-warnings', - server => $openvpn_configname; + key => 'mute-replay-warnings', + server => $openvpn_configname; "management ${openvpn_configname}": - key => 'management', - value => $management, - server => $openvpn_configname; + key => 'management', + value => $management, + server => $openvpn_configname; "proto ${openvpn_configname}": - key => 'proto', - value => $proto, - server => $openvpn_configname; + key => 'proto', + value => $proto, + server => $openvpn_configname; "push1 ${openvpn_configname}": - key => 'push', - value => $push, - server => $openvpn_configname; + key => 'push', + value => $push, + server => $openvpn_configname; "push2 ${openvpn_configname}": - key => 'push', - value => '"redirect-gateway def1"', - server => $openvpn_configname; + key => 'push', + value => '"redirect-gateway def1"', + server => $openvpn_configname; "script-security ${openvpn_configname}": - key => 'script-security', - value => '2', - server => $openvpn_configname; + key => 'script-security', + value => '2', + server => $openvpn_configname; "server ${openvpn_configname}": - key => 'server', - value => $server, - server => $openvpn_configname; + key => 'server', + value => $server, + server => $openvpn_configname; "status ${openvpn_configname}": - key => 'status', - value => '/var/run/openvpn-status 10', - server => $openvpn_configname; + key => 'status', + value => '/var/run/openvpn-status 10', + server => $openvpn_configname; "status-version ${openvpn_configname}": - key => 'status-version', - value => '3', - server => $openvpn_configname; + key => 'status-version', + value => '3', + server => $openvpn_configname; "topology ${openvpn_configname}": - key => 'topology', - value => 'subnet', - server => $openvpn_configname; + key => 'topology', + value => 'subnet', + server => $openvpn_configname; # no need for server-up.sh right now #"up $openvpn_configname": # key => 'up', # value => '/etc/openvpn/server-up.sh', # server => $openvpn_configname; "verb ${openvpn_configname}": - key => 'verb', - value => '3', - server => $openvpn_configname; + key => 'verb', + value => '3', + server => $openvpn_configname; } } -- cgit v1.2.3 From b5245481bbc1fddfd1b8e6d97e8a07a20d35de6b Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 12:05:11 -0400 Subject: make sure concat fragments are put together before the openvpn service is run, otherwise the openvpn service is restarted before config files are deployed (#4154) Change-Id: Ide38615714c1978bb90237986baea530c54153c3 --- puppet/modules/site_openvpn/manifests/server_config.pp | 1 + 1 file changed, 1 insertion(+) (limited to 'puppet') diff --git a/puppet/modules/site_openvpn/manifests/server_config.pp b/puppet/modules/site_openvpn/manifests/server_config.pp index 03cf9394..3e0ee1a6 100644 --- a/puppet/modules/site_openvpn/manifests/server_config.pp +++ b/puppet/modules/site_openvpn/manifests/server_config.pp @@ -65,6 +65,7 @@ define site_openvpn::server_config( mode => 644, warn => true, require => File['/etc/openvpn'], + before => Service['openvpn'], notify => Exec['restart_openvpn']; } -- cgit v1.2.3 From 18ae83d105bfa5c173d00d2fb17b0b72d42205bc Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 13:10:25 -0400 Subject: change stunnel::service to 'subscribe' instead of 'require' the X509 cert/key. This has the same effect of 'require' because both make sure that the mentioned resource(s) will be applied before this resource, but subscribe will cause this resource to refresh anytime the subscribed resources change (#4342) Change-Id: I9470bb36f135b821b67a1da70c472d7687b08718 --- puppet/modules/site_stunnel/manifests/clients.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_stunnel/manifests/clients.pp b/puppet/modules/site_stunnel/manifests/clients.pp index 837665a3..b75c9ac3 100644 --- a/puppet/modules/site_stunnel/manifests/clients.pp +++ b/puppet/modules/site_stunnel/manifests/clients.pp @@ -22,7 +22,7 @@ define site_stunnel::clients ( pid => "/var/run/stunnel4/${pid}.pid", rndfile => $rndfile, debuglevel => $debuglevel, - require => [ + subscribe => [ Class['Site_config::X509::Key'], Class['Site_config::X509::Cert'], Class['Site_config::X509::Ca'] ]; -- cgit v1.2.3 From 0a9bcf49adab7120849806e4c6408d3f2887e09a Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 13:58:40 -0400 Subject: tor: provide a default 'nickname' (something like "rabbitLKJYW23695JGLKJ" where rabbit is the node name). Stop shipping a static 'family' and instead provide a comma separated list of node tor nicknames. (#5220) Change-Id: I479f460ab230ad440f72c78dc6362983387ce12a --- puppet/modules/site_tor/manifests/init.pp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_tor/manifests/init.pp b/puppet/modules/site_tor/manifests/init.pp index 02368a0e..e62cb12d 100644 --- a/puppet/modules/site_tor/manifests/init.pp +++ b/puppet/modules/site_tor/manifests/init.pp @@ -7,6 +7,7 @@ class site_tor { $tor_type = $tor['type'] $nickname = $tor['nickname'] $contact_emails = join($tor['contacts'],', ') + $family = $tor['family'] $address = hiera('ip_address') @@ -16,7 +17,7 @@ class site_tor { address => $address, contact_info => obfuscate_email($contact_emails), bandwidth_rate => $bandwidth_rate, - my_family => '$2A431444756B0E7228A7918C85A8DACFF7E3B050', + my_family => $family } if ( $tor_type == 'exit'){ -- cgit v1.2.3 From 1a26bc28e2db27fdd73db7e05f3efc4f6019d970 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 14:37:50 -0400 Subject: create a /var/run/tapicero directory, owned by tapicero:tacpiero to hold the pid file (#5577) Change-Id: I2144e3d8c0ee18254fe3822098c87b2a8c57c2ce --- puppet/modules/tapicero/manifests/init.pp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/tapicero/manifests/init.pp b/puppet/modules/tapicero/manifests/init.pp index 743e8a84..cac74597 100644 --- a/puppet/modules/tapicero/manifests/init.pp +++ b/puppet/modules/tapicero/manifests/init.pp @@ -56,6 +56,13 @@ class tapicero { group => 'tapicero', require => User['tapicero']; + # for pid file + '/var/run/tapicero': + ensure => directory, + owner => 'tapicero', + group => 'tapicero', + require => User['tapicero'] + ## ## TAPICERO CONFIG ## @@ -117,7 +124,7 @@ class tapicero { enable => true, hasstatus => true, hasrestart => true, - require => File['/etc/init.d/tapicero']; + require => [ File['/etc/init.d/tapicero'], File['/var/run/tapicero'] ]; } } -- cgit v1.2.3 From 640c63ef377abe7a4461ab417c27057313613830 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 14:55:46 -0400 Subject: initial firewall: allow port 22 by default. This is the most common port that sshd will be listening to in a default setup. This needs to be allowed so that you can have a different port configured in the hiera and not get locked out during deployment (#5119) Change-Id: Ie101eaaf440415ddb276621c369da7f67f409c2b --- puppet/modules/site_config/templates/ipv4firewall_up.rules.erb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'puppet') diff --git a/puppet/modules/site_config/templates/ipv4firewall_up.rules.erb b/puppet/modules/site_config/templates/ipv4firewall_up.rules.erb index 524ae308..928a2b31 100644 --- a/puppet/modules/site_config/templates/ipv4firewall_up.rules.erb +++ b/puppet/modules/site_config/templates/ipv4firewall_up.rules.erb @@ -5,6 +5,7 @@ :OUTPUT DROP [0:0] -A INPUT -i lo -j ACCEPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT +-A INPUT -p tcp -m state --state NEW,ESTABLISHED --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW,ESTABLISHED --dport <%= @ssh_port %> -j ACCEPT -A INPUT -p udp -m udp --sport 53 -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type 8 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT @@ -13,6 +14,7 @@ -A OUTPUT -o lo -j ACCEPT -A OUTPUT -p icmp -m icmp --icmp-type 0 -m state --state RELATED,ESTABLISHED -j ACCEPT -A OUTPUT -p icmp -m icmp --icmp-type 8 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT +-A OUTPUT -p tcp -m state --state NEW,ESTABLISHED --sport 22 -j ACCEPT -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED --sport <%= @ssh_port %> -j ACCEPT -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED --dport 80 -j ACCEPT -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED --dport 443 -j ACCEPT -- cgit v1.2.3 From b9369292cb19f97aafaaaac9f89bf2374487936b Mon Sep 17 00:00:00 2001 From: Azul Date: Fri, 18 Apr 2014 12:59:59 +0200 Subject: bring service_levels into webapp config - #5527 including the default_service_level --- puppet/modules/site_webapp/templates/config.yml.erb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'puppet') diff --git a/puppet/modules/site_webapp/templates/config.yml.erb b/puppet/modules/site_webapp/templates/config.yml.erb index 98f8564e..aa8ac6ab 100644 --- a/puppet/modules/site_webapp/templates/config.yml.erb +++ b/puppet/modules/site_webapp/templates/config.yml.erb @@ -15,3 +15,5 @@ production: limited_cert_prefix: "<%= cert_options['limited_prefix'] %>" unlimited_cert_prefix: "<%= cert_options['unlimited_prefix'] %>" minimum_client_version: "<%= @webapp['client_version']['min'] %>" + default_service_level: "<%= @webapp['default_service_level'] %>" + service_levels: "<%= @webapp['service_levels'].inspect %>" -- cgit v1.2.3 From de4b44f723f71aac8cab1b7480c79de0b6c24bcf Mon Sep 17 00:00:00 2001 From: Azul Date: Tue, 29 Apr 2014 14:27:27 +0200 Subject: require json so we can use it to dumpt the service levels --- puppet/modules/site_webapp/templates/config.yml.erb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_webapp/templates/config.yml.erb b/puppet/modules/site_webapp/templates/config.yml.erb index aa8ac6ab..6461c5e8 100644 --- a/puppet/modules/site_webapp/templates/config.yml.erb +++ b/puppet/modules/site_webapp/templates/config.yml.erb @@ -1,3 +1,4 @@ +<%- require 'json' -%> <%- cert_options = @webapp['client_certificates'] -%> production: admins: <%= @webapp['admins'].inspect %> @@ -16,4 +17,4 @@ production: unlimited_cert_prefix: "<%= cert_options['unlimited_prefix'] %>" minimum_client_version: "<%= @webapp['client_version']['min'] %>" default_service_level: "<%= @webapp['default_service_level'] %>" - service_levels: "<%= @webapp['service_levels'].inspect %>" + service_levels: <%= @webapp['service_levels'].to_json %> -- cgit v1.2.3 From 9574bf2b8a87d32f799c80bf37818d62be6b7c15 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 24 Apr 2014 15:08:32 -0400 Subject: nagios: make the check_procs tests for leap_mx and soledad be much more specific, to avoid catching unrelated processes (#5327) Change-Id: I63ffcd644a85137708712daac671b92898c70b7e --- puppet/modules/site_check_mk/manifests/agent/mx.pp | 2 +- puppet/modules/site_check_mk/manifests/agent/soledad.pp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_check_mk/manifests/agent/mx.pp b/puppet/modules/site_check_mk/manifests/agent/mx.pp index 35a4e9a5..1e370125 100644 --- a/puppet/modules/site_check_mk/manifests/agent/mx.pp +++ b/puppet/modules/site_check_mk/manifests/agent/mx.pp @@ -8,7 +8,7 @@ class site_check_mk::agent::mx { # local nagios plugin checks via mrpe file_line { 'Leap_MX_Procs': - line => 'Leap_MX_Procs /usr/lib/nagios/plugins/check_procs -w 1:1 -c 1:1 -a leap_mx', + line => 'Leap_MX_Procs /usr/lib/nagios/plugins/check_procs -w 1:1 -c 1:1 -a \'/usr/bin/python /usr/bin/twistd --pidfile=/var/run/leap_mx.pid --rundir=/var/lib/leap_mx/ --python=/usr/share/app/leap_mx.tac --logfile=/var/log/leap_mx.log\'', path => '/etc/check_mk/mrpe.cfg'; } diff --git a/puppet/modules/site_check_mk/manifests/agent/soledad.pp b/puppet/modules/site_check_mk/manifests/agent/soledad.pp index cbae81fe..512d1a3d 100644 --- a/puppet/modules/site_check_mk/manifests/agent/soledad.pp +++ b/puppet/modules/site_check_mk/manifests/agent/soledad.pp @@ -7,7 +7,7 @@ class site_check_mk::agent::soledad { # local nagios plugin checks via mrpe file_line { 'Soledad_Procs': - line => 'Soledad_Procs /usr/lib/nagios/plugins/check_procs -w 1:1 -c 1:1 -a soledad', + line => 'Soledad_Procs /usr/lib/nagios/plugins/check_procs -w 1:1 -c 1:1 -a \'/usr/bin/python /usr/bin/twistd --pidfile=/var/run/soledad.pid --logfile=/var/log/soledad.log web --wsgi=leap.soledad.server.application\'', path => '/etc/check_mk/mrpe.cfg'; } -- cgit v1.2.3 From e3e44973d6290a0228375135adf88d3271fc4242 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 29 Apr 2014 14:39:15 -0400 Subject: block DNS traffic at the OpenVPN gateway (#4164) There are many different edge cases where mac and windows clients (and maybe android too) will revert to using a different DNS server than the one specified by openvpn. This is bad news for security reasons. The client is being designed so it doesn't leak DNS, however we don't want to put all of our eggs in one basket, so this will block outgoing port 53 (udp and tcp) on the gateway's firewall from any of the EIP interfaces (thus not blocking DNS access on the gateway itself). Change-Id: I84dcfec7fb591cf7e6b356b66b9721feda188177 --- puppet/modules/site_shorewall/manifests/eip.pp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'puppet') diff --git a/puppet/modules/site_shorewall/manifests/eip.pp b/puppet/modules/site_shorewall/manifests/eip.pp index 7109b770..13f831b6 100644 --- a/puppet/modules/site_shorewall/manifests/eip.pp +++ b/puppet/modules/site_shorewall/manifests/eip.pp @@ -68,6 +68,22 @@ class site_shorewall::eip { destination => '$FW', action => 'leap_eip(ACCEPT)', order => 200; + + 'block_eip_dns_udp': + action => 'REJECT', + source => 'eip', + destination => 'net', + protocol => 'udp', + destinationport => 'domain', + order => 300; + + 'block_eip_dns_tcp': + action => 'REJECT', + source => 'eip', + destination => 'net', + protocol => 'tcp', + destinationport => 'domain', + order => 301; } # create dnat rule for each port -- cgit v1.2.3 From da775cb3379384c675887076a608566a5053efad Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 29 Apr 2014 17:49:32 -0400 Subject: fix missing semicolon, causing syntax error Change-Id: Ic7d0f8cc8c0340fdc24cf5ffa4c7018ebac76c7f --- puppet/modules/tapicero/manifests/init.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/tapicero/manifests/init.pp b/puppet/modules/tapicero/manifests/init.pp index cac74597..af1a96ac 100644 --- a/puppet/modules/tapicero/manifests/init.pp +++ b/puppet/modules/tapicero/manifests/init.pp @@ -61,7 +61,7 @@ class tapicero { ensure => directory, owner => 'tapicero', group => 'tapicero', - require => User['tapicero'] + require => User['tapicero']; ## ## TAPICERO CONFIG -- cgit v1.2.3 From c334061df623e3806c544598195eb93a805a91ce Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Fri, 2 May 2014 16:24:00 -0400 Subject: fix incorrect shorewall parameter name 'protocol', should be 'proto' Change-Id: I9c6c798b174228d44d01b55f2a4aa19458e2da8d --- puppet/modules/site_shorewall/manifests/eip.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_shorewall/manifests/eip.pp b/puppet/modules/site_shorewall/manifests/eip.pp index 13f831b6..8fbba658 100644 --- a/puppet/modules/site_shorewall/manifests/eip.pp +++ b/puppet/modules/site_shorewall/manifests/eip.pp @@ -73,7 +73,7 @@ class site_shorewall::eip { action => 'REJECT', source => 'eip', destination => 'net', - protocol => 'udp', + proto => 'udp', destinationport => 'domain', order => 300; @@ -81,7 +81,7 @@ class site_shorewall::eip { action => 'REJECT', source => 'eip', destination => 'net', - protocol => 'tcp', + proto => 'tcp', destinationport => 'domain', order => 301; } -- cgit v1.2.3 From f63f302980d638633f0bdb1146f9d8a75e9eaed2 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 6 May 2014 16:32:28 -0400 Subject: install openvpn from wheezy-backports, this will bring in openvpn 2.3, which will provide us with proper ipv6 support Change-Id: I0188732aae6cbc64ab57e95bf805d6158fa17e07 --- puppet/modules/site_apt/manifests/preferences/openvpn.pp | 9 +++++++++ puppet/modules/site_openvpn/manifests/init.pp | 7 ++++++- 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 puppet/modules/site_apt/manifests/preferences/openvpn.pp (limited to 'puppet') diff --git a/puppet/modules/site_apt/manifests/preferences/openvpn.pp b/puppet/modules/site_apt/manifests/preferences/openvpn.pp new file mode 100644 index 00000000..c7ddae25 --- /dev/null +++ b/puppet/modules/site_apt/manifests/preferences/openvpn.pp @@ -0,0 +1,9 @@ +class site_apt::preferences::openvpn { + + apt::preferences_snippet { 'openvpn': + package => 'openvpn', + release => "${::lsbdistcodename}-backports", + priority => 999; + } + +} diff --git a/puppet/modules/site_openvpn/manifests/init.pp b/puppet/modules/site_openvpn/manifests/init.pp index 7aec0faa..5f49450d 100644 --- a/puppet/modules/site_openvpn/manifests/init.pp +++ b/puppet/modules/site_openvpn/manifests/init.pp @@ -168,9 +168,14 @@ class site_openvpn { include site_shorewall::eip + # In wheezy, we need the openvpn backport to get the 2.3 version of + # openvpn which has proper ipv6 support + include site_apt::preferences::openvpn + package { 'openvpn': - ensure => installed; + ensure => installed, + require => Class['site_apt::preferences::openvpn']; } service { -- cgit v1.2.3 From 0265eb952691ee91405201836e19384ac2087507 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 6 May 2014 16:33:02 -0400 Subject: set the ipv6 configuration options on the server some important things to note: We are hard-coding the pushing of the ipv6 route '2000::/3' and configuring the server-ipv6 to be 2001:db8:123::/64. This netblock is a reserved ipv6 prefix that is used for documentation purposes only (http://www.apnic.net/info/faq/ipv6-documentation-prefix-faq.html), and the route being pushed redirects all internet-bound traffic. When LEAP fully supports ipv6, these network values should be turned into variables, but for now, to make sure we are blocking any clients that have functional ipv6, this will work. Change-Id: Icb65f3169264e0178a2e98825b266a779feac6b5 --- puppet/modules/site_openvpn/manifests/server_config.pp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'puppet') diff --git a/puppet/modules/site_openvpn/manifests/server_config.pp b/puppet/modules/site_openvpn/manifests/server_config.pp index 3e0ee1a6..cbc5f68e 100644 --- a/puppet/modules/site_openvpn/manifests/server_config.pp +++ b/puppet/modules/site_openvpn/manifests/server_config.pp @@ -111,6 +111,9 @@ define site_openvpn::server_config( key => 'dev', value => 'tun', server => $openvpn_configname; + "tun-ipv6 ${openvpn_configname}": + key => 'tun-ipv6', + server => $openvpn_configname; "duplicate-cn ${openvpn_configname}": key => 'duplicate-cn', server => $openvpn_configname; @@ -145,6 +148,10 @@ define site_openvpn::server_config( key => 'push', value => '"redirect-gateway def1"', server => $openvpn_configname; + "push-ipv6 ${openvpn_configname}": + key => 'push', + value => '"route-ipv6 2000::/3"', + server => $openvpn_configname; "script-security ${openvpn_configname}": key => 'script-security', value => '2', @@ -153,6 +160,10 @@ define site_openvpn::server_config( key => 'server', value => $server, server => $openvpn_configname; + "server-ipv6 ${openvpn_configname}": + key => 'server-ipv6', + value => '2001:db8:123::/64', + server => $openvpn_configname; "status ${openvpn_configname}": key => 'status', value => '/var/run/openvpn-status 10', -- cgit v1.2.3 From 0eff66a4bcf68b51c57493c0a80e0f3813476733 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 6 May 2014 16:37:01 -0400 Subject: Change the initial firewall to subscribe to the rule file to be able to trigger changes, make the default ipv6 firewall subscribe to shorewall6, if it exists, and finally reject all outgoing IPv6 packets. All of this will complete the platform-side of route IPv6 through OpenVPN gateway, and block it. (Feature #4163) Change-Id: Icf6d582063ed01d304658b740a565057ee4e6810 --- puppet/modules/site_config/manifests/initial_firewall.pp | 4 +++- puppet/modules/site_config/templates/ipv6firewall_up.rules.erb | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_config/manifests/initial_firewall.pp b/puppet/modules/site_config/manifests/initial_firewall.pp index 51cceb31..93cfb847 100644 --- a/puppet/modules/site_config/manifests/initial_firewall.pp +++ b/puppet/modules/site_config/manifests/initial_firewall.pp @@ -51,12 +51,14 @@ class site_config::initial_firewall { command => '/sbin/iptables-restore < /etc/network/ipv4firewall_up.rules', logoutput => true, unless => 'test -x /etc/init.d/shorewall && /etc/init.d/shorewall status', + subscribe => File['/etc/network/ipv4firewall_up.rules'], require => File['/etc/network/ipv4firewall_up.rules']; 'default_ipv6_firewall': command => '/sbin/ip6tables-restore < /etc/network/ipv6firewall_up.rules', logoutput => true, - unless => 'test -x /etc/init.d/shorewall && /etc/init.d/shorewall status', + unless => 'test -x /etc/init.d/shorewall6 && /etc/init.d/shorewall6 status', + subscribe => File['/etc/network/ipv6firewall_up.rules'], require => File['/etc/network/ipv6firewall_up.rules']; } } diff --git a/puppet/modules/site_config/templates/ipv6firewall_up.rules.erb b/puppet/modules/site_config/templates/ipv6firewall_up.rules.erb index e7fae52e..e2c92524 100644 --- a/puppet/modules/site_config/templates/ipv6firewall_up.rules.erb +++ b/puppet/modules/site_config/templates/ipv6firewall_up.rules.erb @@ -3,5 +3,6 @@ :INPUT DROP [24:1980] :FORWARD DROP [0:0] :OUTPUT DROP [14:8030] +-A OUTPUT -j REJECT --reject-with icmp6-port-unreachable COMMIT # Completed on Tue Aug 20 12:19:43 2013 -- cgit v1.2.3 From a980840e5752296c772ec079bbfc0ecb2c3d331f Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Wed, 7 May 2014 13:32:00 -0400 Subject: openvpn package resource needs to be ensure => latest to accommodate upgrades Change-Id: I8caad9b4ac15dcce8ab74ad6d22dd6ad9f6efb14 --- puppet/modules/site_openvpn/manifests/init.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_openvpn/manifests/init.pp b/puppet/modules/site_openvpn/manifests/init.pp index 5f49450d..b6331f12 100644 --- a/puppet/modules/site_openvpn/manifests/init.pp +++ b/puppet/modules/site_openvpn/manifests/init.pp @@ -174,7 +174,7 @@ class site_openvpn { package { 'openvpn': - ensure => installed, + ensure => latest, require => Class['site_apt::preferences::openvpn']; } -- cgit v1.2.3 From 3ef044034b51d992d6952a9c6b9d16cba16abc30 Mon Sep 17 00:00:00 2001 From: elijah Date: Tue, 13 May 2014 02:22:05 -0700 Subject: openvpn server config: script-security should be "1", since we don't need "2"; add tcp-nodelay to tcp servers. --- puppet/modules/site_openvpn/manifests/server_config.pp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_openvpn/manifests/server_config.pp b/puppet/modules/site_openvpn/manifests/server_config.pp index cbc5f68e..97cf2842 100644 --- a/puppet/modules/site_openvpn/manifests/server_config.pp +++ b/puppet/modules/site_openvpn/manifests/server_config.pp @@ -78,6 +78,15 @@ define site_openvpn::server_config( } } + # according to openvpn man page: tcp-nodelay is a "generally a good latency optimization". + if $proto == 'tcp' { + openvpn::option { + "tcp-nodelay ${openvpn_configname}": + key => 'tcp-nodelay', + server => $openvpn_configname; + } + } + openvpn::option { "ca ${openvpn_configname}": key => 'ca', @@ -154,7 +163,7 @@ define site_openvpn::server_config( server => $openvpn_configname; "script-security ${openvpn_configname}": key => 'script-security', - value => '2', + value => '1', server => $openvpn_configname; "server ${openvpn_configname}": key => 'server', @@ -176,11 +185,6 @@ define site_openvpn::server_config( key => 'topology', value => 'subnet', server => $openvpn_configname; - # no need for server-up.sh right now - #"up $openvpn_configname": - # key => 'up', - # value => '/etc/openvpn/server-up.sh', - # server => $openvpn_configname; "verb ${openvpn_configname}": key => 'verb', value => '3', -- cgit v1.2.3 From f83d6e635448d5c96be18b4d926cc99ba879bd93 Mon Sep 17 00:00:00 2001 From: Azul Date: Wed, 14 May 2014 10:34:45 +0200 Subject: use hash for provider service levels We want to access service levels by means of the id stored in the user record. With a hash we don't have to loop through all elements to find the one with a given id and still can use arbitrary strings and do not rely on the order of the array. Also it's the format the webapp is expecting right now. --- puppet/modules/site_webapp/templates/config.yml.erb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_webapp/templates/config.yml.erb b/puppet/modules/site_webapp/templates/config.yml.erb index 6461c5e8..aa8ac6ab 100644 --- a/puppet/modules/site_webapp/templates/config.yml.erb +++ b/puppet/modules/site_webapp/templates/config.yml.erb @@ -1,4 +1,3 @@ -<%- require 'json' -%> <%- cert_options = @webapp['client_certificates'] -%> production: admins: <%= @webapp['admins'].inspect %> @@ -17,4 +16,4 @@ production: unlimited_cert_prefix: "<%= cert_options['unlimited_prefix'] %>" minimum_client_version: "<%= @webapp['client_version']['min'] %>" default_service_level: "<%= @webapp['default_service_level'] %>" - service_levels: <%= @webapp['service_levels'].to_json %> + service_levels: "<%= @webapp['service_levels'].inspect %>" -- cgit v1.2.3 From 439b7c49d3de20f33ce0a61b42fedde3fc65f2eb Mon Sep 17 00:00:00 2001 From: Azul Date: Wed, 14 May 2014 10:49:22 +0200 Subject: revert accidental change to webapp config template --- puppet/modules/site_webapp/templates/config.yml.erb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_webapp/templates/config.yml.erb b/puppet/modules/site_webapp/templates/config.yml.erb index aa8ac6ab..6461c5e8 100644 --- a/puppet/modules/site_webapp/templates/config.yml.erb +++ b/puppet/modules/site_webapp/templates/config.yml.erb @@ -1,3 +1,4 @@ +<%- require 'json' -%> <%- cert_options = @webapp['client_certificates'] -%> production: admins: <%= @webapp['admins'].inspect %> @@ -16,4 +17,4 @@ production: unlimited_cert_prefix: "<%= cert_options['unlimited_prefix'] %>" minimum_client_version: "<%= @webapp['client_version']['min'] %>" default_service_level: "<%= @webapp['default_service_level'] %>" - service_levels: "<%= @webapp['service_levels'].inspect %>" + service_levels: <%= @webapp['service_levels'].to_json %> -- cgit v1.2.3 From 6c6f7c5053ea83a67b4d4308aeb2fc339c7325b2 Mon Sep 17 00:00:00 2001 From: kwadronaut Date: Mon, 12 May 2014 18:56:25 +0200 Subject: change rsyslog pin from leaps debian repo to backports (fixes #5533) --- puppet/modules/site_config/manifests/syslog.pp | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_config/manifests/syslog.pp b/puppet/modules/site_config/manifests/syslog.pp index d3abeca1..8eac4242 100644 --- a/puppet/modules/site_config/manifests/syslog.pp +++ b/puppet/modules/site_config/manifests/syslog.pp @@ -1,16 +1,7 @@ class site_config::syslog { - # we need to pull in rsyslog from the leap repository until it is availbale in - # wheezy-backports - apt::preferences_snippet { 'fixed_rsyslog_anon_package': - package => 'rsyslog*', - priority => '999', - pin => 'release o=leap.se', - before => Class['rsyslog::install'] - } - apt::preferences_snippet { 'rsyslog_anon_depends': - package => 'libestr0 librelp0', + package => 'libestr0 librelp0 rsyslog*', priority => '999', pin => 'release a=wheezy-backports', before => Class['rsyslog::install'] -- cgit v1.2.3 From 6e6b140941eb1c38f3541afbbe18d56a65baacab Mon Sep 17 00:00:00 2001 From: elijah Date: Sat, 17 May 2014 02:53:47 -0700 Subject: static: pin amber version to 0.3.0 --- puppet/modules/site_static/manifests/init.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'puppet') diff --git a/puppet/modules/site_static/manifests/init.pp b/puppet/modules/site_static/manifests/init.pp index 91a4a7a9..4f6d895f 100644 --- a/puppet/modules/site_static/manifests/init.pp +++ b/puppet/modules/site_static/manifests/init.pp @@ -6,7 +6,7 @@ class site_static { if (member($formats, 'amber')) { include site_config::ruby::dev - rubygems::gem{'amber': } + rubygems::gem{'amber-0.3.0': } } create_resources(site_static::domain, $domains) -- cgit v1.2.3 From ba13b08cd06010dd8cd172d0e3b5b296f9981edf Mon Sep 17 00:00:00 2001 From: Christoph Date: Tue, 20 May 2014 11:42:26 +0200 Subject: fix resolv.conf on virtualbox virtualbox sends the domain with the dhcp-answer. If the wrong domain ends up in /etc/resolv.conf bigcouch fails. --- puppet/modules/site_config/manifests/default.pp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'puppet') diff --git a/puppet/modules/site_config/manifests/default.pp b/puppet/modules/site_config/manifests/default.pp index 7e421a21..c7352857 100644 --- a/puppet/modules/site_config/manifests/default.pp +++ b/puppet/modules/site_config/manifests/default.pp @@ -27,6 +27,9 @@ class site_config::default { if $::ec2_instance_id { include site_config::dhclient } + if $::virtual == 'virtualbox' { + include site_config::dhclient + } # configure /etc/resolv.conf include site_config::resolvconf -- cgit v1.2.3 From b503e655271d755baa4ac51861c25ed5a7872b14 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 22 May 2014 12:14:28 -0400 Subject: Move rsyslog preferences snippet to site_apt::preferences::rsyslog, to group it with the other preferences snippets Change-Id: I83928c6b82cd6218a80c95475729cb57f146ff85 --- puppet/modules/site_apt/manifests/preferences/rsyslog.pp | 9 +++++++++ puppet/modules/site_config/manifests/syslog.pp | 7 +------ 2 files changed, 10 insertions(+), 6 deletions(-) create mode 100644 puppet/modules/site_apt/manifests/preferences/rsyslog.pp (limited to 'puppet') diff --git a/puppet/modules/site_apt/manifests/preferences/rsyslog.pp b/puppet/modules/site_apt/manifests/preferences/rsyslog.pp new file mode 100644 index 00000000..132a6e24 --- /dev/null +++ b/puppet/modules/site_apt/manifests/preferences/rsyslog.pp @@ -0,0 +1,9 @@ +class site_apt::preferences::rsyslog { + + apt::preferences_snippet { 'rsyslog_anon_depends': + package => 'libestr0 librelp0 rsyslog*', + priority => '999', + pin => 'release a=wheezy-backports', + before => Class['rsyslog::install'] + } +} diff --git a/puppet/modules/site_config/manifests/syslog.pp b/puppet/modules/site_config/manifests/syslog.pp index 8eac4242..26c65f02 100644 --- a/puppet/modules/site_config/manifests/syslog.pp +++ b/puppet/modules/site_config/manifests/syslog.pp @@ -1,11 +1,6 @@ class site_config::syslog { - apt::preferences_snippet { 'rsyslog_anon_depends': - package => 'libestr0 librelp0 rsyslog*', - priority => '999', - pin => 'release a=wheezy-backports', - before => Class['rsyslog::install'] - } + include site_apt::preferences::rsyslog class { 'rsyslog::client': log_remote => false, -- cgit v1.2.3 From 5c973c39473c29fe3231a46b58c485c899fb3022 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 22 May 2014 12:19:04 -0400 Subject: Install wheezy-backports version of unbound, this is necessary to solve #2328 Change-Id: Ie28de8d3f7a8c8cf52ce30365379a476d48dc88b --- puppet/modules/site_apt/manifests/preferences/unbound.pp | 10 ++++++++++ puppet/modules/site_config/manifests/caching_resolver.pp | 2 ++ 2 files changed, 12 insertions(+) create mode 100644 puppet/modules/site_apt/manifests/preferences/unbound.pp (limited to 'puppet') diff --git a/puppet/modules/site_apt/manifests/preferences/unbound.pp b/puppet/modules/site_apt/manifests/preferences/unbound.pp new file mode 100644 index 00000000..6232fa10 --- /dev/null +++ b/puppet/modules/site_apt/manifests/preferences/unbound.pp @@ -0,0 +1,10 @@ +class site_apt::preferences::unbound { + + apt::preferences_snippet { 'unbound': + package => 'libunbound unbound*', + release => "${::lsbdistcodename}-backports", + priority => 999, + before => Class['unbound::package']; + } + +} diff --git a/puppet/modules/site_config/manifests/caching_resolver.pp b/puppet/modules/site_config/manifests/caching_resolver.pp index 3d7b9206..590551b0 100644 --- a/puppet/modules/site_config/manifests/caching_resolver.pp +++ b/puppet/modules/site_config/manifests/caching_resolver.pp @@ -10,6 +10,8 @@ class site_config::caching_resolver { # the newer unbound, then we will add 'include: /etc/unbound.d/*' to the # configuration file + include site_apt::preferences::unbound + file { '/etc/unbound/conf.d': ensure => directory, -- cgit v1.2.3 From 4c4f8fd55a3d4a9e08ebaf8881b04ada931db007 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 22 May 2014 12:20:42 -0400 Subject: lint cleanup of site_config::caching_resolver Change-Id: I3f6a4db26e064a520a08822cf23fc3288b31af62 --- puppet/modules/site_apt/manifests/preferences/unbound.pp | 2 +- puppet/modules/site_config/manifests/caching_resolver.pp | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_apt/manifests/preferences/unbound.pp b/puppet/modules/site_apt/manifests/preferences/unbound.pp index 6232fa10..6da964f9 100644 --- a/puppet/modules/site_apt/manifests/preferences/unbound.pp +++ b/puppet/modules/site_apt/manifests/preferences/unbound.pp @@ -1,7 +1,7 @@ class site_apt::preferences::unbound { apt::preferences_snippet { 'unbound': - package => 'libunbound unbound*', + package => 'libunbound* unbound*', release => "${::lsbdistcodename}-backports", priority => 999, before => Class['unbound::package']; diff --git a/puppet/modules/site_config/manifests/caching_resolver.pp b/puppet/modules/site_config/manifests/caching_resolver.pp index 590551b0..b37cf775 100644 --- a/puppet/modules/site_config/manifests/caching_resolver.pp +++ b/puppet/modules/site_config/manifests/caching_resolver.pp @@ -14,14 +14,18 @@ class site_config::caching_resolver { file { '/etc/unbound/conf.d': - ensure => directory, - owner => root, group => root, mode => '0755', + ensure => directory, + owner => root, + group => root, + mode => '0755', require => Package['unbound']; '/etc/unbound/conf.d/placeholder': ensure => present, content => '', - owner => root, group => root, mode => '0644'; + owner => root, + group => root, + mode => '0644'; } class { 'unbound': -- cgit v1.2.3 From a622e49c5df2150049afb6f6ed47177537b7e6da Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 22 May 2014 15:21:06 -0400 Subject: Implement #2328: unbound.conf: content changed on every puppetrun This is done by using the include glob capability that is in the wheezy-backports and newer unbound to include the /etc/unbound/unbound.conf.d/* config files. To do this, we need to transition from our /etc/unbound/conf.d directory structure to use the one that the debian package uses. This allows us to clean up the rather ugly way we were configuring the resolver before. Change-Id: I68347922f265bbd0ddf11d59d8574a612a7bd82c --- .../site_config/manifests/caching_resolver.pp | 20 ++++---- puppet/modules/site_openvpn/manifests/resolver.pp | 58 +++++----------------- 2 files changed, 22 insertions(+), 56 deletions(-) (limited to 'puppet') diff --git a/puppet/modules/site_config/manifests/caching_resolver.pp b/puppet/modules/site_config/manifests/caching_resolver.pp index b37cf775..1b8bd1a2 100644 --- a/puppet/modules/site_config/manifests/caching_resolver.pp +++ b/puppet/modules/site_config/manifests/caching_resolver.pp @@ -13,19 +13,13 @@ class site_config::caching_resolver { include site_apt::preferences::unbound file { + # cleanup from how we used to do it '/etc/unbound/conf.d': - ensure => directory, - owner => root, - group => root, - mode => '0755', - require => Package['unbound']; + force => true, + ensure => absent; '/etc/unbound/conf.d/placeholder': - ensure => present, - content => '', - owner => root, - group => root, - mode => '0644'; + ensure => absent; } class { 'unbound': @@ -45,4 +39,10 @@ class site_config::caching_resolver { } } } + + concat::fragment { 'unbound glob include': + target => $unbound::params::config, + content => "include: /etc/unbound/unbound.conf.d/*.conf\n\n", + order => 10 + } } diff --git a/puppet/modules/site_openvpn/manifests/resolver.pp b/puppet/modules/site_openvpn/manifests/resolver.pp index c74fb509..c1367a33 100644 --- a/puppet/modules/site_openvpn/manifests/resolver.pp +++ b/puppet/modules/site_openvpn/manifests/resolver.pp @@ -3,82 +3,48 @@ class site_openvpn::resolver { if $site_openvpn::openvpn_allow_unlimited { $ensure_unlimited = 'present' file { - '/etc/unbound/conf.d/vpn_unlimited_udp_resolver': + '/etc/unbound/unbound.conf.d/vpn_unlimited_udp_resolver': content => "interface: ${site_openvpn::openvpn_unlimited_udp_network_prefix}.1\naccess-control: ${site_openvpn::openvpn_unlimited_udp_network_prefix}.0/${site_openvpn::openvpn_unlimited_udp_cidr} allow\n", owner => root, group => root, mode => '0644', - require => Service['openvpn'], + require => [ Class['site_config::caching_resolver'], Service['openvpn'] ], notify => Service['unbound']; - '/etc/unbound/conf.d/vpn_unlimited_tcp_resolver': + '/etc/unbound/unbound.conf.d/vpn_unlimited_tcp_resolver': content => "interface: ${site_openvpn::openvpn_unlimited_tcp_network_prefix}.1\naccess-control: ${site_openvpn::openvpn_unlimited_tcp_network_prefix}.0/${site_openvpn::openvpn_unlimited_tcp_cidr} allow\n", owner => root, group => root, mode => '0644', - require => Service['openvpn'], + require => [ Class['site_config::caching_resolver'], Service['openvpn'] ], notify => Service['unbound']; } } else { $ensure_unlimited = 'absent' - tidy { '/etc/unbound/conf.d/vpn_unlimited_udp_resolver': } - tidy { '/etc/unbound/conf.d/vpn_unlimited_tcp_resolver': } + tidy { '/etc/unbound/unbound.conf.d/vpn_unlimited_udp_resolver': } + tidy { '/etc/unbound/unbound.conf.d/vpn_unlimited_tcp_resolver': } } if $site_openvpn::openvpn_allow_limited { $ensure_limited = 'present' file { - '/etc/unbound/conf.d/vpn_limited_udp_resolver': + '/etc/unbound/unbound.conf.d/vpn_limited_udp_resolver': content => "interface: ${site_openvpn::openvpn_limited_udp_network_prefix}.1\naccess-control: ${site_openvpn::openvpn_limited_udp_network_prefix}.0/${site_openvpn::openvpn_limited_udp_cidr} allow\n", owner => root, group => root, mode => '0644', - require => Service['openvpn'], + require => [ Class['site_config::caching_resolver'], Service['openvpn'] ], notify => Service['unbound']; - '/etc/unbound/conf.d/vpn_limited_tcp_resolver': + '/etc/unbound/unbound.conf.d/vpn_limited_tcp_resolver': content => "interface: ${site_openvpn::openvpn_limited_tcp_network_prefix}.1\naccess-control: ${site_openvpn::openvpn_limited_tcp_network_prefix}.0/${site_openvpn::openvpn_limited_tcp_cidr} allow\n", owner => root, group => root, mode => '0644', - require => Service['openvpn'], + require => [ Class['site_config::caching_resolver'], Service['openvpn'] ], notify => Service['unbound']; } } else { $ensure_limited = 'absent' - tidy { '/etc/unbound/conf.d/vpn_limited_udp_resolver': } - tidy { '/etc/unbound/conf.d/vpn_limited_tcp_resolver': } + tidy { '/etc/unbound/unbound.conf.d/vpn_limited_udp_resolver': } + tidy { '/etc/unbound/unbound.conf.d/vpn_limited_tcp_resolver': } } - - # this is an unfortunate way to get around the fact that the version of - # unbound we are working with does not accept a wildcard include directive - # (/etc/unbound/conf.d/*), when it does, these line definitions should - # go away and instead the caching_resolver should be configured to - # include: /etc/unbound/conf.d/* - - file_line { - 'add_unlimited_tcp_resolver': - ensure => $ensure_unlimited, - path => '/etc/unbound/unbound.conf', - line => 'server: include: /etc/unbound/conf.d/vpn_unlimited_tcp_resolver', - notify => Service['unbound'], - require => [ Package['openvpn'], Package['unbound'] ]; - 'add_unlimited_udp_resolver': - ensure => $ensure_unlimited, - path => '/etc/unbound/unbound.conf', - line => 'server: include: /etc/unbound/conf.d/vpn_unlimited_udp_resolver', - notify => Service['unbound'], - require => [ Package['openvpn'], Package['unbound'] ]; - 'add_limited_tcp_resolver': - ensure => $ensure_limited, - path => '/etc/unbound/unbound.conf', - line => 'server: include: /etc/unbound/conf.d/vpn_limited_tcp_resolver', - notify => Service['unbound'], - require => [ Package['openvpn'], Package['unbound'] ]; - 'add_limited_udp_resolver': - ensure => $ensure_limited, - path => '/etc/unbound/unbound.conf', - line => 'server: include: /etc/unbound/conf.d/vpn_limited_udp_resolver', - notify => Service['unbound'], - require => [ Package['openvpn'], Package['unbound'] ]; - } - } -- cgit v1.2.3