this post was submitted on 30 Jan 2025
333 points (99.4% liked)

Selfhosted

42099 readers
488 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I think it's a good idea, everyone should be automating this anyway.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 128 points 1 week ago (3 children)

Those emails have warned me something was pooched in advance many times. I do find them useful.

Sad to see them go, but nice they mention an alternative.

[–] [email protected] 27 points 1 week ago (1 children)

Pretty much all monitoring solutions on the market track cert expiration nowadays. I get an alert when any of my certs have <5 days left

[–] a_fancy_kiwi 5 points 1 week ago (3 children)

What monitoring solution do you use? I need to set something up for my own projects but haven't gotten around to it. Any experience with Nagios?

[–] [email protected] 5 points 1 week ago

I set up uptime kuma to also monitor certs this week when I got the reminder email about them stopping the email warnings, been using it for some time for uptime monitoring (mostly to see if some auto docker image update screws up my services) and the notification parts has worked nicely for that, so I’m also assuming it will work nicely for the certificates

[–] [email protected] 2 points 1 week ago

I use NewRelic myself. They are software agnostic and only connect to your URL to get the expiration date.

If you set up LE correctly, it should never get an alert. I haven't been alerted since I set it up, to the point that I wonder if I set up the monitor correctly.

The only thing I wish it could do is use custom ports. I have some services running on non standard ports.

load more comments (1 replies)
[–] [email protected] 12 points 1 week ago

I’ve mainly gotten false positives, myself. When I’ve added another subdomain or something and the certificate gets set up differently, so then you get 2-3 emails saying domain X will expire, but if you connect to the url you see it has 80+ days left. Setting up your own monitoring solution is probably long overdue for myself, and it’s nice I’m getting forced to do it, in a way

[–] [email protected] 5 points 1 week ago

Setup uptimekuma

[–] [email protected] 22 points 1 week ago (4 children)

Providing expiration notifications costs Let’s Encrypt tens of thousands of dollars per year

Not doubting them, but I don't understand how that's possible.

Storing the email addresses and expiration dates takes an irrelevant amount of storage space, even if they had billions of cutomers.

