77

Objective: Secure & private password management, prevent anyone from stealing your passwords.

Option 1: Store Keepass PW file in personal cloud service like OneDrive/GoogleDrive/etc , download file, use KeepassXC to Open

Option 2: Use ProtonPass or similar solution like Bitwarden

Option 3: Host a solution like Vaultwarden

Which would do you choose? Are there more options ? Assume strong masterpassword and strong technical skills

top 50 comments
sorted by: hot top controversial new old
[-] hummingbird@lemmy.world 49 points 11 months ago* (last edited 11 months ago)

Keepass on phone, desktop and tablet. Sync serverless via Syncthing.

  • completely private
  • always available when needed
  • no dependency on services which may go away
  • all open source software
  • maximum security
[-] Arkhive 5 points 11 months ago

Yup. Same system here. I really like it.

load more comments (3 replies)
[-] marcos@lemmy.world 28 points 11 months ago* (last edited 11 months ago)

Keepass + syncthing.

Don't let your vault go unencrypted through the cloud.

[-] aBundleOfFerrets@sh.itjust.works 5 points 11 months ago

Your vault is always encrypted very securly except when in RAM. There is no security concern with uploading it directly to the cloud.

load more comments (2 replies)
[-] tlf@feddit.de 23 points 1 year ago

I use option 1 with Syncthing for a distributed cloud solution

load more comments (2 replies)
[-] observantTrapezium@lemmy.ca 23 points 11 months ago

I'm very happy with self-hosted Vaultwarden.

[-] Heavybell@lemmy.world 18 points 11 months ago

Keepass fIle in my own nextcloud instances, synced to my phone so I can also use keepass2android. This way if something happens I at least have another copy of it, beyond my backup system.

[-] creed10@lemmy.world 5 points 11 months ago

that's actually exactly how I have my setup. I just use syncthing to keep everything dynamically backed up as I add passwords. my main login password is memorized and not written down anywhere so I think I'm good

load more comments (1 replies)
[-] ippokratis@lemmy.ml 16 points 11 months ago* (last edited 11 months ago)

Vaultwarden behind mutual tls and reverse proxy and https://github.com/oguzhane/bitwarden-mobile until https://github.com/bitwarden/mobile/pull/2629 is merged

But honestly all services you mentioned are worthy.

Anything that fits your needs imao

load more comments (3 replies)
[-] mojo@lemm.ee 13 points 11 months ago

I used to self host Bitwarden, but didn't want the hassle of securing it and updating it properly and consistently. So I just pay $10 for bitwarden premium and I get to support the company.

[-] Shayeta@feddit.de 12 points 1 year ago

I've used Option 1 with my Nextcloud and it works perfectly. Other options seem more apropriate when you need scale, many user each with their own vault.

[-] captain_obvious@lemmy.wtf 3 points 1 year ago

Stupid me, didnt even remember using nextcloud instead of commercial clouds. I like it

[-] jelloeater85@lemmy.world 11 points 11 months ago

Option 1, KeePassXC plus SyncThing, done. Works amazing on all my devices.

load more comments (1 replies)
[-] jameskirk@startrek.website 11 points 11 months ago

Option 2. It's the most robust. You'll never lose it (provided you have the redundancy), you can use it offline, you can transfer it using a USB pen, it's available in all platforms, including web. I've been using this for 8+ years, on my phone, desktop, laptop, company computer, etc. I store it on a personal cloud (and on each machine, of course, by syncing).

[-] GlassHalfHopeful@lemmy.ca 9 points 1 year ago* (last edited 1 year ago)

I use and prefer option one, but take it a step further in that I host my own cloud service. I used to use Dropbox for years, but we got divorced.

[-] loudWaterEnjoyer@lemmy.dbzer0.com 8 points 11 months ago

Host your own bitwarden

[-] 01011@monero.town 7 points 11 months ago
[-] avidamoeba@lemmy.ca 7 points 11 months ago

Option 2: 1Password

[-] MajinBlayze@lemm.ee 7 points 11 months ago

