This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| computing:bind9dns [2025/12/28 05:47] – oemb1905 | computing:bind9dns [2025/12/28 08:43] (current) – oemb1905 | ||
|---|---|---|---|
| Line 29: | Line 29: | ||
| * Configuring your Registrar' | * Configuring your Registrar' | ||
| - | This tutorial presumes you already have a working and sufficiently hardened | + | This tutorial presumes you already have three working and sufficiently hardened |
| ------------------------------------------- | ------------------------------------------- | ||
| Line 186: | Line 186: | ||
| </ | </ | ||
| - | Now that the family and cat website zone is created, we need to establish its DNS records | + | Now that the family and cat website zone is re-created, we can now establish its DNS records |
| <code bash> | <code bash> | ||
| Line 240: | Line 240: | ||
| At this point, we're still dealing strictly with bind9 and have not setup webmin or the automated clustering features. We will do that soon, but there' | At this point, we're still dealing strictly with bind9 and have not setup webmin or the automated clustering features. We will do that soon, but there' | ||
| + | <code bash> | ||
| cd / | cd / | ||
| dnssec-keygen -a ED25519 -b 256 -n ZONE haacksnetworking.com | dnssec-keygen -a ED25519 -b 256 -n ZONE haacksnetworking.com | ||
| Line 245: | Line 246: | ||
| SALT=$(openssl rand -hex 8) | SALT=$(openssl rand -hex 8) | ||
| dnssec-signzone -S -K / | dnssec-signzone -S -K / | ||
| + | </ | ||
| You can of course just run the '' | You can of course just run the '' | ||
| Line 254: | Line 256: | ||
| allow-transfer { 8.28.86.114; | allow-transfer { 8.28.86.114; | ||
| also-notify { 8.28.86.114; | also-notify { 8.28.86.114; | ||
| + | }; | ||
| </ | </ | ||
| Line 457: | Line 460: | ||
| {{ : | {{ : | ||
| - | Of course, you could also shell into the slaves and remove those transfer rules via the CLI, this is just to show that both methods work and are dealing with the exact same bind9 underbelly. | + | Of course, you could also shell into the slaves and remove those transfer rules via the CLI, this is just to show that both methods work and are dealing with the exact same bind9 underbelly. Once we do that, we can !!FINALLY!! |
| - | + | ||
| - | image?? | + | |
| - | + | ||
| - | Once we do that, we can create A, AAAA, dmarc, spf, and or any other records we need. Here's what the zone's landing page looks like and what the record pages within it look like: | + | |
| {{ : | {{ : | ||
| Line 474: | Line 473: | ||
| host cloudcommunity.club ns3.haacksnetworking.com | host cloudcommunity.club ns3.haacksnetworking.com | ||
| | | ||
| - | Once that's working, let's setup DNSSEC using the webmin gui on master ns1. | + | Once that's working, let's setup DNSSEC using the webmin gui on master ns1. To do that navigate to Bind9 DNS Server > Zone > Setup DNS Key: |
| - | image of that | + | {{ : |
| + | |||
| + | Once the DNSSEC key is created and the zone signed, you will, just like above, have to navigate over to your registrar and enter in the algorithm, digest, digest tag, and key tag. To see those values, just select Bind9 DNS Server > Zone > Setup DNS Key and instead | ||
| - | Add section above to use dig in order to verify | + | {{ : |
| + | |||
| + | As a final step, we can use the dig command | ||
| - | dig command | + | dig cloudcommunity.club DNSKEY +dnssec @8.28.86.113 |
| + | dig cloudcommunity.club DNSKEY +dnssec @8.28.86.114 | ||
| + | dig cloudcommunity.club DNSKEY +dnssec @8.28.86.115 | ||
| | | ||
| - | Verify what webmin is doing under the hood. Show examples of the slave entries it makes in named on ns2 and ns3 on the CLI but via webmin. Similarly, show a screen shot of the zone record file for cloudcommunity.club | + | Each node should report |
| + | |||
| + | <code bash> | ||
| + | ; <<>> | ||
| + | ;; global options: +cmd | ||
| + | ;; Got answer: | ||
| + | ;; ->> | ||
| + | ;; flags: qr aa rd; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1 | ||
| + | ;; WARNING: recursion requested but not available | ||
| + | |||
| + | ;; OPT PSEUDOSECTION: | ||
| + | ; EDNS: version: 0, flags: do; udp: 1232 | ||
| + | ; COOKIE: f9d0bef39e0c56da010000006950c6e270c6a99b26e97171 (good) | ||
| + | ;; QUESTION SECTION: | ||
| + | ;cloudcommunity.club. IN DNSKEY | ||
| + | |||
| + | ;; ANSWER SECTION: | ||
| + | cloudcommunity.club. 3600 IN DNSKEY 256 3 15 yCykkNhKUB0H3F7B+F1ydS6lmTaQAhRkVLgq6Fy6xWo= | ||
| + | cloudcommunity.club. 3600 IN DNSKEY 257 3 15 g61Yq+dJTUxZpQDvQfqqK59CUv3IsDXyO8Sy229YVic= | ||
| + | cloudcommunity.club. 3600 IN RRSIG DNSKEY 15 2 3600 20260123020922 20251224020922 188 cloudcommunity.club. sbVDXR4RZpR0s2eXn3wyyJ4JGO2AZpX/ | ||
| + | cloudcommunity.club. 3600 IN RRSIG DNSKEY 15 2 3600 20260123020922 20251224020922 30893 cloudcommunity.club. AjoUcCUneoXo/ | ||
| + | |||
| + | ;; Query time: 100 msec | ||
| + | ;; SERVER: 8.28.86.113# | ||
| + | ;; WHEN: Sat Dec 27 22:57:54 MST 2025 | ||
| + | ;; MSG SIZE rcvd: 402 | ||
| + | </ | ||
| + | |||
| + | === Part 4 - Optional Unbound Recursive Resolver === | ||
| + | |||
| + | Now that you can create any record you please and sign your zones/ | ||
| sudo apt install unbound | sudo apt install unbound | ||
| Line 579: | Line 614: | ||
| If you are interested in setting up one of these authoritative Bind9 DNS clusters that are configured to use either CLI or the convenient webmin interface, just hit me up on Matrix. I'm available here: | If you are interested in setting up one of these authoritative Bind9 DNS clusters that are configured to use either CLI or the convenient webmin interface, just hit me up on Matrix. I'm available here: | ||
| - | * [[https:// | + | * [[https:// |
| - | --- // | + | --- // |