KeePassXC is a password manager, used to save all your username/password combinations in one place and securing them with strong encryption. I won’t be talking here about the advantages of password managers, I will assume that you have heard of them before and know how they are used.
I have been using KeePass for a few years now and I love it. I started using KeePass 2 on Windows, then transitioned over to KeePassX for Linux (which is not developed actively anymore). Now there is KeePassXC, which is a modern community-driven version. It works on Windows, Linux and macOS and I highly recommend it! Also, read the FAQ.
The interesting features of KeePassXC can be seen on the homepage itself, but the most important feature for me was the seamless integration into my Firefox browser. This is how it works: Whenever you open a webpage with a login, Firefox checks if KeePassXC has a saved password for the page. If it finds one, it automatically enters the username and password into the fields on the page.
I will be working with KeePassXC 2.2.1 and Firefox 57+. This version of Firefox starts using WebExtensions, which is just a new type of browser extensions. Older versions of KeePass addons won’t work with new versions of Firefox.
There are two parts which need to be configured for this procedure to work.
Setting up a database
After downloading and installing KeePassXC, start it and open a database. If you already have a database with passwords and set up URLs for your logins, you can skip this section.
If you have never used KeePass, create a new one. Insert your master password, which should be a strong password. This is the password that will protect all your other passwords, so make it long and difficult to guess. After this step, you can start to create new entries.
When you create a new entry, you need to fill at least three fields: username, password and URL. These should be self-explaining. For the URL, put in the webpage where the login should trigger, for example: “https://facebook.com/login”.
Save the database and you are done! In the next step you will configure KeePassHttp.
Set up KeePassHttp
KeePassHttp is a plugin for KeePass. At the time of writing, it is integrated into KeePassXC. Open the settings under “Tools – Settings” and click on “Browser Integration” on the left sidebar. If the option is not enabled yet, click on “Enable KeePassHttp server”.
You can hover over the options for more information on what each of them does.
Congratulations, you passed the first part of this tutorial! Next: Firefox!
Is KeePassHttp secure?
Short answer: As long as your computer is safe, yes.
Long answer: Official README and some GitHub Issues
Firefox and the right plugins
You can skip this paragraph, which talks a bit about the history of Firefox plugins for KeePass and the struggles.
In the old days of Firefox, there was KeepassHttp, the plugin for KeePass 2, which needed a lot of configuration. With KeeFox, a Firefox extension, it nearly worked out-of-the-box, but really only on Windows. Let me tell you, it was awful! Later came PassIFox and chromeIPass for Chrome, which also worked with the Linux ports. They did not come without issues, often breaking functionality after a Firefox or KeePass update. The maintainers of the above plugins often did not merge their patches and updates into the Mozilla extension, which led to weeks without working implementation.
Then, some day, you needed a new extension so that KeePass can read the URL from
Finally, Mozilla switched to Web Extensions, which completely broke the extensions for the newest versions of Firefox.
But, the extensions are still actively developed, and some ingenuous developer built and uploaded a working version of PassIFox, called KeePassHttp-Connector.
Download it here: https://addons.mozilla.org/it/firefox/addon/keepasshttp-connector/
This is the only plugin you need for Firefox 57+. After installing, you can click on the plugin in the Firefox menu bar and click “Connect”.
If the previous steps were correctly executed, KeePassXC will now open a window and ask for confirmation. Enter a name (ex. “Firefox”) and click OK.
Now you are done. Open the web page for one of your logins and the fields should be filled with your credentials!
Not working as described or having problems? Head to GitHub and open an issue or comment below!