Compare commits
10 commits
46fad45295
...
b7896b132e
Author | SHA1 | Date | |
---|---|---|---|
b7896b132e | |||
0143447b17 | |||
2660e29452 | |||
7397e4ba4d | |||
3032edc41b | |||
a32eb7087e | |||
d001ba2f10 | |||
2d5421d73d | |||
c629b3fdf4 | |||
bc0ef84465 |
13 changed files with 204 additions and 16 deletions
13
README.md
Normal file
13
README.md
Normal file
|
@ -0,0 +1,13 @@
|
|||
# DNS Records des Natenom e. V.
|
||||
|
||||
## Zone-Dateien generieren
|
||||
|
||||
Nach jeder Änderung sollen die Zonen-Dateien generiert werden.
|
||||
Das ist besonders einfach mit der Bash-Funktion `generate-zone-file [domain]`
|
||||
in der Nix-DevShell (`nix develop`) möglich.
|
||||
|
||||
Diese führt im Hintergrund folgendes aus (Beispiel):
|
||||
|
||||
```
|
||||
dnscontrol get-zone --format=zone --out natenom.org.zone desec - natenom.org
|
||||
```
|
|
@ -1,6 +1,12 @@
|
|||
var DNS_DESEC = NewDnsProvider("desec");
|
||||
var REG_NONE = NewRegistrar("none");
|
||||
|
||||
// Records
|
||||
var A_NATENOM_MAIN = function (name) { return A(name, "188.245.198.27") };
|
||||
var AAAA_NATENOM_MAIN = function (name) { return AAAA(name, "2a01:4f8:c013:3235::1") };
|
||||
var CAA_DEFAULT = CAA("@", "issue", "letsencrypt.org");
|
||||
|
||||
// Addresses
|
||||
var NATENOM_MAIN = "natenom-main.natenom.org.";
|
||||
var WEBSYNTHESIS_MX = "mx.websynthesis.org.";
|
||||
|
||||
|
|
12
domains/kagube.de.js
Normal file
12
domains/kagube.de.js
Normal file
|
@ -0,0 +1,12 @@
|
|||
D("kagube.de", REG_NONE, DnsProvider(DNS_DESEC),
|
||||
DefaultTTL("1h"),
|
||||
NAMESERVER_TTL("1h"),
|
||||
|
||||
A_NATENOM_MAIN("@"),
|
||||
A_NATENOM_MAIN("www"),
|
||||
|
||||
AAAA_NATENOM_MAIN("@"),
|
||||
AAAA_NATENOM_MAIN("www"),
|
||||
|
||||
CAA_DEFAULT,
|
||||
);
|
22
domains/natenom.com.js
Normal file
22
domains/natenom.com.js
Normal file
|
@ -0,0 +1,22 @@
|
|||
D("natenom.com", REG_NONE, DnsProvider(DNS_DESEC),
|
||||
DefaultTTL("1h"),
|
||||
NAMESERVER_TTL("1h"),
|
||||
|
||||
A_NATENOM_MAIN("@"),
|
||||
A_NATENOM_MAIN("bn"),
|
||||
A("mail", "94.16.117.219"),
|
||||
|
||||
AAAA_NATENOM_MAIN("@"),
|
||||
AAAA_NATENOM_MAIN("bn"),
|
||||
AAAA("mail", "2a03:4000:29:168::1"),
|
||||
|
||||
CAA_DEFAULT,
|
||||
|
||||
CNAME("blog", "bn"),
|
||||
CNAME("m", "mumble"),
|
||||
CNAME("mumble", "talk.cozy.town."),
|
||||
CNAME("wiki", "bn"),
|
||||
CNAME("www", "bn"),
|
||||
|
||||
MX("@", 10, "mail"),
|
||||
);
|
24
domains/natenom.de.js
Normal file
24
domains/natenom.de.js
Normal file
|
@ -0,0 +1,24 @@
|
|||
D("natenom.de", REG_NONE, DnsProvider(DNS_DESEC),
|
||||
DefaultTTL("1h"),
|
||||
NAMESERVER_TTL("1h"),
|
||||
|
||||
A_NATENOM_MAIN("@"),
|
||||
A_NATENOM_MAIN("bn"),
|
||||
A("mail", "94.16.117.219"),
|
||||
|
||||
AAAA_NATENOM_MAIN("@"),
|
||||
AAAA_NATENOM_MAIN("bn"),
|
||||
AAAA("mail", "2a03:4000:29:168::1"),
|
||||
|
||||
CAA_DEFAULT,
|
||||
|
||||
CNAME("comments", "bn"),
|
||||
CNAME("f", "bn"),
|
||||
CNAME("m", "mumble"),
|
||||
CNAME("mumble", "talk.cozy.town."),
|
||||
CNAME("wiki", "bn"),
|
||||
CNAME("wikiarchiv", "bn"),
|
||||
CNAME("www", "bn"),
|
||||
|
||||
MX("@", 10, "mail"),
|
||||
);
|
10
domains/natenom.name.js
Normal file
10
domains/natenom.name.js
Normal file
|
@ -0,0 +1,10 @@
|
|||
D("natenom.name", REG_NONE, DnsProvider(DNS_DESEC),
|
||||
DefaultTTL("1h"),
|
||||
NAMESERVER_TTL("1h"),
|
||||
|
||||
A_NATENOM_MAIN("@"),
|
||||
A_NATENOM_MAIN("www"),
|
||||
|
||||
AAAA_NATENOM_MAIN("@"),
|
||||
AAAA_NATENOM_MAIN("www"),
|
||||
);
|
|
@ -2,11 +2,13 @@ D("natenom.org", REG_NONE, DnsProvider(DNS_DESEC),
|
|||
DefaultTTL("1h"),
|
||||
NAMESERVER_TTL("1h"),
|
||||
|
||||
A("@", "188.245.198.27"),
|
||||
A("natenom-main", "188.245.198.27"),
|
||||
A_NATENOM_MAIN("@"),
|
||||
A_NATENOM_MAIN("natenom-main"),
|
||||
|
||||
AAAA("@", "2a01:4f8:c013:3235::1"),
|
||||
AAAA("natenom-main", "2a01:4f8:c013:3235::1"),
|
||||
AAAA_NATENOM_MAIN("@"),
|
||||
AAAA_NATENOM_MAIN("natenom-main"),
|
||||
|
||||
CAA_DEFAULT,
|
||||
|
||||
CNAME("dev", "@"),
|
||||
CNAME("www", "@"),
|
||||
|
|
40
flake.nix
40
flake.nix
|
@ -6,6 +6,7 @@
|
|||
self,
|
||||
}: let
|
||||
pkgs = nixpkgs;
|
||||
lib = pkgs.lib;
|
||||
|
||||
mkAllSystems = lib.genAttrs [
|
||||
"aarch64-darwin"
|
||||
|
@ -14,26 +15,41 @@
|
|||
"x86_64-darwin"
|
||||
"x86_64-linux"
|
||||
];
|
||||
|
||||
inherit (pkgs) lib;
|
||||
in {
|
||||
formatter = mkAllSystems (system: pkgs.legacyPackages.${system}.alejandra);
|
||||
|
||||
devShells = mkAllSystems (system: let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
|
||||
inherit (pkgs) mkShell;
|
||||
in rec {
|
||||
default = mkShell {
|
||||
in {
|
||||
default = pkgs.mkShell {
|
||||
nativeBuildInputs = [pkgs.dnscontrol];
|
||||
|
||||
shellHook = ''
|
||||
echo "Bitte einen deSEC-Auth-Token eingeben:"
|
||||
read -rs DESEC_AUTH_TOKEN
|
||||
export DESEC_AUTH_TOKEN
|
||||
'';
|
||||
shellHook =
|
||||
# Auth Token
|
||||
''
|
||||
echo "Bitte einen deSEC-Auth-Token eingeben:"
|
||||
read -rs DESEC_AUTH_TOKEN
|
||||
export DESEC_AUTH_TOKEN
|
||||
''
|
||||
# Mini-Anleitung
|
||||
+ ''
|
||||
echo ""
|
||||
echo "Prüfen: dnscontrol preview"
|
||||
echo "Ausrollen: dnscontrol push"
|
||||
echo "Zone-Dateien generieren: generate-zone-file [domain]"
|
||||
echo ""
|
||||
''
|
||||
# Zonen-Datei generieren
|
||||
+ ''
|
||||
generate-zone-file () {
|
||||
if [[ "$1" != "" ]]; then
|
||||
dnscontrol get-zone --format=zone --out $1.zone' desec - $1
|
||||
else
|
||||
echo "Bitte eine valide Domain eingeben"
|
||||
fi
|
||||
};
|
||||
'';
|
||||
};
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
|
|
10
kagube.de.zone
Normal file
10
kagube.de.zone
Normal file
|
@ -0,0 +1,10 @@
|
|||
$ORIGIN kagube.de.
|
||||
$TTL 3600
|
||||
@ IN NS ns1.desec.io.
|
||||
IN NS ns2.desec.org.
|
||||
IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
IN CAA 0 issue "letsencrypt.org"
|
||||
www IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
|
18
natenom.com.zone
Normal file
18
natenom.com.zone
Normal file
|
@ -0,0 +1,18 @@
|
|||
$ORIGIN natenom.com.
|
||||
$TTL 3600
|
||||
@ IN NS ns1.desec.io.
|
||||
IN NS ns2.desec.org.
|
||||
IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
IN MX 10 mail.natenom.com.
|
||||
IN CAA 0 issue "letsencrypt.org"
|
||||
blog IN CNAME bn.natenom.com.
|
||||
bn IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
m IN CNAME mumble.natenom.com.
|
||||
mail IN A 94.16.117.219
|
||||
IN AAAA 2a03:4000:29:168::1
|
||||
mumble IN CNAME talk.cozy.town.
|
||||
wiki IN CNAME bn.natenom.com.
|
||||
www IN CNAME bn.natenom.com.
|
||||
|
20
natenom.de.zone
Normal file
20
natenom.de.zone
Normal file
|
@ -0,0 +1,20 @@
|
|||
$ORIGIN natenom.de.
|
||||
$TTL 3600
|
||||
@ IN NS ns1.desec.io.
|
||||
IN NS ns2.desec.org.
|
||||
IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
IN MX 10 mail.natenom.de.
|
||||
IN CAA 0 issue "letsencrypt.org"
|
||||
bn IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
comments IN CNAME bn.natenom.de.
|
||||
f IN CNAME bn.natenom.de.
|
||||
m IN CNAME mumble.natenom.de.
|
||||
mail IN A 94.16.117.219
|
||||
IN AAAA 2a03:4000:29:168::1
|
||||
mumble IN CNAME talk.cozy.town.
|
||||
wiki IN CNAME bn.natenom.de.
|
||||
wikiarchiv IN CNAME bn.natenom.de.
|
||||
www IN CNAME bn.natenom.de.
|
||||
|
9
natenom.name.zone
Normal file
9
natenom.name.zone
Normal file
|
@ -0,0 +1,9 @@
|
|||
$ORIGIN natenom.name.
|
||||
$TTL 3600
|
||||
@ IN NS ns1.desec.io.
|
||||
IN NS ns2.desec.org.
|
||||
IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
www IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
|
26
natenom.org.zone
Normal file
26
natenom.org.zone
Normal file
|
@ -0,0 +1,26 @@
|
|||
$ORIGIN natenom.org.
|
||||
$TTL 3600
|
||||
@ IN NS ns1.desec.io.
|
||||
IN NS ns2.desec.org.
|
||||
IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
IN MX 0 mx.websynthesis.org.
|
||||
IN TXT "v=spf1 mx a -all"
|
||||
IN CAA 0 issue "letsencrypt.org"
|
||||
dkim._domainkey IN TXT "v=DKIM1;k=rsa;t=s;s=email;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr/pwZeHei9J55sOLsdTNb7DHEAICcsGNzFQJV7cTXIbWW6fTmUx4Fnaf9vgcPSEOZH0nPDPzMQfc05mcAIhbSaygIoRhvg8CJvZorW0FLXxBSpvXmwfH6mS/wxrdbPR+2NvbArOyLGAwcE8h3g5UVzchvm8Di1DNU6XXYCxXaMHYv4tl03WBM9U" "PqMd1U0QfXgzyzPNvtjIEe1Hrm96xAyJ9BjrZQJC2KsET/vKY0LjmdAi8Cvt6pO+pjzqGOTTekwL2MsdTYObv75xmubL27O7viLO/ekxPpHGBxXRrsPd07el+yF9tKEj2VTK3pPOGbX/fXtA4HxEZz4sE4U4hZQIDAQAB"
|
||||
_autodiscover._tcp IN SRV 0 0 443 mx.websynthesis.org.
|
||||
archive IN CNAME natenom-main.natenom.org.
|
||||
autoconfig IN CNAME mx.websynthesis.org.
|
||||
autodiscover IN CNAME mx.websynthesis.org.
|
||||
ci IN CNAME natenom-main.natenom.org.
|
||||
dev IN CNAME natenom.org.
|
||||
git IN CNAME natenom-main.natenom.org.
|
||||
m IN CNAME mumble.natenom.de.
|
||||
mumble IN CNAME mumble.natenom.de.
|
||||
natenom-main IN A 188.245.198.27
|
||||
IN AAAA 2a01:4f8:c013:3235::1
|
||||
pad IN CNAME natenom-main.natenom.org.
|
||||
status IN CNAME cozytown-status.cozy.town.
|
||||
up IN CNAME cozytown-status.cozy.town.
|
||||
www IN CNAME natenom.org.
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue