mastus: dns server
This commit is contained in:
parent
f9ff346c08
commit
e9cd321661
@ -14,6 +14,7 @@
|
||||
./blog.nix
|
||||
./radicale.nix
|
||||
./ttrss.nix
|
||||
./dns.nix
|
||||
];
|
||||
|
||||
boot.loader.grub.enable = true;
|
||||
|
97
mastus/dns.nix
Normal file
97
mastus/dns.nix
Normal file
@ -0,0 +1,97 @@
|
||||
{ config, pkgs, ... }:
|
||||
let
|
||||
mastus = ''
|
||||
IN A 37.252.120.145
|
||||
IN AAAA 2a02:2770:5:0:21a:4aff:fe99:a937
|
||||
'';
|
||||
misuji = ''
|
||||
IN A 91.213.195.194
|
||||
IN AAAA 2a02:2770:3:0:21a:4aff:feac:bc0e
|
||||
'';
|
||||
|
||||
timestamp = "1466327298";
|
||||
|
||||
heNsServers = ''
|
||||
@ IN NS ns1.he.net.
|
||||
@ IN NS ns2.he.net.
|
||||
@ IN NS ns3.he.net.
|
||||
@ IN NS ns4.he.net.
|
||||
@ IN NS ns5.he.net.
|
||||
'';
|
||||
|
||||
mailSetup = ''
|
||||
@ IN MX 10 imap.gebner.org.
|
||||
@ IN TXT v=spf1 mx -all
|
||||
'';
|
||||
|
||||
commonStuff = domain: ''
|
||||
$ORIGIN ${domain}.
|
||||
@ 10800 IN SOA mastus.gebner.org. gebner.gebner.org. ${timestamp} 10800 3600 604800 10800
|
||||
${heNsServers}
|
||||
${mailSetup}
|
||||
'';
|
||||
in
|
||||
{
|
||||
services.nsd = {
|
||||
enable = true;
|
||||
interfaces = [ "0.0.0.0" "::" ];
|
||||
|
||||
zones = {
|
||||
"gebner.org." = {
|
||||
provideXFR = [ "0.0.0.0/0 NOKEY" "::0/0 NOKEY" ];
|
||||
data = ''
|
||||
${commonStuff "gebner.org"}
|
||||
|
||||
misuji ${misuji}
|
||||
mastus ${mastus}
|
||||
|
||||
home-gw IN A 80.109.2.154
|
||||
htdf-gw IN A 80.109.2.154
|
||||
mtlaa-gw IN A 84.112.114.160
|
||||
|
||||
@ ${mastus}
|
||||
www IN CNAME mastus
|
||||
|
||||
reader IN CNAME mastus
|
||||
owncloud IN CNAME misuji
|
||||
webmail IN CNAME misuji
|
||||
git IN CNAME mastus
|
||||
kochbuch IN CNAME misuji
|
||||
howfatami IN CNAME misuji
|
||||
mail ${mastus}
|
||||
imap ${mastus}
|
||||
xmpp ${misuji}
|
||||
wllbg in CNAME misuji
|
||||
cookbook in CNAME misuji
|
||||
radicale in CNAME mastus
|
||||
'';
|
||||
};
|
||||
"gabrielebner.at." = {
|
||||
provideXFR = [ "0.0.0.0/0 NOKEY" "::0/0 NOKEY" ];
|
||||
data = ''
|
||||
${commonStuff "gabrielebner.at"}
|
||||
|
||||
@ ${mastus}
|
||||
www IN CNAME mastus.gebner.org.
|
||||
|
||||
openid IN CNAME mastus.gebner.org.
|
||||
'';
|
||||
};
|
||||
"2b7e.org." = {
|
||||
provideXFR = [ "0.0.0.0/0 NOKEY" "::0/0 NOKEY" ];
|
||||
data = ''
|
||||
${commonStuff "2b7e.org"}
|
||||
|
||||
@ ${mastus}
|
||||
www IN CNAME mastus.gebner.org.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.nsd ];
|
||||
networking.firewall = {
|
||||
allowedUDPPorts = [ 53 ];
|
||||
allowedTCPPorts = [ 53 ];
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue
Block a user