Sending the emails should also not cost thousands, even if a significant amount of customers regularly let their certificates expire (which hopefull isn't the case).

So where are the tens of thousands of yearly costs coming from?

[–] [email protected] 33 points 1 week ago

As with all things email, they probably really wanted to make sure that the mails were delivered and thus were using a commercial MTA to ensure that.

I'd wager, even at 20 or 30 or 40k a year, that's way less than it'd cost to host infra and have at least two if not three engineers available 24/7 to maintain critical infra.

Looking at my mail, over the years I've gotten a couple hundred email from them around certificates and expirations (and other things), and if you assume there's a couple million sites using these certs, I could easily see how you'd end up in a situation where this could scale in cost very very slowly, until it's suddenly a major drain.

[–] [email protected] 18 points 1 week ago (1 children)

If they send 2 emails per subdomain per year, that could easily be 10s of millions which would make the cost per email measured in thousandths of a cent. And I could see the number of subdomains being larger by a factor of 10, maybe more.

Another angle: someone with IT experience needs to manage the system that seems emails, and other engineers need to integrate other systems with the email reminder system. The time spent on engineering could easily add up to thousands per year, if not tens of thousands.

I'm guessing their figure is based on both running costs and engineering costs.

[–] [email protected] 9 points 1 week ago* (last edited 1 week ago) (1 children)

According to their stats page, Let's Encrypt's certificates are used by around 500M domains.

[–] [email protected] 2 points 1 week ago

So sendgrid checking does 2.5M emails a month for $90/month, and if call them the Cadillac provider. More than that you have to contact sales, so I'm still wondering how it's that expensive to them

[–] [email protected] 11 points 1 week ago* (last edited 1 week ago) (1 children)

Transactional email services are about $15 per 10,000 emails. I'll round down to $10 to consider b2b deals and let's just say it's $10,000 per year. That would be like idk 84k emails a month.

Keep in mind this doesn't consider the DB hosting and the processing of expiring emails and salaries, so yeah, I could see it.

Edit: before anyone yells at me. I can't math.

[–] [email protected] 2 points 1 week ago

Not yelling, but pointing out, to people who also dont math, that if we assume $10 per 10k emails (or $1 per 1k, for simpler math), that’d be $84 for 84000 emails in a month, so you need to add another 0 to the figure (ie 840k emails in a month)

[–] [email protected] 5 points 1 week ago (1 children)

I just realized I have no idea who pays for Let's Encrypt. I just run the server commands, automate it, and move on.

[–] [email protected] 13 points 1 week ago (1 children)

Let's Encrypt is run by a non-profit (Internet Security Research Group), they list their major sponsors and funders on their website.

[–] [email protected] 11 points 1 week ago

Notable mention of Mozilla being a Platinum sponsor.

[–] [email protected] 19 points 1 week ago (2 children)

I did setup UptimeKuma for notifications on this. let's see if it works out when the expiry arrives in a month

[–] [email protected] 4 points 1 week ago

I think I'll need to add notifications for my uptime kuma as well now. So far I've used it mostly for historical data but without the mails, I would like to get a notice

[–] [email protected] 3 points 1 week ago (1 children)

UptimeKuma looks nice. Simple, but it does what it is supposed to.

[–] gofsckyourself 1 points 1 week ago

Just needs an API and an export/import feature.

[–] SirMaple__ 12 points 1 week ago* (last edited 1 week ago) (1 children)

I manage all my certs using Cert Warden which has a dashboard that displays the expiry date. It does lack alerting, so I use Uptime-kuma to monitor the expiry dates of the certs. So not a big loss for me.

[–] lightnegative 4 points 1 week ago

TIL Cert Warden is a thing. Looks awesome!

[–] [email protected] 11 points 1 week ago (1 children)

I think it's a good idea, everyone should be automating this anyway.

This is still not possible in all scenarios. For example, wildcard certificates for DNS providers with no API support.

[–] [email protected] 17 points 1 week ago (1 children)

Then swap you nameservers to a DNS provider that allows that?

[–] [email protected] 3 points 1 week ago (2 children)

There are a lot of embedded systems that do not offer API support to swap out certificates. Things like switches, dvr, nas devices, etc.

[–] [email protected] 9 points 1 week ago (1 children)

Honestly in rare situations that a device like that needs to be accessible from the wild Internet I think it'd be mad to expose it directly, especially if it's not manageable as you suggest. At the very least, I'd be leaning on a reverse proxy.

[–] [email protected] 4 points 1 week ago (3 children)

That implies though I don’t want valid certificates in my environment. I still want to make sure even on my private network I’m using valid certs. A lot of security departments require that too even if the device isn’t public facing.

[–] [email protected] 8 points 1 week ago (3 children)

Valid certificate is anything you trust. Any CA which you can trust is no more or less secure than the one you get from LE, so for the private network you can just happily sign your own certificates and just distribute the CA to your devices.

load more comments (3 replies)
[–] cm0002 3 points 1 week ago (1 children)

still want to make sure even on my private network I’m using valid certs. A lot of security departments require that too even if the device isn’t public facing.

Is there a hard source with evidence that this is at all needed? Because there are a lot of things that "security departments" do that amount to security theater. Like forcing arbitrary password changes org wide.

[–] [email protected] 3 points 1 week ago (1 children)

Regardless of “hard evidence” it’s still the company policy. How well does it go over if you try to say “well acktuslly…” when it comes to password changes.

[–] cm0002 4 points 1 week ago

How well does it go over if you try to say “well acktuslly…” when it comes to password changes.

Well, it went over easy, but I also gained the authority to implement or toss such policies when I took my job LMAO

In any case, I was referring to the "my environment" part since it implied you had such authority and were just choosing to emulate policies of others, ofc I don't mean to make decisions you don't have the authority to. Hard evidence is hard evidence though, it does give you a leg to stand on should you propose such changes

[–] [email protected] 2 points 1 week ago

I'm with you, but that's why I'm automating certificate expiry checking somewhere else (in my home assistant install to be exact).

load more comments (1 replies)
[–] kokesh 6 points 1 week ago (7 children)

I just wish I wouldn't have to renew certs so often.

[–] doughless 15 points 1 week ago (1 children)
[–] [email protected] 7 points 1 week ago

Fuck Apple and Microshit

[–] [email protected] 14 points 1 week ago (2 children)

You're not supposed to do it manually.

[–] [email protected] 8 points 1 week ago (1 children)

Tell that to all the embedded device manufacturers… switches, appliances, nas, etc.

There’s a whole load of things that will have a massive administrative burden if the frequency is dropped.

load more comments (1 replies)
[–] kokesh 6 points 1 week ago (2 children)

My server does it automatically, but I have few services I can't make to read the certs from server storage, so I have to manually copy cert content. Especially Adguard Home for some reason refuses to read my certs.

[–] [email protected] 11 points 1 week ago (1 children)

Have the same problem. But symlinks or copying them via cron solved it for me.

[–] kokesh 4 points 1 week ago

Yes! yes | cp -Lrf /etc/letsencrypt/live/..domain.../*.pem /var/snap/adguard-home/current

[–] forbiddenlake 5 points 1 week ago

You could use a reverse proxy to terminate tls, and take the tls off of ad guard itself.

[–] [email protected] 2 points 1 week ago

Its done for better security

load more comments (4 replies)
[–] [email protected] 3 points 1 week ago

If you're using Prometheus, Blackbox exporter checks cert expiration as well

[–] [email protected] 2 points 1 week ago (1 children)

PSA: If you use Cloudflare to proxy, you can get a free decade long certificate and not worry about it for awhile.

[–] [email protected] 3 points 1 week ago (1 children)

Oh, look: the NSA dangling a carrot on a line.

[–] [email protected] 5 points 1 week ago

Hey, if you wanna put your home server out there so the first person who gets pissy at you can DDoS you off the net until your ISP decides to cancel your service, that's a perfectly acceptable decision to make for yourself.

[–] Jimmycakes 2 points 1 week ago (1 children)

Mine just auto renews anyway

[–] [email protected] 3 points 1 week ago

I think thats the case for most of us. But for some like myself, it does mean I have to do the monitoring myself now. I can't complain it was a free service. But it did warn me about a renewal problem before the cert expired, so it was a useful service for me.

[–] [email protected] 2 points 1 week ago

I have my home assistant check and also my nagios, better safe then sorry

load more comments
view more: next ›