first commit
This commit is contained in:
commit
49bd4cfc48
3 changed files with 92 additions and 0 deletions
18
README.md
Normal file
18
README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
# dns-config
|
||||
|
||||
This repository contains the code to manage all my DNS records.
|
||||
|
||||
### Helpful commands
|
||||
|
||||
```sh
|
||||
# `preview`, `push` or `check` changes.
|
||||
docker run --rm -it \
|
||||
-v "$HOME/app-data/dns-config:/dns" \
|
||||
ghcr.io/stackexchange/dnscontrol preview
|
||||
|
||||
# Pull in changes from an existing DNS provider
|
||||
docker run --rm -it \
|
||||
-v "$HOME/app-data/dns-config:/dns" \
|
||||
ghcr.io/stackexchange/dnscontrol get-zones \
|
||||
--format=js --out=draft.js cloudflare - walr.us.eu.org
|
||||
```
|
19
creds.json
Normal file
19
creds.json
Normal file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"bind": {
|
||||
"TYPE": "BIND"
|
||||
},
|
||||
"cloudflare": {
|
||||
"TYPE": "CLOUDFLAREAPI",
|
||||
"accountid": "$CLOUDFLARE_ACCOUNT_ID",
|
||||
"apitoken": "$CLOUDFLARE_API_TOKEN"
|
||||
},
|
||||
"desec": {
|
||||
"TYPE": "DESEC",
|
||||
"auth-token": "$DESEC_AUTH_TOKEN"
|
||||
},
|
||||
"namecheap": {
|
||||
"TYPE": "NAMECHEAP",
|
||||
"apikey": "$NAMECHEAP_API_KEY",
|
||||
"apiuser": "$NAMECHEAP_API_USER"
|
||||
}
|
||||
}
|
55
dnsconfig.js
Normal file
55
dnsconfig.js
Normal file
|
@ -0,0 +1,55 @@
|
|||
var REG_NONE = NewRegistrar("none");
|
||||
var REG_NAMECHEAP = NewRegistrar("namecheap"); // Unused right now. See note below.
|
||||
|
||||
var DSP_DESEC = NewDnsProvider("desec");
|
||||
|
||||
D("walr.us.eu.org", REG_NONE, DnsProvider(DSP_DESEC),
|
||||
DefaultTTL("5m"),
|
||||
MX("@", 10, "mx1.forwardemail.net."),
|
||||
MX("@", 10, "mx2.forwardemail.net."),
|
||||
TXT("@", "forward-email=hi@ketanvijayvargiya.com"),
|
||||
TXT("pic._domainkey", "k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjR2XeDHangUyp5Ug274CcYYz+ZHbjcOkmybarbZkFJ9fIPAGfb2hg+hS/mAX4Sy/SC9hQ/fcgB1DCXqk71DYT63G3a9rzGxfpfKndS+sTc3qjOIGjgZ31G/znxW+9AY1AD3wVB0lEPyIqj/x9h9jsysSWuHI7WNPyPL25iJaYawIDAQAB"),
|
||||
SPF_BUILDER({
|
||||
label: "@",
|
||||
parts: [
|
||||
"v=spf1",
|
||||
"include:mailgun.org",
|
||||
"~all"
|
||||
]
|
||||
})
|
||||
)
|
||||
|
||||
// Note: I would have used `REG_NAMECHEAP` below. However, Namecheap APIs require an IP address based
|
||||
// allowlist and I can't configure that for GitLab Runners.
|
||||
D("ketanvijayvargiya.com", REG_NONE, DnsProvider(DSP_DESEC),
|
||||
DefaultTTL("5m"),
|
||||
CNAME("*.a", "flister.dedyn.io."),
|
||||
CNAME("a", "flister.dedyn.io."),
|
||||
CNAME("git", "flister.dedyn.io."),
|
||||
CNAME("toot", "flister.dedyn.io."),
|
||||
CNAME("autoconfig", "autoconfig.migadu.com."),
|
||||
A("@", "75.2.60.5"),
|
||||
CNAME("key1._domainkey", "key1.ketanvijayvargiya.com._domainkey.migadu.com."),
|
||||
CNAME("key2._domainkey", "key2.ketanvijayvargiya.com._domainkey.migadu.com."),
|
||||
CNAME("key3._domainkey", "key3.ketanvijayvargiya.com._domainkey.migadu.com."),
|
||||
CNAME("www", "ketanvijayvargiya.netlify.app."),
|
||||
MX("@", 10, "aspmx1.migadu.com."),
|
||||
MX("@", 20, "aspmx2.migadu.com."),
|
||||
SRV("_autodiscover._tcp", 0, 1, 443, "autodiscover.migadu.com."),
|
||||
SRV("_imaps._tcp", 0, 1, 993, "imap.migadu.com."),
|
||||
SRV("_pop3s._tcp", 0, 1, 995, "pop.migadu.com."),
|
||||
SRV("_submissions._tcp", 0, 1, 465, "smtp.migadu.com."),
|
||||
DMARC_BUILDER({
|
||||
policy: "quarantine"
|
||||
}),
|
||||
TXT("@", "google-site-verification=o2TNkd5C7x8FntC3t2gZUvMvaZC973EZL1GiVeIRTJs"),
|
||||
SPF_BUILDER({
|
||||
label: "@",
|
||||
parts: [
|
||||
"v=spf1",
|
||||
"include:spf.migadu.com",
|
||||
"-all"
|
||||
]
|
||||
}),
|
||||
TXT("@", "hosted-email-verify=rcs5gmx0")
|
||||
)
|
Loading…
Reference in a new issue