summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/dnscrypt/server.nix
diff options
context:
space:
mode:
authorlassulus <lassulus@lassul.us>2017-09-06 11:07:59 +0200
committerlassulus <lassulus@lassul.us>2017-09-06 11:07:59 +0200
commit428a5f037ef8a5d6b0ef5bc0ea74dcd458fd5b16 (patch)
tree0bcc67e7d0f4ff22ca7e4840608f72015a49fbdd /makefu/2configs/dnscrypt/server.nix
parent6218a259a9880368c71ecacddcf1e7c641bd5278 (diff)
parenta46564bf986829cd7372020ed4962af15a5c5983 (diff)
Merge remote-tracking branch 'gum/master'
Diffstat (limited to 'makefu/2configs/dnscrypt/server.nix')
-rw-r--r--makefu/2configs/dnscrypt/server.nix26
1 files changed, 26 insertions, 0 deletions
diff --git a/makefu/2configs/dnscrypt/server.nix b/makefu/2configs/dnscrypt/server.nix
new file mode 100644
index 000000000..79305e727
--- /dev/null
+++ b/makefu/2configs/dnscrypt/server.nix
@@ -0,0 +1,26 @@
+{ config, ... }:
+let
+ # TODO: dataDir is currently not provided by upstream
+ # data = config.services.dnscrypt-wrapper.dataDir;
+ data = "/var/lib/dnscrypt-wrapper";
+ sec = toString <secrets>;
+ port = 15251;
+ user = "dnscrypt-wrapper";
+in {
+ services.dnscrypt-wrapper = {
+ enable = true;
+ address = "0.0.0.0";
+ upstream.address = "8.8.8.8";
+ providerName = "2.dnscrypt-cert.euer.krebsco.de";
+ inherit port;
+ };
+ networking.firewall.allowedUDPPorts = [ port ];
+ systemd.services.prepare-dnscrypt-wrapper-keys = {
+ wantedBy = [ "dnscrypt-wrapper.service" ];
+ before = [ "dnscrypt-wrapper.service" ];
+ script = ''
+ install -m700 -o ${user} -v ${sec}/dnscrypt-public.key ${data}/public.key
+ install -m700 -o ${user} -v ${sec}/dnscrypt-secret.key ${data}/secret.key
+ '';
+ };
+}