this post was submitted on 08 Oct 2024
165 points (96.6% liked)

Selfhosted

39640 readers
312 users here now

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:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. 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.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I'm going to move away from lastpass because the user experience is pretty fucking shit. I was going to look at 1pass as I use it a lot at work and so know it. However I have heard a lot of praise for BitWarden and VaultWarden on here and so probably going to try them out first.

My questions are to those of you who self-host, firstly: why?

And how do you mitigate the risk of your internet going down at home and blocking your access while away?

BitWarden's paid tier is only $10 a year which I'm happy to pay to support a decent service, but im curious about the benefits of the above. I already run syncthing on a pi so adding a password manager wouldn't need any additional hardware.

(page 2) 50 comments
sorted by: hot top controversial new old
[–] [email protected] 17 points 1 week ago (8 children)

My approach to this is as follows:

  • the password manager is probably the most important and often used piece of software I own. We (wife and I share the vault) store everything important/private in there - bank details, hundreds of passwords, passport details, drivers licence etc. It is used many times a day by us both.
  • Loss of control of this data would be catastrophic, so I took its security very seriously.
  • No one company can be trusted with our data, because they all get hacked or make mistakes at some point.

I’m the security dude for a cloud service provider in my day job, so my goal was to use Separation of Concerns to manage my passwords. I therefore split the software from the storage, choosing software from one company, and storage from a second company. That way, it requires a failure on both parties at the same time for me to lose control of all the data.

I used to use OnePass for the software, storing the data in Dropbox. But then they removed that option, so I switched to Enpass. Data is stored in a vault on the local device and synced to a folder on Dropbox, which we both have access to from all our devices (Mac’s, iPads, iPhones). The vault is encrypted using our master password and Dropbox only sees an encrypted file. Enpass provides software that runs locally and doesn’t get a copy of my vault file.

If Dropbox has another failure and the vault gets out, then that is not a problem as long as Enpass have properly encrypted it. If Enpass has a bug making the vaults crackable - again it’s not a problem as long as Dropbox doesn’t lose control of my vault file. I update Enpass, the vault gets fixed and life goes on.

Enpass is very usable, but buggy. It crashes every night (requiring me to start it again and log in), and often loses connection to Safari and wont re-establish it. It got better with a previous update, but has got unreliable again. I’m about to look for another.

Cheers.

[–] [email protected] 9 points 1 week ago* (last edited 1 week ago) (1 children)

Loss of control of this data would be catastrophic, so I took its security very seriously.

Ask yourself: "If my current system is unavailable: How screwed am I?"

If the answer is anything less than "Not screwed at all!", then it is time for a backup - regardless of what system you're using or plan to use.

[–] [email protected] 3 points 1 week ago

Fair comment, although due to the distributed nature of our implementation we are unlikely to lose services. All Vaults are stored locally on all devices.

Having said that - the copy of the vault on the Mac is backed up with TimeMachine.

[I’ve been a greybeard sysadmin and use 3,2,1 even at home]

load more comments (7 replies)
[–] [email protected] 16 points 1 week ago (1 children)

After trying them all, I’m back at having a local KeePass database that is synced to all my devices via iCloud and SyncThing. There are various apps to work with KeePass databases and e.g. Strongbox on macOS and iOS integrates deeply into Apple’s autofill API so that it feels and behaves natively instead of needing some browser extension. KeePass DX is available for all other platforms, and there are lots of libraries for various programming languages so that you can even script stuff yourself if you want.

And I have the encrypted database in multiple places should one go tits up.

[–] [email protected] 3 points 1 week ago (2 children)

Very interesting. How secure is this against having a compromised device? I‘m really paranoid that someone would somehow have a backdoor into my systems and snatch stuff I host on my own

[–] [email protected] 3 points 1 week ago

Not the one who wrote the command: The Keepass DB encryption is afaik pretty damn good. So that wouldn't be an attack vector I would worry about. Also and those are just my five cents and I might probably be ripped in pieces by some it sec people, I wouldn't fear too much about a backdoor being put into your systems when self hosting. If someone actually does this it's most probably gonna be some actor related to a government that targets you for whatever reason and at least then most of us wouldn't stand a chance to keep all of their IT devices save, especially when they could stop you on the streets and get physical access to some devices. On the other hand hosted services with thousands of customers are also a lucrative target for cyber crime and which you as a self hosting individual are most probably not. This reduces the possible threats quite a bit, at least if you keep up some default safety stuff to not just let any wannabe hacker from wherever into your self hosted services that would be happy if they can get a 5 thousands dollars/ euros or whatever from you.

load more comments (1 replies)
[–] [email protected] 16 points 1 week ago (7 children)

