I have a Talos k8s setup now and I’m trying to add various services. I have discovered that my old htpasswd file won’t cut it for auth.

I want to host the following,

  1. WebDAV solution (currently sftpgo)
  2. Invidious
  3. *arr tools
  4. Bitwarden

Should I go with keycloak? Are there better auth services?

  • silenium_dev@feddit.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    12 hours ago

    I’m on Keycloak + lldap for user provisioning and services that don’t support OIDC or SAML. I have yet to find a OAuth or SAML feature it doesn’t have. It does have a steep learning curve tho, so Authentik is maybe a better solution to get started with.

    I personally hit a wall with Authentik when I was trying to get different signature key algorithms for different services (some services have different supported set of key algorithms than others) and custom plugins for custom JWT fields and user attributes.

    I believe Authentik has something for extensions as well, but Keycloak is just Java, which has a much better development and deployment experience than throwing a .py or .js file in some directory and hoping it works.

  • moonpiedumplings@programming.dev
    link
    fedilink
    English
    arrow-up
    7
    ·
    22 hours ago

    Authentik is definitely the best of all I’ve tried. It has the most features, supporting both ldap and oauth, and also has an official helm chart.

    • nfreak@lemmy.ml
      link
      fedilink
      English
      arrow-up
      3
      ·
      17 hours ago

      It’s kind of funny, I initially tried Authentik and ran into issues getting it working, so I went with Authelia instead, but eventually went back to try Authentik again because I wanted to customize the CSS and felt I was outgrowing Authelia, and it just worked. Not sure what I was doing wrong the first time, but oh well.

      I will say though the latest release has a major bug where worker instances are eating up db connections to the point where the entire thing crashes, so while I’ve generally been happy with it, definitely need to do some careful research before blindly upgrading.

      • moonpiedumplings@programming.dev
        link
        fedilink
        English
        arrow-up
        2
        ·
        16 hours ago

        In addition to adding more worker instances, you can also increase the amount of threads each worker instance uses to vertically scale. It’s about equivalent to adding a worker instance.

    • reabsorbthelight@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      22 hours ago

      Yeah I just set it up. Amazingly straight forward. I still have PTSD from keycloak, so I’m glad there’s an alternative

  • RonnyZittledong@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    15 hours ago

    I chose Keycloak because it seemed the most battle tested and least likely to just stop receiving updates and die and that is worth a lot to me. The most annoying thing for me was their storing usernames in lower case but after I figured out how to create custom SPI plugins I got that sorted out.

  • Jul (they/she)@piefed.blahaj.zone
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    1 day ago

    Keycloak has some learning curve, but it’s the best OpenID Connect client and the most configurable and feature rich open source SSO system with the fewest major issues that I’ve used. And I use traefik for a reverse proxy, so for things that don’t support SSO directly thomseddon/traefik-forward-auth works flawlessly with Keycloak to provide an auth layer to those apps.

  • huangrydude@lm.boing.icu
    link
    fedilink
    English
    arrow-up
    8
    ·
    2 days ago

    I have been using Authentik for several years now, works great with k8s. Not sure about the difference between Keycloak and Authentik tho (feature vise)

  • lwe@feddit.org
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    2 days ago

    If you are not on the warpath with Webauthn I can highly recommend PocketID. It’s just so damn convenient. But note that the arrs don’t come with a good solution for oidc login. But you can use something like tinyauth or an auth forwarder in your reverse proxy. Bitwarden will work fine but of course still require a master key to unlock the vault itself.

  • hesh@quokk.au
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 day ago

    I use Authelia and its worked perfect to put auth in front of my services, including OAuth

  • ccunix@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    2 days ago

    I’ve been using Authentik for a while now and it works very well. There is also a Teraform provider to manage it as code. I do mostly OIDC, but also use it as a proxy for a few things that do not support that and just need to be locked down (Esp home and longhorn dashboards for example).

    The disadvantage is that it is not the lightest option. If that is important to you, look at Authelia.

  • 0x0f@piefed.social
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 days ago

    I used to love keycloak, but lately they’ve made changes that make client setup feel very complicated. I switched to authentik a while back and I feel it’s far easier to deal with.

  • folekaule@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 days ago

    For very simple Kubernetes and Docker environments, I’ve used Dex IdP with good results. It’s low on features, but easy to set up.