Hi, I was looking at private CAs since I don’t want to pay for a domain to use in my homelab.

What is everyone using for their private CA? I’ve been looking at plain OpenSSL with some automation scripts but would like more ideas. Also, if you have multiple reverse-proxy instances, how do you distribute domain-specific signed certificates to them? I’m not planning to use a wildcard, and would like to rotate certificates often.

Thanks!


Edit: thank you for everyone who commented! I would like to say that I recognise the technical difficulty in getting such a setup working compared to a simple certbot setup to Let’s Encrypt, but it’s a personal choice that I have made.

  • @MigratingtoLemmyOP
    link
    English
    17 months ago

    I’d be very interested to hear your reasoning behind using a private CA for clients but using Let’s encrypt for servers. Thanks for the explanation on the OpenSSL setup!

    • [email protected]
      link
      fedilink
      English
      27 months ago

      I’m just doing mutual TLS to authenticate clients which I use the pricate CA for.
      I could use the orivate CA for the server instead of lets encrypt and trust that on devices, but letsencrypt is easy enough and useful for other things that I open publicly. mTLS avoids needing a vpn for more sensitive services

      • @MigratingtoLemmyOP
        link
        English
        2
        edit-2
        7 months ago

        Did you design your lab infrastructure to operate in a zero trust security framework? I’m very interested; I never really grasped mTLS, but I’m going to try and read more about it. Thanks!

        Edit: Alright, I understand the high-level concept of mTLS. Just need to check the implementation details with my reverse-proxy

        • [email protected]
          link
          fedilink
          English
          27 months ago

          Not really, although now that I have certs for those anyway, maybe I should.
          More like I’m using some services on the go that I want to always work, whether I’m on the LAN or on the go.
          Opening home automation or 3d printers to the Internet is unwise to say the least.
          mTLS in the reverse proxy for those allows me to have more security without having to establish a VPN first.

          • @MigratingtoLemmyOP
            link
            English
            27 months ago

            Oh, that’s a great idea! Indeed, using certificates to identify yourself would work quite well in such a scenario. Whilst I would always use a VPN server, this has given me something new to think about! Thanks!

            • [email protected]
              link
              fedilink
              English
              27 months ago

              What’s nice is it provides a similar level of protection to using a VPN with PKI, but just for that specific subdomain. While a VPN would be have to be connected manually before use (or all the time), this is built-in.

              The odds of someone breaking through the mTLS and breaking through that application’s security at the same time are much smaller than either separately.
              If you don’t have a valid cert, you’re dropped by the reverse proxy before anything even gets passed to the server behind it.

              I’m a big fan of it.