summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/daemon/hidden_service.pp20
-rw-r--r--templates/torrc.hidden_service.erb6
2 files changed, 20 insertions, 6 deletions
diff --git a/manifests/daemon/hidden_service.pp b/manifests/daemon/hidden_service.pp
index c827211..b77b790 100644
--- a/manifests/daemon/hidden_service.pp
+++ b/manifests/daemon/hidden_service.pp
@@ -1,17 +1,25 @@
# hidden services definition
define tor::daemon::hidden_service(
- $ports = [],
- $data_dir = $tor::daemon::data_dir,
- $ensure = present ) {
+ $ports = [],
+ $single_hop = false,
+ $data_dir = $tor::daemon::data_dir,
+ $ensure = present ) {
+
+
+ if $single_hop {
+ file { "${$data_dir}/${$name}/onion_service_non_anonymous":
+ ensure => 'present',
+ }
+ }
concat::fragment { "05.hidden_service.${name}":
ensure => $ensure,
content => template('tor/torrc.hidden_service.erb'),
- owner => 'debian-tor',
- group => 'debian-tor',
- mode => '0644',
order => 05,
target => $tor::daemon::config_file,
}
+
+
+
}
diff --git a/templates/torrc.hidden_service.erb b/templates/torrc.hidden_service.erb
index 4dec0b2..5b6afe1 100644
--- a/templates/torrc.hidden_service.erb
+++ b/templates/torrc.hidden_service.erb
@@ -1,3 +1,9 @@
+<% if @single_hop != false %>
+HiddenServiceSingleHopMode 1
+HiddenServiceNonAnonymousMode 1
+SOCKSPort 0
+<% end %>
+
# hidden service <%= @name %>
HiddenServiceDir <%= @data_dir %>/<%= @name %>
<% @ports.each do |port| -%>