Simple authentication for homelab?
johntash @ johntash @eviltoast.org Posts 6Comments 279Joined 2 yr. ago
Thanks for confirming, I just saw that as well.
I'm going to try some of the other solutions in this thread, but I might still come back to authelia and just ignore my requirement for having social login. I like the idea of sending someone a link and saying "Hey just log in with your google account" instead of having to create an actual user for them, but maybe I can use something else specifically for those cases.
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.
Once I'm authenticated, it's actually pretty okay. It goes through the redirections fast enough that I wouldn't notice usually. But the login pages would take several seconds to load for me, and navigating around the admin ui also seemed to take several seconds for each page change. So not extremely slow, but slow enough to notice and get annoyed by it. Admittedly I probably could increase the session duration or something to help with that too.
Canaille looks pretty interesting and simple too, thanks for the link!
Thanks, I'll take a look! It might be helpful even if I use a different idp
Do you have any issues with Authentik being slow? It might be my environment since I haven't done much troubleshooting yet.
As long as it's a web app, it's usually fine and can provide an extra layer of security. The app does need to have some support for sso if you want it to be seamless though, without logging in twice.
Most of my services are internal only, but sometimes I want to give access to someone on the internet without also giving them VPN access. If the app doesn't support any kind of login, having an Auth proxy in front of it really helps for that use case.
Remembering lots of passwords isn't a big deal if you have a password manager, but not having to log in to each app separately is nice. It's also nice to be able to put Auth in front of things that don't support it natively.
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.
Hmm I thought authelia could only act as an oidc provider, I didn't think it could allow logging in through a Google account for example?
I'll take a look at the docs again, thanks!
Thanks, kanidm looks promising. I'll try it out this weekend
Lots of people do have telemetry disabled. Kinda disappointing to see it being used as a reason for removing functionality without research first
K3s+Wireguard(?)
Make sure you read up on latency requirements for k8s too. It's definitely doable but etcd for example needs really low latency between nodes to not cause issues by default.
If you only have one master like you described, it'd probably be fine.
Its been a few hours, did you find it yet?
I already replied to a different thread, but figured I'd comment on some of the other options too. My vote is for Silverbullet, but I've tried way too many note taking tools.
- Joplin: I ran into multiple syncing issues that caused data loss and large numbers of conflicted files. I'm pretty sure these were all fixed a long time ago, but it was annoying. The dev was always good about fixing issues when they came up. It takes forever to sync on my devices and only syncs while the app is open with the screen on. The format it exports markdown files in isn't standard, so I had to write my own scripts to export from joplin to markdown and preserve metadata.
- Standard Notes: I was willing to pay for this, but it's extremely slow. Their support said it's because it loads everything into memory, which I'd expect to be terrible on mobile with large databases. It's also pretty limited in what you can do on the free self-hosted version.
- Obsidian: I really like obsidian's ui/ux, and my only complaint is that it's not OSS. I'd even be happy if they offered a self-hosted sync solution. There are some third party solutions for syncing, but they aren't as smooth as the paid sync.
- Trillium: I love Trillium. I would vote for it, but it recently entered into maintenance mode. The community is working to start a new fork and I'm sure it will be great, but it's too new to know where things will go yet. Trilium lets you encrypt specific notes and also has a cool plugin system where the plugin scripts are just notes in the database. It does have a mobile interface, but it's a bit limited compared to the desktop interface and also doesn't have an option to sync notes to use offline.
- Silverbullet: My current choice. I use it between windows, macos, and an android phone. I leave all three clients on sync mode all the time. The interface is minimalistic, but offers everything I need for notes and documentation so far. One of the rare "markdown" tools that actually save your content to markdown files and not to a database with the ability to export to markdown. It also has a cool feature built in where it indexes all of your notes/tasks/paragraphs and lets you build queries around them sort of like the dataview plugin for obsidian.
- Emacs: I haven't seen emacs mentioned yet, but emacs+org-mode is still great. The mobile apps just don't live up to the desktop experience, and you'd still have to figure out how to sync your notes yourself. Logseq's outliner format is a similar feel afaict
Another +1 for silverbullet from me too. I was skeptical about only having a PWA for mobile access, but it actually works really well.
It's open source, so somewhat more customizable than obsidian since you can see the inner workings of it. There aren't too many active community plugins yet, but there is a relatively new concept of 'Space Scripts' where you can write simple functions/commands directly in a note (markdown file) to extend silverbullet without even needing to write a real plugin. That's been an amazing addition for me.
Ollama and localai can both be run on a server with no gpu. You'd need to point a different web ui to them if you want though
Apparently we need to also be 14 to understand the words in that post
Permanently Deleted
Storage is hard to do right :(
If you can get away with it, use a separate NAS that exposes NFS to your other machines. Iscsi with a csi might be an option too.
For databases, it's usually better to not put their data on shared storage and instead use the databases built in replication (and take backups!).
But if you want to go down the rabbit hole, check out ceph, glusterfs, moosefs, seaweedfs, juicefs, and garagehq.
Most shared file systems aren't fully posix compliant so things like file locking may not work. This affects databases and sqlite a lot. Glusterfs and moosefs seen to behave the best imo with sqlite db files. Seaweedfs should as well, but I'm still working on testing it.
+1 for Nomad. Ive used k8s a lot and still use it, but i prefer Nomad for home purposes. You dont even need a consul cluster to run it anymore so it's pretty simple to start.
Did you move to Keycloak, or something else?