Published: 09.11.2020 | Edited: 22.12.2020 | Tags: security

Sync Keepass passwords betwen your computer and phone

The release of the KeepassDX v2.9 brings working autofill in Chrome based browsers in addition to Firefox based ones, here's how to use it on the Android phone with passwords stored on your Arch linux computer.

  • Start by installing required apps on the phone, for instance via F-Droid
  1. KeepassDX
  2. Syncthing
  3. Barcode scanner

KeepassXC

  • At the computer, the folder ~/Sync is the default for Syncthing, we will use it
mkdir ~/Sync
  • Install KeepassXC if not already present
sudo pacman -S keepassxc

Create the database, choose a sufficiently strong master password that you won't forget

  • Place the KeepassXC database file to the sync folder
mv /path/to/your/Passwords.kdbx ~/Sync/Passwords.kdbx

Make sure the database contains at least one recent entry to verify the sync functionality

Syncthing

  • Install Syncthing on the computer
sudo pacman -S syncthing

To make it run automatically, change USERNAME for your user

sudo systemctl enable syncthing@USERNAME.service --now
  • When syncthing is started access the web GUI
xdg-open http://localhost:8384/

Make sure the path is set to ~/Sync under Folders

Folder Path /home/USERNAME/Sync

  • Display the QR code for pairing in the web GUI

Actions > Show ID

If you want autonomous synchronization, enable it as a service

Hamburger > Settings > Behaviour > Start service automatically on boot

  • Pair the devices, optionally fill in the device label before saving

Devices > PLUS icon > QR icon > aim camera at computer screen

  • Back at the computer, close QR code dialog and wait for a device announcement, click Accept

  • Under Sharing tab, check the Sync folder and click Save

  • Back at the phone, wait for the folder annoucement, then click Accept

  • Set the path to some newly created folder where you can navigate, i.e. /storage/emulated/0/Sync

KeepassDX

  • When the files are synchronized, find the database in the KeepassDX in the folder from the previous step

Open existing database > /storate/emulated/0/Sync/Passwords.kdbx

  • Open the database with your chosen Master password

  • Enable Magikeyboard

... > Settings > Form filling > Device keyboard settings > Magikeyboard (KeepasDX)

  • Enable Autofill service

... > Settings > Form filling > Set default autofill service > KeepasDX form autofilling

Done!

You now have bi-directional cross-browser, cross-device password database syncrhonization active what does not stand in your way

Further read