I used option 1 (KeePass synced to Google Drive) for years. It's nice that you know you have control of your passwords at all times, and as long as you can access your cloud storage account and can download a KeePass app, you can get your passwords. It works reasonably well most of the time, but I was consistently running into edge cases that weren't as smooth as I'd have liked (mostly apps on Android)

I switched to vaultwarden (option 3), and immediately fell in love with things mostly just working. However, since I was hosting it out of my house, I had a bit of a disaster recovery problem. If i had say a fire, I could easily lose all copies of my vault, which would be... suboptimal.

After reviewing the options, I switched to straight bitwarden. I've been happy with the experience, and once I have disposable income, I plan to get pro long enough to have emergency contacts available so my family can still get important passwords in case of the worst.

All options have their pros and cons, but IMO password storage is something that deserves to be given proper consideration.

[-] t0m5k1@lemmy.world 6 points 1 year ago

Bitwarden+vaultwarden, harden the chosen VPS, set SSH to use keys only, then setup fail2ban for webserver and ssh Also consider putting ffsync on it as well for extra browser benefits.

[-] mhzawadi@lemmy.horwood.cloud 3 points 1 year ago

Remember to back that up, and test the back at intervals to make sure they work

[-] Opeth@lemm.ee 7 points 1 year ago

Not watertight ofcourse but I love that the bitwarden clients keep a local copy so if the server ever goes down youve still got access just no sync.

load more comments (1 replies)
load more comments (1 replies)
[-] Chewy7324@discuss.tchncs.de 6 points 11 months ago* (last edited 11 months ago)

Option 3: Vaultwarden + Wireguard.

I don't have to worry about attacks from the internet. And a single wireguard connection on my phone sometimes doesn't even appear on the battery stats.

Edit: Browser addons need valid ssl certificates, which I get by dns challenge.

load more comments (7 replies)
[-] BastingChemina@slrpnk.net 6 points 11 months ago

Bitwarden for me. My password manager is not just for me, it's also a crucial component of my family life so if something happened to me I want my next of kin to be able to access it

For that it needs to be an easy to access solution.

load more comments (2 replies)
[-] Lightning66@lemmy.world 6 points 11 months ago

Vaultwarden. And take regular back ups. I don't trust my passwords to be safe anywhere other than my own servers. The chances of my server being hacked is very less.

[-] utopianfiat@lemmy.world 6 points 1 year ago
[-] TechieDamien@lemmy.ml 6 points 11 months ago

Option 4: levy existing tools such as gpg and git using something like pass. That way, you are keeping things simple but it requires more technical knowledge. Depending on your threat model, you may want to invest in a hardware security key such as a yubikey which works well with both gpg and ssh.

[-] KairuByte@lemmy.dbzer0.com 4 points 11 months ago

Why use tools not meant for password management, when alternative tools explicitly meant for password management, which have similar levels of security, work just fine?

You’re essentially saying “instead of driving down the road, I like to ride my bike with rollerblades.”

