Simple guide to self hosted authentication?

andy47@lemmy.world to Selfhosted@lemmy.world – 44 points –

I'd like to set up my identity and authentication service for my self hosted applications but it is not a beginner friendly subject.

I'm aware of the various tools available; authentik, authelia, LLDAP, keycloak, etc and see lots of useful discussions on them which is great.

But I can't seem to find a beginner friendly introduction to setting up one or more of these tools that helps me understand the core concepts at the same time. Does such a thing exist?

I'd like to try out LLDAP and Authelia on my home lab and then possibly roll this out to my production services.

But every tutorial I've come across seems to assume a fair amount of knowledge that I don't think I have.

For instance if I deploy LLDAP what should I use as my base DN? And how can I seperate a homelab directory from a seperate production directory?

Any pointers gratefully received.

15

You are viewing a single comment

Ok, I found this - https://www.linuxserver.io/blog/2020-08-26-setting-up-authelia.

Which, if I'm reading it correctly tells me that SWAG (Secure Web Application Gateway) is essentially a web server, reverse proxy with lets encrypt support. It doesn't seem to do any authentication.

Authelia is a component of an identity and authentication solution that provides single sign on and 2FA but, crucially, does not include a user directory, by default it uses a YAML file but can be connected to an LDAP server - https://www.authelia.com/overview/authentication/first-factor/

Which I think goes towards the point in my original post - none of this is simple so I'd like a nice explanation that helps me understand what I need running, how they work together and what settings to use.

You probably need to realise that this is advanced self hosting here.

I might suggest you start off with something a bit simpler.

Run an application, do DNS, point Nginx to it, get certbot and follow the instructions on their site to implement it. Read logs. Update stuff. Break stuff.

You need to build up to it, because Authentication is a compilation of 5-6 different basic tasks that you need to be across. And if you mess up any of them, it won't work and you need to work out why.

Thanks. I have all of that. I've been at this for a while and am now looking to move to centralised authentication and access management because I've got everything else working as I want it. It's just not ideal to have to maintain seperate logins across each of the services that I'm running. Hence starting to look at authentication. I know it's complex and the original post was wondering if there is a nice simple introduction to the subject matter.

Yep if you've got the requisite skills the linuxserver guide is the best for authelia.

I've also ran Keycloak via the red hat documentation.

That's really as easy as it gets..if you want to learn, be prepared to pile through the documentation.