From db9a2f26370f9f68bd9821364658bf4daba602a0 Mon Sep 17 00:00:00 2001 From: makefu Date: Fri, 8 Dec 2017 13:40:02 +0100 Subject: [PATCH] ma bgt: add hidden service description --- 2configs/deployment/bgt/hidden_service.nix | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 2configs/deployment/bgt/hidden_service.nix diff --git a/2configs/deployment/bgt/hidden_service.nix b/2configs/deployment/bgt/hidden_service.nix new file mode 100644 index 0000000..c1a31b8 --- /dev/null +++ b/2configs/deployment/bgt/hidden_service.nix @@ -0,0 +1,48 @@ +{ pkgs, lib, ... }: + +with lib; +let + name = "bgt_cyberwar_hidden_service"; + sec = (toString ) + "/"; + 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"; } + ]; + }; +}