I don't, specifically because I don't trust myself to host that. I know what people will say here, but I trust 1pass way more than I could do it myself.

1pass uses your password plus a secret key to generate your full "password", meaning you need both to access your vault. The password you memorize, the key you keep safe somewhere (inside the vault is even good, since you probably have it open on another device should you need it). They publish their docs, and show how they encrypt your vaults. To them, your vaults are truly just random bytes they store in blob storage. They don't store your key, they don't store your password, they will not help you out if you lock yourself out. That's the level of security I want for a password vault. If they ever get breached, which hey, it can happen, the most someone will get is a random blob of data, which then I'd go and probably generate a new password and reencrypt everything again anyway.

Vs me hosting myself, I'm sure the code is good - but I don't trust myself to host that data. There's too many points of failure. I could set up encryption wrong, I could expose a bad port, if someone gained access to my network I don't trust that they wouldn't find some way to access my vaults. It's just too likely I have a bad config somewhere that would open everything up. Plus then it's on me to upgrade immediately if there's a zero day, something I'm more likely to miss.

I know, on the selfhosted community this is heresy, but this is the one thing I don't self host, I leave it to true security researchers.

[–] [email protected] 8 points 1 week ago (1 children)

Nah, I'm with you, except I use BitWarden.

There are somethings either worth paying someone else to host, or where you trust a 3rd party more than you're own setup. I realize other users may feel different, but ultimately it's a judgement call

BW has been a pretty great opensource company, and it's worth my $10/yr for premium.

[–] [email protected] 4 points 1 week ago

Wow, Bitwarden has made leaps and bounds on catching up to 1password on dev tools and enterprise features the last few years. I'm going to need to re-evaluate/consider moving over.

load more comments (6 replies)
[–] [email protected] 14 points 1 week ago
  1. Because I don't trust companies to hold onto passwords.
  2. It syncs. I don't need live access to my home.
[–] [email protected] 13 points 1 week ago (4 children)

Keepass hosted on my Nextcloud server. You can have the database synced to however many devices you want, and each one will always have a local copy of the latest version. You can use whatever sync solution you want though: syncthing, Dropbox, google drive etc. I suggest using diceware to generate a strong master passphrase for the database :)

load more comments (4 replies)
[–] [email protected] 12 points 1 week ago

I'm on the bandwagon of not hosting it myself. It really breaks down to a level of commitment & surface area issue for me.

Commitment: I know my server OS isn't setup as well as it could be for mission critical software/uptime. I'm a hobbiest with limited time to spend on this hobby and I can't spend 100hrs getting it all right.

Surface Area: I host a bunch of non mission critical services on one server and if I was hosting a password manager it would also be on that server. So I have a very large attack surface area and a weakness in one of those could result in all my passwords & more stored in the manager being exposed.

So I don't trust my own OS to be fully secure and I don't trust the other services and my configurations of them to be secure either. Given that any compromise of my password manager would be devastating. I let someone else host it.

I've seen that in the occassional cases when password managers have been compromised, the attacker only ends up with non encrypted user data & encrypted passwords. The encrypted passwords are practically unbreakable. The services also hire professionals who host and work in hosting for a living. And usually have better data siloing than I can afford.

All that to say I use bitwarden. It is an open source system which has plenty of security built into the model so even if compromised I don't think my passwords are at risk. And I believe they are more well equipped to ensure that data is being managed well.

[–] [email protected] 11 points 1 week ago

I self-Host Vaultwarden at home, this way I have a convenient password manager for myself and my SO, it's easy to setup and maintain. East to access from the phone, Firefox, etc. Bitwarden app keeps a local cache so even when disconnected from the server I have access to my passwords and it will synchronize at the next connections. I otherwise have a Wireguard VPN setup in case I need to connect to my home server from outside my home.

Before I used KeePass+syncthing but it was to much configuration to convince my SO to use it. Bitwarden/Vaultwarden was more successful in that regard.

[–] [email protected] 10 points 1 week ago (1 children)

I don’t understand it tbh. Password managers and email are the main things I avoid self hosting. Email because it’s just too easy to fuck something up and never realize you’re not actually properly sending/receiving email. And password managers because if I lose access to it, I’m kinda royally fucked. And the password managers I use keeps a local copy of your database that gets periodically updated, so even without internet I do still have access.

[–] [email protected] 4 points 1 week ago (3 children)

Could one not theoretically self-host a PW manager that also keeps a local copy of the database for times with no internet?

Idk if that doesn't exist yet or what, and there are plenty of other reasons against self-hosting a PW manager but that seems like a logical work-around for that particular problem. Keep your access when the internet is down, and keep your data out of third party control.

[–] [email protected] 9 points 1 week ago

