flakes/modules/services/unbound.nix

44 lines
1.1 KiB
Nix
Raw Normal View History

{ inputs, ... }:
2022-02-24 13:16:07 +07:00
let
dir = "/persist/unbound";
in {
2022-02-24 13:07:46 +07:00
networking.firewall.interfaces.wlan0 = {
2022-02-27 11:56:44 +07:00
allowedUDPPorts = [ 53 853 ];
allowedTCPPorts = [ 53 853 ];
2022-02-24 13:07:46 +07:00
};
systemd.tmpfiles.rules = [ "d ${dir} 700 unbound unbound" ];
2022-02-24 13:16:07 +07:00
2022-02-24 13:07:46 +07:00
services.unbound = {
enable = true;
2022-02-24 13:16:07 +07:00
stateDir = dir;
2022-02-24 13:07:46 +07:00
settings = {
forward-zone = [{
name = ".";
forward-tls-upstream = true;
forward-addr = [
"1.1.1.1@853#cloudflare-dns.com"
"1.0.0.1@853#cloudflare-dns.com"
];
}];
server = {
interface = [ "0.0.0.0" ];
access-control = [
"127.0.0.1/8 allow"
2022-02-27 12:00:51 +07:00
"10.0.0.0/8 allow"
"192.168.100.0/24 allow"
];
2022-02-27 13:06:17 +07:00
domain-insecure = [ "local.lava.moe" ];
local-zone = [ "local.lava.moe. redirect" ];
local-data = [
"warden.local.lava.moe. IN A 192.168.100.15"
];
2022-02-24 13:07:46 +07:00
};
include = "${inputs.hosts-blocklists}/unbound/unbound.blacklist.conf";
};
};
systemd.services.unbound.serviceConfig.ReadWritePaths = [ dir ];
2022-02-24 13:07:46 +07:00
}