diff options
author | Micah <micah@leap.se> | 2016-07-12 16:45:51 -0400 |
---|---|---|
committer | Micah <micah@leap.se> | 2016-07-12 16:45:51 -0400 |
commit | 6209061fd112fed1715676abb7b6ae4697f21d83 (patch) | |
tree | 72dfcb4c96d32b14504761a229a097784b3fc8a0 /puppet/modules/shorewall/manifests/rules/torify/reject_non_tor.pp | |
parent | 6083b23278927189de58c11bbb5bc7d93ccced24 (diff) |
git subrepo clone https://leap.se/git/puppet_shorewall puppet/modules/shorewall
subrepo:
subdir: "puppet/modules/shorewall"
merged: "06e89ed"
upstream:
origin: "https://leap.se/git/puppet_shorewall"
branch: "master"
commit: "06e89ed"
git-subrepo:
version: "0.3.0"
origin: "https://github.com/ingydotnet/git-subrepo"
commit: "1e79595"
Change-Id: Ief531c1b951e9a1573d31bd9718cc5df11706af5
Diffstat (limited to 'puppet/modules/shorewall/manifests/rules/torify/reject_non_tor.pp')
-rw-r--r-- | puppet/modules/shorewall/manifests/rules/torify/reject_non_tor.pp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/puppet/modules/shorewall/manifests/rules/torify/reject_non_tor.pp b/puppet/modules/shorewall/manifests/rules/torify/reject_non_tor.pp new file mode 100644 index 00000000..80240ec7 --- /dev/null +++ b/puppet/modules/shorewall/manifests/rules/torify/reject_non_tor.pp @@ -0,0 +1,32 @@ +define shorewall::rules::torify::reject_non_tor( + $user = '-', + $originaldest = '-', + $allow_rfc1918 = true +){ + + # hash the destination as it may contain slashes + $originaldest_sha1 = sha1($originaldest) + $rule = "reject-non-tor-from-${user}-to=${originaldest_sha1}" + + if $originaldest == '-' { + $originaldest_real = $allow_rfc1918 ? { + false => '!127.0.0.1', + default => '!127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16', + } + } else { + $originaldest_real = $originaldest + } + + if !defined(Shorewall::Rule["$rule"]) { + shorewall::rule { + "$rule": + source => '$FW', + destination => 'all', + originaldest => $originaldest_real, + user => $user, + order => 120, + action => 'REJECT'; + } + } + +} |