summaryrefslogtreecommitdiff
path: root/puppet/modules/site_tor/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'puppet/modules/site_tor/manifests')
-rw-r--r--puppet/modules/site_tor/manifests/disable_exit.pp7
-rw-r--r--puppet/modules/site_tor/manifests/init.pp28
2 files changed, 35 insertions, 0 deletions
diff --git a/puppet/modules/site_tor/manifests/disable_exit.pp b/puppet/modules/site_tor/manifests/disable_exit.pp
new file mode 100644
index 00000000..73016646
--- /dev/null
+++ b/puppet/modules/site_tor/manifests/disable_exit.pp
@@ -0,0 +1,7 @@
+class site_tor::disable_exit {
+ tor::daemon::exit_policy {
+ 'no_exit_at_all':
+ reject => '*:*';
+ }
+}
+
diff --git a/puppet/modules/site_tor/manifests/init.pp b/puppet/modules/site_tor/manifests/init.pp
new file mode 100644
index 00000000..ceb6fb13
--- /dev/null
+++ b/puppet/modules/site_tor/manifests/init.pp
@@ -0,0 +1,28 @@
+class site_tor {
+ tag 'leap_service'
+
+ $tor = hiera('tor')
+ $bandwidth_rate = $tor['bandwidth_rate']
+ $tor_type = $tor['type']
+ $nickname = $tor['nickname']
+ $contact_email = $tor['contacts']
+
+ $address = hiera('ip_address')
+
+ class { 'tor::daemon': }
+ tor::daemon::relay { $nickname:
+ port => 9001,
+ address => $address,
+ contact_info => $contact_email,
+ bandwidth_rate => $bandwidth_rate,
+ }
+
+ tor::daemon::directory { $::hostname: port => 80 }
+
+ include site_shorewall::tor
+
+ if ( $tor_type != 'exit' ) {
+ include site_tor::disable_exit
+ }
+
+}