mitchcapper / KeePassSync

KeePassSync is a KeePass plugin that synchronizes your database using various online storage providers. This allows two or more computers to easily keep their data in sync.
GNU General Public License v2.0
9 stars 0 forks source link
keepass keepass-plugin

What is KeePassSync?

KeePassSync is a KeePass plugin that synchronizes your database using an online storage provider of your choice, any Rclone/Rsync compat storage, or FTP/SFTP. This allows two or more computers to easily keep their data in sync. It was originally created in 2008 by Shawn Casey, shawn.casey@gmail.com and is currently maintained in this GitHub repository. If you are looking for a provider recommendation consider CloudFlare R2. It is free for KeePass databases up to 10GB.

This plugin will NOT work with KeePass v1.x. Thanks to https://github.com/walterpg/plgx-build-tasks for modernizing the PLGX build process.

Requirements

Changes

See Change Log for details

How to install

To install a plugin, follow these steps:

  1. Download the plgx of the plugin from the releases page at: https://github.com/mitchcapper/KeePassSync/releases
  2. Copy the plgx file to the KeePass Plugins folder
  3. Restart KeePass in order to load the new plugin.

Note: If you have a very-old version of KeePassSync please delete the KeePassSync*.dll from the plugin folder.

To "uninstall" a plugin, delete the the PLGX.

How to use

From the KeePass main menu, select Tools->KeePassSync->Show Options...

You then select your online provider you wish to use. If you don't have an online provider account, you can create an account for the provider by clicking on the link beneath the selection box. Your online account information is securely stored as a KeePass entry. To create the entry, click the "Create Keepass Entry" button. It's important that you not rename this entry after it's created. You can move it around, but keep the same name. The username/password in this entry will be used to connect to the selected online provider.

Once you do that, you can immediately sync with your online provider which will transmit changes from your database and apply them to the server version. How the synchronization is resolved is configurable in the "General" tab of the KeePassSync options. I use "Synchronize". If this is the first time your database is synchronized, your database will be uploaded to the online provider.

Once you go to another computer, you will want to open the database from the online provider. You don't have to create an entry, but you will have to select from the options which provider you want to use. After that, select "Tools->KeePassSync->Open", select which provider you want to use. Input your account details for your online provider, click ok, and a list of previously synchronized databases will appear. Select which database you wish to open locally and declare a storage location for it. From then on, you may open the local database normally and synchronize whenever you want.

For each services specific configuration guide please see that section below.

Services

KeePassSync supports the following services natively (although other users can add other services):

How to compile

This solution is compiled using Visual Studio 2022.

For more information: http://keepass.info/help/v2_dev/plg_index.html

Service Specific Notes

Amazon S3 (and other compatible providers)

Please see the dedicated Amazon S3 instructions.

SFTP/FTP

The FTP provider uses SCP to transfer the files, you will have to manually establish a relationship with your FTP server. Have no fear, it's easy to do. Simply go to the directory you installed KeePassSync and type this:

plink -pw (PASSWORD) (USERNAME)@(HOST) "ls"

...of course substituting PASSWORD, USERNAME, and HOST with appropriate values.

Help!?!

Create an issue on the github issues section