What is a really smart choice for password manager apps? Concerned about privacy and politically involved CEOs.
I've used:
LastPass
1Password
ProtonPass (Now using)
I thought ProtonPass was a good choice but I'm starting to read more about it. What's just a really solid choice all around, that you can feel good about? Free or paid.
Update:
I decided to go with Bitwarden and Bitwarden Authenticator. The features and the experience are better than the three listed above that I've used before. Awesome advice here, thanks everyone.
I would recommend people not do that unless they know they need to and again, if you know you need to you’re not asking on lemmy.
Hosting your own secrets not only puts the burden of protecting, providing access to and preserving the secrets entirely on you, but puts a very unique set of hosting goals squarely on you as well.
Even a skilled administrator with significant resources at hand would often be better served by simply using bitwarden instead of hosting vaultwarden.
An example I used in another thread about password managers was a disaster. When your local server is inoperable or destroyed and general local network failure makes your cloud accessible backup unreachable, can you access your secrets safely from a public computer at the fire department, church or refugee center?
Bitwarden works well from public computers and there’s a whole guide for doing it as safely as possible on their website.
Samesies. KeePass works great for me as well, storing it on a server so it's accessible for both phones (using KeePassXC), and desktop using the web app for keeweb.info (app.keeweb.info).
KeepassXC is great, but I realised very late in the process of setting it up, that the browser extension does not support Flatpak based browsers: "Please note that in general Flatpak and Snap based browsers are not supported, Ubuntu's Firefox Snap being an exception." (https://github.com/keepassxreboot/keepassxc-browser/wiki/Troubleshooting-guide)
I think I ran into that exact issue myself when I tried out fedora silverblue. I believe there was a workaround but it was quite involved from what I remember...
You can self-host Bitwarden, too. My understanding is that VaultWarden is much simpler to self-host, though. Note that VaultWarden isn’t a “fork”; it’s a compatible rewrite in Rust (Bitwarden’s codebase, by contrast, is primarily C#).
I also use Bitwarden and strongly prefer it over every other password manager I’ve tried or investigated, for what that’s worth. I’d recommend it to 99% of non-enterprise users (it’s probably great for enterprise use as well, TBF).
The only use case I wouldn’t recommend it for is when you don’t want your passwords stored in the cloud, in which case KeePass is the way to go. To be clear, that recommendation does not apply if you’re syncing your vault with a cloud storage provider - even one you’re hosting, like SyncThing - even if your vault is encrypted. At that point just use Bitwarden or VaultWarden, because they’re at least audited with your use case in mind (Vaultwarden has only been audited once afaik, though).
I recommend Keepass. It's freeware, is available on all platforms and supports biometrics (fingerprints, etc) on Android devices. It also encrypts the password file on your device, so you can keep a copy of that file on a cloud service without worrying if that service really respects your privacy or not.
This is perhaps overkill, but you can also encrypt the contents of your online cloud storage with CryFS / Cryptomater. This is particularly useful if you wish to store sensitive documents (healthcare, finances etc) in a cloud environment in case of catastrophic destruction of property (destroying computers / on site backups of data).
In this case you can also backup your keepass file in this encrypted virtual storage medium, on top of the prexisting encryption of the database itself.
Use KeepassXC with Syncthing for maximum autonomy or Bitwarden for maximum ease. Both are FOSS. That's my recommendation and also seems to be the consensus among those who share your needs.
I use Keepass but I recommended Bitwarden to less nerdy family members as it syncs out of the box & does what they need it to do. Sync is simple enough to set up with Keepass & the big plus for me is that it allows storage of files/documents. Last time I checked this was a limited/paid feature on Bitwarden
My personal choice right now is KeePassXC (PC) / KeePassDX (Android) + Syncthing
And Aegis (Android) for 2FA codes, with a yubikey for services that support FIDO keys.
Overall I like this setup because it's decentralized and does not rely on a third party server structure. The only "weak" point would be the Syncthing relay servers or the Tailscale VPN that I use, but this goes back to ensuring encryption of the database is adequate with a long password, and using an open source synchronization protocol that ideally has been vetted by a trusted third party (or yourself if you're capable)
I used to use Bitwarden, and I highly recommend it. I really appreciated it's ability to integrate with email aliasing solutions to generate new aliases from within the bitwarden UI itself. However, my main reasons for switching were the following
I don't have the money to pay for it (uni student)
I prefer a more self-hosted approach (I will consider using vaultwarden in the future when I have more money)
I wanted to move away from using a browser extension for password management on desktop. KeePass' auto type feature is really good, and a more secure input method than a browser extension autofill.
The only additional advice I have for both recommendations is that I do not think it advisable to add Totp 2fa information to your password manager even if it supports it. I feel like this should be separate, on a single device, and backed up in ~2 locations (one preferably off site). This is really to avoid problems if a device is compromised and if your password manager is compromised, but this is definitely in the more unlikely category I feel.
My only major issues with keepass are the potential for sync conflicts and the some feature differences between platforms. A centralized server config like vault/bitwarden prevents the sync conflict issues, at the cost of having one point of failure. The feature differences problem isn't too great, but autotype doesn't work on Linux if you install with flatpak, and you can't prevent screen capture of the app on Linux (only on Android and Windows from my understanding)
Edit: I also tried gopass, it's really fun to have an entire CLI based password manager, but frankly the state of mobile companion apps are appalling. The Android option only is good if you use a dev version, and the iOS one I thought was just ok. I also dislike the metadata leaking that is inherent to the format, and that PGP is the main form of encryption for the time being (some clients were looking at using AGE at some point). Overall it's a cool but flawed concept, and I feel my other two recommendations are superior.
I understand there’s a bit of of bias here, but I’ve been using 1Password for probably 10+ years and have literally never had a problem. Transferred between multiple devices, added family, etc.
Solid as hell and super reliable.
Selfhost if you want, but I’ll take the reliability.
I do selfhost everything I can, but have chosen not to do that with my passwords. It feels to much all-eggs-in-one-basket-y.
1Password also holds my SSH keys and acts as an ssh-agent on most systems, and I also just found out that you can get secrets from your 1Password vault in Python, which means my PyInfra scripts can use it as well.
The problem you'll face with KeepassXC + any syncing mechanism is that conflicts will happen. Meaning, you'll make a change on your cellphone, your internet has a hiccup or stops working. Then you make a different change on you desktop. When everything is synced, you'll be left with a KeePass conflict file that you need to fix. This might be fine if you immediately notice it, but if you stumble upon a conflict file from a month ago - good luck merging the differences.
Bitwarden client + Vaultwarden has improved my password experience radically. I have phones, laptops, browsers, etc all talking to Vaultwarden. Any conflicts are handled automagically by the clients. Everything "just works" in offline mode (meaning I can add/update credentials while offline and it'll update the server whenever it can - without needing to do any mental gymnastics).
I can share passwords with friends and family without needing to share everything. Plus, as my instance is self-hosted, my family can get "emergency access" (would be a "premium feature") to my passwords if something unfortunate happens to me. Plus, requesting emergency access is pretty easy to do, for non-tech people.
The struggle with KeePass conflicts is real. Put basically the problem occurs when you change a DB on device A, change the same DB on device B, and then you sync them using Syncthing. That might happen for me once a month.
I think I found a process that can reduce the occurrence of conflicts, mostly, not entirely. Instead of one DB that every device shares I have one DB per device (i.e. the KeePass file includes the name of the device). Most of the time this can't possibly cause a conflict because device A only saves to its own DB. The only time it could create a conflict is if I need to pull in an entry that I made on another device. That's a manual process for me and it makes me more aware that a conflict could happen. I make sure the device I'm syncing from is active in Syncthing, and if it is there's almost no chance of a conflict.
A one-way sync option for KeePass would make conflicts almost impossible so I think I'll propose that or work on a plugin for it.
Unfortunately LastPass had some issues over the past years with hacking where encrypted vaults were stolen. Between myself and my friends in tech, I know of a few conpanies that ditched it after that.
For individual/personal use, I'd reccomend KeePass (whatever fork of it is up to date and maintained lately) and using somethung like syncthing to sync it across devices. That may not be super user friendly for non-technical users though, and I'm not sure how well it works with iPhones.
For iOS devices the most up to date client is "Strongbox". I don't think it is FOSS, but is compliant with the standard. It's sadly a freemium app, but is quite well made in my testing. It cannot sync with syncthing, but does support several cloud services, its own service (which uses iCloud), and local file transfer over LAN. They also have a version of the app with all network connectivity removed for security (if you prefer)
Great thread and good recommendations from folks. I use RoboForm for personal and happy with that for many years now, and Bitwarden for my company and happy with it.