I have finally got my selfhost wiki up to a satisfying shape. Its here: https://wiki.gardiol.org
Take a look i hope it can help somebody.
I am open to any suggestions about it.
Note: the most original part is the one about multi-homed routing and failbacks and advanced routing.
using wildcards is really bad security practice. and at age of ACME absolutely unnecessary.
That’s true. But it doesn’t take away the possibility to use them in a selfhosted environnement.
Large enteprises like facebook and google still use them, but they have the backing to secure them safely.
Also, there is always the possibilty to add all subdomains in one certificate which takes away the wildcard subdomains.
Can you elaborate on why it is a bad security practice? It’s the first time I’m reading about it and I’d like to read more about it. Thanks!
One of the risks associated with wildcard SSL certificates is the increased attack surface they introduce. If one subdomain becomes compromised, it opens the door for potential attackers to gain unauthorized access to all subdomains secured under the wildcard certificate. (first google link)
While this argument is valid for a larger domain, it doesn’t really matter for the small selfhoster.
Using let’s encrypt certbot is so easy and automated that I never bothered for wildcards anyway, so.
The advantage of wildcard certificates is that you don’t have to expose each single subdomain over internet. Which is great if you want to have https on local only subdomains.
If you still use HTTP for cert verification on ACME, you are doing it wrong. Use DNS-01 only, there is no need to allow any inbound traffic to your servers. and HTTP will not give you wildcard anyway.
Yes, you are right, I already use DNS validation. But it is just it is easier to request a single wildcard certificate for my domain and have all the subdomains that I use for the local services defined only in my local DNS. I cannot fully automate the certificate renewal because namecheap requires to allowlist the IP that can call its API, and my ip is dynamic. So renewing a single certificate saves me time. Also, the wildcard certificate is installed on a single machine, so it is not the I increase a lot the attack surface by not having different certificates for each virtual host.