Bitwarden does exactly that. It will mostly work with no server connection.

load more comments (2 replies)
[–] [email protected] 7 points 1 week ago

I pay Bitwarden the tenner a year as I have no reason to distrust them and they're definitely providing a more reliable, securer service than I can self-host.

I also do an encrypted export once per week and store that export to an encrypted cloud based service and an encrypted USB stick. Takes 2 minutes.

[–] [email protected] 7 points 1 week ago (2 children)

Using vault warden because I read too much about errors in implementing or design in services like LastPass or (though encrypted) vaults being stolen.

Bit warden client on Android lets you sync (ie LAN) and then use it as a read only database while on the go without a connection.

I recently added tailscale and when I really need a service from home I just flick it on on my phone and I am good

Works like a charm.

load more comments (2 replies)
[–] [email protected] 7 points 1 week ago

I use KeepassXC

[–] [email protected] 6 points 1 week ago

Bitwarden's free version is enough for my purposes, but I didn't realize they had a $10/yr plan. That seems worth paying for, I'll have to look into it.

[–] [email protected] 6 points 1 week ago

I selfhost vault warden, and in all honesty, it's just painless. I do reverse proxy it, but you could also just setup wireguard or Tailscale at home and keep it even more secure that way.

The reason I chose to selfhost is because I want to be in as much control as possible of my data. I chose Vault warden because it's fully featured and super easy to deploy the server, ridiculously so.

Now,if anyone was to ask me if they should selfhost Bitwarden or just use their hosted service, I'd suggest to take the second option, for 2 reasons:

1.- it's even easier and just works 2.- if you choose the paid tier it has some nice features and you help the project stay alive

[–] [email protected] 6 points 1 week ago (2 children)

I evaluated both BitWarden and 1Password for work and 1Password generally won across the board.

If you host yourself make sure backups are rock solid and regularly monitored and tested. Have a plan for your infrastructure being down or compromised.

load more comments (2 replies)
[–] [email protected] 5 points 1 week ago (2 children)

I self host Bitwarden and it's free to self host. You only have to pay for a license if you need multiple users or want to use their cloud services, I believe. My instance is 100% self hosted and completely isolated from the internet, and it works fine.

I self host it because I self host everything, but for credential managers I would never trust any 3rd party closed source utility or cloud service. Before I used a password manager I tracked them all manually with a text file and a TrueCrypt volume. I think giving unrelated credentials to 3rd parties is asking for trouble - they definitely don't care as much about them as you do!

If you're going to self host any credential manager, make sure you have an appropriate backup strategy, and make sure you have at least one client synced regularly so that you can still access passwords if the server itself dies for some reason.

load more comments (2 replies)
[–] [email protected] 4 points 1 week ago (1 children)

You'll learn pretty quickly that a large chunk of self-hosting people are the types that are just terrified of having things be outside their control, which by extension means they are terrified of other people that aren't them running infrastructure. 🫠

[–] [email protected] 4 points 1 week ago (3 children)

True but also free service and fun to play with.

load more comments (3 replies)
[–] [email protected] 4 points 1 week ago

I access my Vaultwarden server via Cloudflared tunnel while I'm away from home network.

[–] [email protected] 4 points 1 week ago (1 children)

I recommend against hosting a password manager yourself.

The main reason is self hosted systems require maintenance to patch vulnerabilities. While it's true that you won't be on the main list if e.g. bitwarden gets hacked, your data could still be obtained or ransomed by a scripted attack looking for e.g. vulnerable VaultWarden servers (or even just vulnerable servers in general).

Using professional hosting means just that, professional hosting with people who's full time job is running those systems and keeping people that aren't supposed to be there out.

Plus, you always have the encryption of the binary blob itself to fall back on (which if you've got a good password is a serious barrier to entry that buys you a lot of time). Additionally vaults are encrypted with symmetric crypto which is not vulnerable to quantum computing, so even in that case your data is reasonably safe... And mixed in with a lot of other data that's likely higher priority to target.

load more comments (1 replies)
[–] [email protected] 3 points 1 week ago (1 children)

Is there an easy way to export passwords from LastPass to another service, self-hosted or otherwise? I’ve been wanting to move away from my current manager but have been reluctant due to this.

[–] [email protected] 4 points 1 week ago* (last edited 1 week ago)

Yes. It has been a while since I moved (whenever the first breach was), but I exported from lastpass and imported to Bitwarden with minimal issue, I think I had to add a column.

[–] [email protected] 3 points 1 week ago

you become fully in charge of your passwords instead of relying on someone else

TL;DR:

  • you do it to gain more independence and self-reliance
load more comments
view more: ‹ prev next ›