summaryrefslogtreecommitdiff
path: root/manifests/implementations/shorewall/router/tor.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/implementations/shorewall/router/tor.pp')
-rw-r--r--manifests/implementations/shorewall/router/tor.pp85
1 files changed, 85 insertions, 0 deletions
diff --git a/manifests/implementations/shorewall/router/tor.pp b/manifests/implementations/shorewall/router/tor.pp
new file mode 100644
index 0000000..cf5cc58
--- /dev/null
+++ b/manifests/implementations/shorewall/router/tor.pp
@@ -0,0 +1,85 @@
+define firewall::router::tor($destination, $zone = 'loc', $originaldest = $ipaddress) {
+ shorewall::rule { "tor-$name-1":
+ action => 'DNAT',
+ source => 'net',
+ destination => "$zone:$destination:9000",
+ proto => 'tcp',
+ destinationport => "9000",
+ ratelimit => '-',
+ order => "29000",
+ }
+
+ shorewall::rule { "tor-$name-2":
+ action => 'DNAT',
+ source => '$FW',
+ destination => "$zone:$destination:9000",
+ proto => 'tcp',
+ destinationport => "9000",
+ originaldest => "$originaldest",
+ ratelimit => '-',
+ order => "29000",
+ }
+
+ shorewall::rule { "tor-$name-3":
+ action => 'DNAT',
+ source => 'net',
+ destination => "$zone:$destination:9001",
+ proto => 'tcp',
+ destinationport => "9001",
+ ratelimit => '-',
+ order => "29001",
+ }
+
+ shorewall::rule { "tor-$name-4":
+ action => 'DNAT',
+ source => '$FW',
+ destination => "$zone:$destination:9001",
+ proto => 'tcp',
+ destinationport => "9001",
+ originaldest => "$originaldest",
+ ratelimit => '-',
+ order => "29001",
+ }
+
+ shorewall::rule { "tor-$name-5":
+ action => 'DNAT',
+ source => 'net',
+ destination => "$zone:$destination:9100",
+ proto => 'tcp',
+ destinationport => "9100",
+ ratelimit => '-',
+ order => "29100",
+ }
+
+ shorewall::rule { "tor-$name-6":
+ action => 'DNAT',
+ source => '$FW',
+ destination => "$zone:$destination:9100",
+ proto => 'tcp',
+ destinationport => "9100",
+ originaldest => "$originaldest",
+ ratelimit => '-',
+ order => "29100",
+ }
+
+ shorewall::rule { "tor-$name-7":
+ action => 'DNAT',
+ source => 'net',
+ destination => "$zone:$destination:9101",
+ proto => 'tcp',
+ destinationport => "9101",
+ ratelimit => '-',
+ order => "29101",
+ }
+
+ shorewall::rule { "tor-$name-8":
+ action => 'DNAT',
+ source => '$FW',
+ destination => "$zone:$destination:9101",
+ proto => 'tcp',
+ destinationport => "9101",
+ originaldest => "$originaldest",
+ ratelimit => '-',
+ order => "29101",
+ }
+}