]> git.openstreetmap.org Git - dns.git/blob - src/osmfoundation.js
b44d1a13325fc4dbfc643e4bb194945f1e39c1e1
[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     iodef: "mailto:hostmaster@openstreetmap.org",
8     issue: [
9       "letsencrypt.org",
10     ],
11     issuewild: [
12       "letsencrypt.org",
13     ],
14   }),
15
16   // Let google handle email
17
18   MX("@", 1, "aspmx.l.google.com."),
19   MX("@", 5, "alt1.aspmx.l.google.com."),
20   MX("@", 5, "alt2.aspmx.l.google.com."),
21   MX("@", 10, "alt3.aspmx.l.google.com."),
22   MX("@", 10, "alt4.aspmx.l.google.com."),
23
24   // Handle mail for the join subdomain ourselves
25
26   MX("join", 10, "a.mx.openstreetmap.org."),
27
28   // SPF policy
29
30   SPF_BUILDER({
31     label: "@",
32     parts: [
33       "v=spf1",
34       "include:_spf.google.com",  // Google GSuite
35       "ip4:212.110.172.32",       // shenron ipv4
36       "ip6:2001:41c9:1:400::32",  // shenron ipv6
37       "ip4:184.104.226.98",       // fafnir ipv4
38       "ip6:2001:470:1:b3b::2",    // fafnir ipv6
39       "ip4:193.60.236.0/24",          // ucl external
40       "ip4:184.104.179.128/27",       // amsterdam external
41       "ip6:2001:470:1:fa1::/64",      // amsterdam external
42       "ip4:184.104.226.96/27",        // dublin external
43       "ip6:2001:470:1:b3b::/64",      // dublin external
44       "-all"
45     ]
46   }),
47
48   SPF_BUILDER({
49     label: "wiki",
50     parts: [
51       "v=spf1",
52       "ip4:184.104.226.98",       // fafnir ipv4
53       "ip6:2001:470:1:b3b::2",    // fafnir ipv6
54       "ip4:193.60.236.0/24",          // ucl external
55       "ip4:184.104.179.128/27",       // amsterdam external
56       "ip6:2001:470:1:fa1::/64",      // amsterdam external
57       "ip4:184.104.226.96/27",        // dublin external
58       "ip6:2001:470:1:b3b::/64",      // dublin external
59       "-all"
60     ]
61   }),
62
63   // Apple Business Manager verification
64   TXT("@", "apple-domain-verification=ZzBG2msRtUDehTMW"),
65
66   // Publish DMARC report-only policy
67
68   DMARC_BUILDER({
69     policy: "none",
70     rua: [
71       "mailto:openstreetmap-d@dmarc.report-uri.com"
72     ],
73     failureOptions: 1
74   }),
75
76   // DKIM keys
77
78   TXT("google._domainkey", "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCJmTBAkYRCocCCNtVsdRNMlQel8kNfjPYJpjEm7woEgZh9yZeDzxImtz+u73oUF4+7bXzrNYbP946WNQIwAba1J69he8L1qfPBJLd3Z/fgmuaGdWcxpDno2EY4cQ8PrzvI6Vfm+6YAFANl8w09CIg41ykdlzH4iUJXD35k3SIl3wIDAQAB"),
79   TXT("20201112._domainkey", "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz4OyJc77mpW5djxVfZm18HcmJHQLpo7B2Z8Og8byICjDiG91Tpkv5ws3xIbMsi/tVA6p5L76uL0TGKlo4ayewYvJUTC22+hBWARUuWA0DgeMwBpW/dNUOJHBABCTouolvXLKRTPTefA177Y5jYbD7ZeJAR4ZnFbZX6spimXCT66AyhqCBSrOCXYXFm3ons5ANkkQBNZ/jMYczYs9T1ijNEbBNTJmLO+whOrYLyGd3iZ9X9iOmuNFBCgXp0tsN//FBsOyTl559/XY25r3GZhiKXMbrZ1IJewqJlG0+hN1y9qwWGgq5YpZPt5YJ1KGjIrcFX59/PhNQX4khPOaD5g7ZQIDAQAB", AUTOSPLIT),
80
81   // Google postmaster tools verification
82
83   CNAME("uaqn4jv2xaoe", "gv-jun5dginqysxph.dv.googlehosted.com."),
84
85   // Aliases for google services
86
87   CNAME("login", "ghs.googlehosted.com."),
88   CNAME("docs", "ghs.googlehosted.com."),
89   CNAME("mail", "ghs.googlehosted.com."),
90   CNAME("calendar", "ghs.googlehosted.com."),
91   CNAME("sites", "ghs.googlehosted.com."),
92
93   // Main web server and it's aliases
94
95   A("@", RIDLEY_IPV4),
96   A("www", RIDLEY_IPV4),
97   A("wiki", RIDLEY_IPV4),
98   A("blog", RIDLEY_IPV4),
99   A("crm", RIDLEY_IPV4),
100   A("join", RIDLEY_IPV4),
101   A("support", RIDLEY_IPV4),
102   A("supporting", RIDLEY_IPV4),
103   A("board", RIDLEY_IPV4),
104   A("dwg", RIDLEY_IPV4),
105   A("mwg", RIDLEY_IPV4),
106   A("operations", NAGA_IPV4),
107   AAAA("operations", NAGA_IPV6),
108
109   // Temporary join development staging server
110   A("crm-staging", DRIBBLE_IPV4),
111   AAAA("crm-staging", DRIBBLE_IPV6),
112   A("join-staging", DRIBBLE_IPV4),
113   AAAA("join-staging", DRIBBLE_IPV6),
114
115   // Nextcloud instance
116
117   CNAME("files", "nextcloud-openstreetmapfoundation.cloud68.systems."),
118
119   A("hardware", IDRIS_IPV4)
120
121 );