]> git.openstreetmap.org Git - dns.git/blob - src/osmfoundation.js
Automate delegation of the geodns zone
[dns.git] / src / osmfoundation.js
1 D(DOMAIN, REGISTRAR, DnsProvider(PROVIDER),
2
3   // Publish CAA records indicating that only letsencrypt should issue certificates
4
5   CAA_BUILDER({
6     label: "@",
7     ttl: "1h",
8     iodef: "mailto:hostmaster@openstreetmap.org",
9     issue: [
10       "letsencrypt.org",
11     ],
12     issuewild: [
13       "letsencrypt.org",
14     ],
15   }),
16
17   // Let google handle email
18
19   MX("@", 1, "aspmx.l.google.com.", TTL("1h")),
20   MX("@", 5, "alt1.aspmx.l.google.com.", TTL("1h")),
21   MX("@", 5, "alt2.aspmx.l.google.com.", TTL("1h")),
22   MX("@", 10, "alt3.aspmx.l.google.com.", TTL("1h")),
23   MX("@", 10, "alt4.aspmx.l.google.com.", TTL("1h")),
24
25   // Handle mail for the join subdomain ourselves
26
27   MX("join", 10, "a.mx.openstreetmap.org."),
28
29   // SPF policy
30
31   SPF_BUILDER({
32     label: "@",
33     ttl: "1h",
34     parts: [
35       "v=spf1",
36       "include:_spf.google.com",  // Google GSuite
37       "ip4:212.110.172.32",       // shenron ipv4
38       "ip6:2001:41c9:1:400::32",  // shenron ipv6
39       "-all"
40     ]
41   }),
42
43   // Apple Business Manager verification
44   TXT("@", "apple-domain-verification=ZzBG2msRtUDehTMW"),
45
46   // DKIM keys
47
48   TXT("google._domainkey", "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCJmTBAkYRCocCCNtVsdRNMlQel8kNfjPYJpjEm7woEgZh9yZeDzxImtz+u73oUF4+7bXzrNYbP946WNQIwAba1J69he8L1qfPBJLd3Z/fgmuaGdWcxpDno2EY4cQ8PrzvI6Vfm+6YAFANl8w09CIg41ykdlzH4iUJXD35k3SIl3wIDAQAB", TTL("15m")),
49   TXT("20201112._domainkey", "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz4OyJc77mpW5djxVfZm18HcmJHQLpo7B2Z8Og8byICjDiG91Tpkv5ws3xIbMsi/tVA6p5L76uL0TGKlo4ayewYvJUTC22+hBWARUuWA0DgeMwBpW/dNUOJHBABCTouolvXLKRTPTefA177Y5jYbD7ZeJAR4ZnFbZX6spimXCT66AyhqCBSrOCXYXFm3ons5ANkkQBNZ/jMYczYs9T1ijNEbBNTJmLO+whOrYLyGd3iZ9X9iOmuNFBCgXp0tsN//FBsOyTl559/XY25r3GZhiKXMbrZ1IJewqJlG0+hN1y9qwWGgq5YpZPt5YJ1KGjIrcFX59/PhNQX4khPOaD5g7ZQIDAQAB", AUTOSPLIT),
50
51   // Google postmaster tools verification
52
53   CNAME("uaqn4jv2xaoe", "gv-jun5dginqysxph.dv.googlehosted.com."),
54
55   // Aliases for google services
56
57   CNAME("login", "ghs.googlehosted.com."),
58   CNAME("docs", "ghs.googlehosted.com."),
59   CNAME("mail", "ghs.googlehosted.com."),
60   CNAME("calendar", "ghs.googlehosted.com."),
61   CNAME("sites", "ghs.googlehosted.com."),
62
63   // Main web server and it's aliases
64
65   A("@", RIDLEY_IPV4, TTL("10m")),
66   A("www", RIDLEY_IPV4, TTL("10m")),
67   A("wiki", RIDLEY_IPV4, TTL("10m")),
68   A("blog", RIDLEY_IPV4, TTL("10m")),
69   A("crm", RIDLEY_IPV4, TTL("10m")),
70   A("join", RIDLEY_IPV4, TTL("10m")),
71   A("board", RIDLEY_IPV4, TTL("10m")),
72   A("dwg", RIDLEY_IPV4, TTL("10m")),
73   A("mwg", RIDLEY_IPV4, TTL("10m")),
74   A("operations", RIDLEY_IPV4, TTL("10m")),
75
76   // Nextcloud instance
77
78   CNAME("files", "nextcloud-openstreetmapfoundation.cloud68.systems.")
79
80 );