| ▲ | You can run a DNS server (2025)(simonsafar.com) |
| 43 points by surprisetalk 5 days ago | 15 comments |
| |
|
| ▲ | gerdesj 3 days ago | parent | next [-] |
| I've run DNS servers in the past - BIND and pdns. I've now gone all in ... because ... well it started with ACME. As the OP states you can get a registrar to host a domain for you and then you create a subdomain anywhere you fancy and that includes at home. Do get the glue records right and do use dig to work out what is happening. Now with a domain under your own control, you can use CNAME records in other zones to point at your zones and if you have dynamic DNS support on your zones (RFC 2136) then you can now support ACME ie Lets Encrypt and Zerossl and co. Sadly certbot doesn't do (or it didn't) CNAME redirects for ACME. However, acme.sh and simple-acme do and both are absolutely rock solid. Both of those projects are used by a lot of people and well trod. acme.sh is ideal for unix gear and if you follow this blokes method of installation: https://pieterbakker.com/acme-sh-installation-guide-2025/ usefully centralised. simple-acme is for Windows. It has loads of add on scripts to deal with scenarios. Those scripts seem to be deprecated but work rather well. Quite a lot of magic here that an old school Linux sysadmin is glad of. PowerDNS auth server supports dynamic DNS and you can filter access by IP and TSIG-KEY, per zone and/or globally. Join the dots. [EDIT: Speling, conjunction switch] |
| |
| ▲ | adiabatichottub 2 hours ago | parent | next [-] | | I'm a fan of uACME: https://github.com/ndilieto/uacme Tiny, simple, reliable. What more can you ask? | | |
| ▲ | DaSHacka 2 hours ago | parent [-] | | Neat, I've used lego (https://github.com/go-acme/lego) but will certainly have to give uacme a look, love me a simple ACME client. acme.sh was too garish for my liking, even as a guy that likes his fair share of shell scripts. And obviously certbot is a non-starter because of snap. | | |
| ▲ | adiabatichottub 2 hours ago | parent [-] | | Certbot has earned my ire on just about every occasion I've had to interact with it. It is a terrible program and I can't wait to finish replacing it everywhere. The new setup is using uAcme and nsupdate to do DNS-01 challenges. No more fiddling with any issues in the web server config for a particular virtual host, like some errant rewrite rule that prevents access to .well-known/. |
|
| |
| ▲ | 9dev 3 days ago | parent | prev [-] | | Seconded. Don’t use certbot; it’s an awful piece of user-hostile software, starting from snap being the only supported installation channel. Everything it does wrong, acme.sh does right. | | |
| ▲ | tryauuum an hour ago | parent [-] | | just installed yesterday the certbot on ubuntu 24.04, from the default repos, without any snaps | | |
| ▲ | mediumsmart 24 minutes ago | parent [-] | | same on debian trixie. certbot works fine for me. Zone records in bind, generate the dnskey, cronjob to re-sign it daily and your off to the races. no problems no snaps. |
|
|
|
|
| ▲ | defanor 35 minutes ago | parent | prev | next [-] |
| I prefer and use the knot DNS server for authoritative DNS (and either knot-resolver or Unbound for caching DNS servers) myself: it is quite feature-rich, including DNSSEC, RFC 2136 support, an easy master-slave setup. Apparently it does support database-based configuration and zone definitions, too, but I find file-based storage to be simpler. |
| |
| ▲ | adiabatichottub 2 minutes ago | parent [-] | | The database for configuration and zone data is strictly internal and not tied to an external relational database, like what's shown in the article. |
|
|
| ▲ | emithq 2 hours ago | parent | prev | next [-] |
| One thing worth noting if you're using your own DNS for Let's Encrypt DNS-01 challenges: make sure your authoritative server supports the RFC 2136 dynamic update protocol, or you'll end up writing custom API shims for every ACME client. PowerDNS has solid RFC 2136 support out of the box and pairs well with Certbot's --preferred-challenges dns-01 flag. BIND works too but the ACL configuration for allowing dynamic updates from specific IPs is fiddly to get right the first time. |
|
| ▲ | deepsun 2 hours ago | parent | prev [-] |
| How to make it DNSSEC? |
| |
| ▲ | gucci-on-fleek 2 hours ago | parent | next [-] | | With Knot, you can just add ~8 lines to your config [0], copy the records to your registrar, and then you're done. [0]: https://www.knot-dns.cz/docs/3.5/singlehtml/index.html#autom... | | |
| ▲ | adiabatichottub an hour ago | parent [-] | | Knot does make it quite easy. Also, their devs are very responsive to support questions on their mailing list. It is currently my favored DNS. |
| |
| ▲ | adiabatichottub 2 hours ago | parent | prev [-] | | If you don't absolutely have to, then don't. That is to say, if you misconfigure it, or try to turn it off, you will have an invalid domain until the TTL runs out, and it's really just not worth the headache unless you have a real use case. | | |
| ▲ | deepsun 26 minutes ago | parent [-] | | I consider it as basic security measure as SSL. Otherwise any MitM can easily redirect users to a phishing resource. Did DNSSEC for company website, worked with zero maintenance for several years. On a cloud-provided DNS. Would want the same on self-hosted DNS too. |
|
|