!MthpOIxqJhTgrMNxDS:nixos.org

NixOS ACME / LetsEncrypt

105 Members
Another day, another cert renewal44 Servers

Load older messages


SenderMessageTime
4 Jul 2025
@ctheune:matrix.flyingcircus.ioChristian TheuneScreenshot 2025-07-04 at 10.12.07.png
Download Screenshot 2025-07-04 at 10.12.07.png
08:12:46
@ctheune:matrix.flyingcircus.ioChristian TheuneAlright. Some discussion with leona and max lead to this ^^08:12:49
@ctheune:matrix.flyingcircus.ioChristian TheuneI'll put that into code and see how that works.08:13:00
@ctheune:matrix.flyingcircus.ioChristian Theunesomething that doesn't fit in there is that preliminary self signed certificates can be turned off currently. 08:22:52
@ctheune:matrix.flyingcircus.ioChristian Theunethis setup would always introduce (temporary) self-signed certificates. (currently if you turn off preliminary self signed certificates and lets encrypt doesn't work for some reason, we don't start the consumer service at all because the configs will be invalid)08:23:50
@ctheune:matrix.flyingcircus.ioChristian Theunei would consider it an acceptable shift in detail wrt to reduced overall complexity. 08:24:40
@ctheune:matrix.flyingcircus.ioChristian Theune* i would consider it an acceptable tradeoff with the benefit of reduced complexity.08:25:11
@ctheune:matrix.flyingcircus.ioChristian Theuneotoh if someone runs dns-01 everywhere and doesn't ever need to show self signed certificates and wants to reduce the risk of exposing users to those ... 08:26:12
@ctheune:matrix.flyingcircus.ioChristian Theunehmpf.08:26:15
@ctheune:matrix.flyingcircus.ioChristian Theunehowever, if you have a more complex service that acts as a "nexus" then maybe only one of multiple vhosts uses dns-01, others might be using http-01 or tls-01 and need the self-signed certificates anyway and then you get unpredictable behaviour.08:29:06
@ctheune:matrix.flyingcircus.ioChristian Theunein that sense, the tradeoff seems even more beneficial: reduced complexity and more predictable behaviour.08:29:26
@ctheune:matrix.flyingcircus.ioChristian Theunewe originally added it as an option when creating self-signed certificates wasn't supported yet, so ... i guess it was created as an option ... because we can?08:30:28
@ctheune:matrix.flyingcircus.ioChristian Theunei'll turn into coding mode now and see how this works out.08:30:38
@leona:leona.isleona joined the room.08:31:15
@ctheune:matrix.flyingcircus.ioChristian Theune👋08:31:20
@ma27:nicht-so.sexyma27 joined the room.08:31:24
@emilazy:matrix.orgemilyI say this every time our ACME module fails to scale for someone, but ACME issuance really wants to be a proper service rather than scripted out of systemd bits and you might want to consider trying something like Caddy for an issuance daemon :)09:42:56
@emilazy:matrix.orgemily(not that I don't welcome improvements especially if they simplify the code)09:43:10
@ctheune:matrix.flyingcircus.ioChristian Theuneyeah, our stack is already interesting, so i'd rather not use caddy (and we have non-http requirements anyway) and the overall integration is quite nice - it's a lot more advanced than what others have, so ... yeah. I was considering replacing the scripted stuff but it's not obvious to be better as a replacement when trying to start from the ground up ... 🙂10:00:53
@ctheune:matrix.flyingcircus.ioChristian Theunei started this week with the assumption of "lets make it a proper service" but then the dependency management around it for consumers is quite complex anyway and this means doing stuff in "systemd land" isn't going away either ... 10:01:33
@ctheune:matrix.flyingcircus.ioChristian Theuneso, at the moment: this makes me understand the code base much better and maybe we can turn it into a proper service at another point in time. lego as the client is quite valuable, so traefik would be an option, but then it gets in the way with other http stuff or needs more layering)10:02:35
@emilazy:matrix.orgemilyto be clear, you can use Caddy as an "issue TLS certs to files" daemon, for HTTP-01, TLS-ALPN-01, and DNS-0110:21:59
@emilazy:matrix.orgemily without any HTTP server component (beyond serving .well-known/acme-challenge if you use HTTP-01) 10:22:10
@emilazy:matrix.orgemilyit is one of the few ACME implementations that gets most of the things in https://github.com/https-dev/docs/blob/master/acme-ops.md right (I mean, the author co-wrote that document so not too surprising, and some of them are irrelevant these days, but :) )10:23:16
@emilazy:matrix.orgemilyanyway, not the optimal solution for every setup for sure, especially if you already integrate tightly with the NixOS ACME support10:23:31
@emilazy:matrix.orgemilyjust want to throw out that it is a very competent ACME client and if you have complex scaling needs that the module isn't covering it is worth considering for that purpose10:23:54
@emilazy:matrix.orgemily(it used to use lego internally but moved to its own acmez implementation because of lego design limitations)10:25:15
@ctheune:matrix.flyingcircus.ioChristian Theunethanks for that input! 🙂10:27:56
@ctheune:matrix.flyingcircus.ioChristian Theuneinterestingly the doc is a bit outdated already, though ... 10:30:34
@emilazy:matrix.orgemilywell that is just reference material for ACME client developers from >half a decade ago11:09:15

Show newer messages


Back to Room ListRoom Version: 6