load more comments (4 replies)
[-] Decronym@lemmy.decronym.xyz 6 points 11 months ago* (last edited 11 months ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
DNS Domain Name Service/System
Git Popular version control system, primarily for code
IP Internet Protocol
NAS Network-Attached Storage
SSH Secure Shell for remote terminal access
VPN Virtual Private Network
VPS Virtual Private Server (opposed to shared hosting)

7 acronyms in this thread; the most compressed thread commented on today has 4 acronyms.

[Thread #173 for this sub, first seen 28th Sep 2023, 18:45] [FAQ] [Full list] [Contact] [Source code]

[-] thesmokingman@programming.dev 5 points 11 months ago

If you work for a company that uses a reasonably good manager such as BitWarden, you should look into whether or not you get it for free or reduced. For the moment, at least, I use Bitwarden because I get it for free (and a families sub to boot!). I know 1password does the same; others might too. Do make sure you’re okay with paying the full price for a period of time in case you get laid off and have to migrate. Also make sure you’re okay with any compromises you make for the price tag. There is no price tag that makes LastPass acceptable, for example.

[-] Arkhive 5 points 11 months ago

I do keypassXC and Syncthing. It’s cross platform with only a couple bucks needed for lifetime access to all all necessary features depending on platform. Besides I use Syncthing for a bunch of other stuff as well, so it fits right into my flow. I’m considering moving to a command line tool simply called Pass, and still syncing with Syncthing, but I’ve yet to pull the trigger on that switch yet.

[-] butter@midwest.social 3 points 11 months ago

I also do keepassxc, dx on Android, and syncthing to keep them updated. What is it you paid for?

load more comments (1 replies)
[-] flubba86@lemmy.world 5 points 11 months ago

I use option 1, I host my keepass db file on a free secure nextcloud storage account, and use nextcloud client to keep it synced to all my devices. It's available offline on all of my devices too, in case the server goes down. I use KeepassXC on my PCs and KeepassDX on Android, to open the files.

[-] Boring@lemmy.ml 5 points 11 months ago* (last edited 11 months ago)

I use keepassXC and sync across my devices with nextcloud and VPN to my home network with wire guard and this setup has never failed me.

I've toyed around with passbolt, and I really want to try because it just looks cool to me, but I keep having trouble with it playing nice with my reverse proxy.

My personal preference is hosting it myself on my own server and using a VPN to get to it. It gives me peace of mind because I'm not a big enough target for someone to try that hard to get my passwords and I'm not exposed to bitwarden or dashlane getting breached.

[-] Mio@feddit.nu 4 points 11 months ago

Keepassxc + syncthing to phone in read only mode and to other machine. So 3 copies on different machine, while one of them is on me

[-] Curious_Canid@lemmy.ca 4 points 11 months ago

I use option #1. Each instance of KeePass maintains a local file, but updates them automatically whenever it opens or closes. I also back up the file to my personal server automatically, so I have a copy even if the cloud service fails for some reason.

This setup has been serving me well for a long time.

[-] IsoKiero@sopuli.xyz 4 points 11 months ago

Personally I'm running option 2 with self hosted bitwarden. Sure, it's a bit more effort to make it work and while it's not perfect that's what I've ended up with. The most convinient thing with that is that I can access my passwords whenever I have internet access with a browser without any need to install any software on the thing I'm using. Obviously that doesn't mean that I'll happily access the vault with whatever free-to-use endpoint I happen to encounter but it also gives an option to access whatever even if I'm borrowing a computer from a (trusted) friend and once I close the private window I used it's gone. And even more often, when I'm accessing my credentials from a family shared computer, I can just log out and I don't need to do any cleanup on the host which might get infected by our kids browsing something malicious or some other breach of security.

With keepassxc I'd need to worry about the database file, which is a bit different than logging out and closing browser. Your usage patterns might be different, but web-based hosting solution works for me.

[-] ninekeysdown@lemmy.world 4 points 11 months ago

Having gone through all of these options I have thoughts.

Option 1 sounds awesome but will almost always leave you in a situation where you can’t get your logins when you need them in an emergency. You’re always depending on a chain of things. Depending on your situation it may not be a big deal. But this option sucks, imho.

Option 3 sounds amazing because it gives you the control of option 1 with the ease of option 2. But… unless you’re the kind of person that enjoys hosting their own email server you really don’t want this option. Fun in theory but not so much when you realize you now have a 3rd job.

So that leaves option 2. It’s great but you’re depending on someone else. This is the option that most people should choose too, imo. However it lacks some of control and trust that option 1 and 3 have.

Sooooo, that leaves us with option 4, the onion option. Breaking up your data into layers and using different tools for them.

So first and foremost I want my password storage to always be available. For me that means Bitwarden, (though I’m evaluating protonpass currently.) this is the outer layer. Things that can and should be stored here are stored here. I use it to manage web logins and 2FA tokens for those sites. I also use it for storing autofill data eg credit cards. I don’t use it to hold things like my gpg keys.

Next layer is pass. This layer is mostly things that I need to have logins or other information on headless/remote servers. Think self hosted lab services like a mariadb/postgres or backups. This is easily kept in sync with git. This is the layer where I’ll store things like gpg keys and other VERY sensitive data that I need to sync around.

For other things on this layer I use ansible vault. This is mostly used for anything where I need automation and/or I don’t want too or can’t easily use my yubikey for gpg. This is kept in sync with git as well.

Lastly the inner layer I use AGE or PGP. This is for anything else I can’t use the above for. So my Bitwarden export/backups are in this level too. I also use this layer for things that I need to use to bootstrap a system. Think sensitive dotfiles. This can be kept in sync with git as well.

Git is the best sync solution imo because you can store it anywhere and use anything to sync that repo. Just throw that raw repo on Dropbox, use ssh with it on a vps, rsync it, etc. you’ll always have it somewhere and on something.

My work flow goes like this Bitwarden -> Apple/Google/Firefox -> Pass -> Ansible -> AGE/PGP

This allows for syncing things as needed and how needed. It also gives you the option of having an encrypted text file if/when everything fails.

[-] dandroid@dandroid.app 5 points 11 months ago

Option 3 sounds amazing because it gives you the control of option 1 with the ease of option 2. But… unless you’re the kind of person that enjoys hosting their own email server you really don’t want this option. Fun in theory but not so much when you realize you now have a 3rd job.

I currently host Vaultwarden and use the Bitwarden Android app and browser plugin. What does this have to do with a mail server? I don't host a mail server and it works fine for me (tried to host a mail server, but got blocked by ISP and would need a business account to request them to unblock it, which costs double what I currently pay for the same speeds).

[-] ninekeysdown@lemmy.world 3 points 11 months ago

It wasn’t meant to be taken literally. What I mean by that is if you’re the type of person who enjoys the upkeep of something as critical (though maybe not so much theses days) as email then go ahead and host your own password vault service. I’m not saying it shouldn’t be done and couldn’t be done.

My point is that there’s going to be times where you NEED your password vault and having it be down because something happened at home or your VPS had a problem is a really shitty situation to be in.

Of course there’s work arounds and edge cases to everything too. For me planning and building for those possibilities came down to what can I do that is the most reliable, simple, and boring. Because that’s what most people need with anything that is critical.

IMHO much like backup, password storage should be reliable, simple, and boring. Kinda like flushing a toilet or flipping a light switch.

[-] dandroid@dandroid.app 3 points 11 months ago* (last edited 11 months ago)

Oh, got it. That makes sense. Though if I remember correctly, Bitwarden makes a local copy for you, so even if your device doesn't have internet or your backend is down, you should still be able to enter your passwords, just not create new passwords or sync new passwords from other devices.

I have only been using Vaultwarden/Bitwarden for a short time, but I haven't had any issues thus far. My house is pretty resistant to power outages (solar + 12 hour battery backup for whole house with no sun), but if something happened with my ISP, obviously there's nothing I could do. I haven't tested that case yet. I probably should, though.

load more comments (1 replies)
[-] shasta@lemm.ee 4 points 11 months ago

I've been happy with Keeper

load more comments (2 replies)
[-] Sharp312@lemmy.one 4 points 11 months ago

Option 2 would be your best bet. Great balance between security and convenience. Bitwarden is my go to because afaik it stores every detail encrypted (unlike mainstream PWs) and when you open your vault, the database gets transferred to your pc and is decrypted locally. Its essentially the same as option 1, just 1000x more convenient.

Id only selfhost vaultwarden if you want bitwardens premium features, if you dont then youre maintaining a service which you wouldnt really need. Not to mention if you selfhost on a machine on your network, you have to deal with exposing that machine to the internet, not really worth it imo.

[-] DudeDudenson@lemmings.world 3 points 11 months ago

I never understood how storing your password in an unified storage is better than just remembering it yourself

[-] Black616Angel@feddit.de 11 points 11 months ago

Pease be satire! 😐

[-] peter@feddit.uk 5 points 11 months ago

Because humans are generally unable to remember passwords varied enough to be secure.

load more comments
view more: next ›
this post was submitted on 28 Sep 2023
77 points (100.0% liked)

Selfhosted

39282 readers
147 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