diff options
author | tv <tv@krebsco.de> | 2018-12-18 20:17:03 +0100 |
---|---|---|
committer | tv <tv@krebsco.de> | 2018-12-18 20:17:03 +0100 |
commit | 1fa1fa53062069de970548f88ad0211b4502f18d (patch) | |
tree | 30413fa29c1c43ff7af5ea684d92e613de4af295 /makefu/2configs/bgt/hidden_service.nix | |
parent | 8b4428816d1385e1dd5ec9bf0ce44ae0e284130a (diff) | |
parent | 23562e36190e07f338211541ac3d2cc77ebdbafa (diff) |
Merge remote-tracking branch 'prism/master'
Diffstat (limited to 'makefu/2configs/bgt/hidden_service.nix')
-rw-r--r-- | makefu/2configs/bgt/hidden_service.nix | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/makefu/2configs/bgt/hidden_service.nix b/makefu/2configs/bgt/hidden_service.nix new file mode 100644 index 000000000..c1a31b8dc --- /dev/null +++ b/makefu/2configs/bgt/hidden_service.nix @@ -0,0 +1,48 @@ +{ pkgs, lib, ... }: + +with lib; +let + name = "bgt_cyberwar_hidden_service"; + sec = (toString <secrets>) + "/"; + secdir = sec + name; + srvdir = "/var/lib/tor/onion/"; + basedir = srvdir + name; + hn = builtins.readFile (secdir + "/hostname"); +in +{ + systemd.services.prepare-hidden-service = { + wantedBy = [ "local-fs.target" ]; + before = [ "tor.service" ]; + serviceConfig = { + ExecStart = pkgs.writeScript "prepare-euer-blog-service" '' + #!/bin/sh + set -euf + if ! test -d "${basedir}" ;then + mkdir -p "${srvdir}" + cp -r "${secdir}" "${srvdir}" + chown -R tor:tor "${srvdir}" + chmod -R 700 "${basedir}" + else + echo "not overwriting ${basedir}" + fi + ''; + Type = "oneshot"; + RemainAfterExit = "yes"; + TimeoutSec = "0"; + }; + }; + services.nginx.virtualHosts."${hn}".locations."/" = { + proxyPass = "https://blog.binaergewitter.de"; + extraConfig = '' + proxy_set_header Host blog.binaergewitter.de; + proxy_ssl_server_name on; + ''; + }; + services.tor = { + enable = true; + hiddenServices."${name}".map = [ + { port = "80"; } + # { port = "443"; toHost = "blog.binaergewitter.de"; } + ]; + }; +} |