

Once that's ready, it's time to set up HTTP authentication, since we don't want just anyone accessing our password database, do we? I'm storing my info in a file called. Doing so is beyond the scope of this article, but you can start by searching for apache virtualhost setup, and then look up Let's Encrypt and certbot for free TLS certificates. You will first need to set up a new VirtualHost as well as HTTPS. We can fix those two sFTP-related problems by using WebDAV, so let's get going! I'm using Apache on CentOS for my web server, so if you want to use nginx, lighttpd, or whatever, you'll need to make adjustments accordingly. KeePassXC doesn't have plugins (yet?), so the syncing options are trickier.

Sure, there are solutions like LastPass, but I have an inherent mistrust of a closed-source, cloud-based password manager.

But what about a scenario wherein two (or more) people want to access/change the database simultaneously? If you're just using something like Dropbox to sync the database, then you will likely end up with file conflicts and lost data. Indeed, I recommend it to anyone in a single-user situation. Toss in something like Keepass2Android, and you have mobile access as well, all for free. Just stick the database on Dropbox, Google Drive, or use Syncthing, and voila, you can access your password database everywhere. It works brilliantly, especially for a single user. For years I used KeePass to manage my ever-growing number of passwords.
