I've been using Authelia for almost 2 years and I really like it. Never had any issues.
Selfhosted
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:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
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.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Keycloak seems complicated, but it's actually not that complicated if you use it for simple OIDC provider.
Just create a new realm, then go to client -> create. Enter your client-id, with openid-connect as protocol. Then, set access type to "confidential", set valid redirect uri to "https://" (or even "https://*" if you're lazy and want to use it on multiple apps). Then hit save and go to the credential tab to copy your client secret. Then head to "users" menu to start adding users to your realm.
That's the basic setup which should be good for home use. The good thing about keycloak is, as you grow your homelab, whatever stuff you may need later can be provided by keycloak. Want some users to have access to app A, but not app B? 2 factor auth? Allow users to login with google account? Heck, allow users to login with another sso provider (chaining)? You can do pretty much anything.
That doesn't sound too bad, thanks for the instructions. I'll probably give keycloak another try too.
Do you know what kind of cpu memory usage it has? I saw the newer versions are supposed to be lighter, but haven't tested it yet.
I've had one realm with 5 clients and nothing crazy setup running for about 3 years across 3 major versions and haven't had many problems
I have been looking into this: https://gitlab.com/yaal/canaille to extend my LLDAP, but it can also work without an LDAP backend if you only need OIDC.
unpopular closed source option: cloudflare access after a cloudflare tunnel
cloudflare access + cloudflare tunnels is a cool solution, and was easy to set up in the past, but I'd rather stick to something completely self-hosted. I'd probably use it for something completely public, but not things that route into my homelab.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:
Fewer Letters | More Letters |
---|---|
HTTP | Hypertext Transfer Protocol, the Web |
SSL | Secure Sockets Layer, for transparent encryption |
SSO | Single Sign-On |
TLS | Transport Layer Security, supersedes SSL |
VPN | Virtual Private Network |
k8s | Kubernetes container management package |
nginx | Popular HTTP server |
[Thread #606 for this sub, first seen 16th Mar 2024, 12:15] [FAQ] [Full list] [Contact] [Source code]
Why not keep everything in your LAN and setup a wire guard bastion ?
That's essentially what I am doing. Everything is on the LAN by default. I have two instances of Traefik. One that runs only on internal VPN ips, and another on remote servers using public ips. So I can choose which services are accessible over lan/vpn or public (routed through a vpn to lan).
That doesn't solve the authentication problem if I want to expose something to the internet though, or even sso inside the lan.
Been happy with Zitadel so far.
I usually worry about getting bit later with apps that depend on a relational database.
This is my first cockroach db app and it's not nearly as obtuse as the MySQL container image. Hopefully it continues to work smoothly.