IOProtocolExt Plugin

Copyright © 2011-2013 Dominik Reichl. Distributed under the terms of the GNU General Public License v2.

This plugin adds support for loading/saving files from/to servers using the SCP (Secure CoPy) protocol, SFTP (SSH File Transfer Protocol) and FTPS (FTP over SSH).

KeePass can handle FTP by default (using classes of the .NET framework). However, this plugin replaces the FTP handler to use WinSCP instead. So, if you had problems with the .NET FTP classes, installing IOProtocolExt might solve them.


System Requirements

IOProtocolExt requires Windows 98 SE or higher. Unix-like systems are not supported.


Installation & Configuration

Installation. Copy the two IOProtocolExt* files and the IOProtocolExt_WinSCP folder into the KeePass directory (where KeePass.exe is) and restart KeePass.

Firewall. If you're behind a firewall, you must allow WinSCP.exe and WinSCP.com (in the IOProtocolExt_WinSCP folder) to connect to the server you want to open/save files from/to.

Faster saving. KeePass by default highly ensures the integrity of saved files: when saving, KeePass first opens/downloads the file from the server (to see whether it has changed in the meanwhile by a different user), uploads the new file, and downloads it again to verify that the stored file indeed matches the file that KeePass has sent. Additionally, KeePass uses file transactions (saving to a temporary file first and renaming it afterwards to the actual file, in order to prevent corruption of the actual file when the upload fails for some reason). These precautions can result in a slow saving process. If you want to speed it up (and lose a bit of safety), disable the options 'Verify written file after saving a database' and 'Use file transactions for writing databases' in the KeePass options dialog. This will reduce the saving process to one download and one upload.


Usage

As soon as the plugin is installed once, KeePass can open URLs starting with scp://, sftp://, ftps:// (and of course the ones that were supported already, i.e. http://, https:// and ftp://). To open an URL, go 'File' -> 'Open' -> 'Open URL...'.

URL examples:
sftp://ftp.example.com/public_html/MyDatabase.kdbx
scp://ssh.example.com:2222/KeePass/MyDatabase.kdbx


Acknowledgements

Thanks to Martin Prikryl, the developer of WinSCP, which IOProtocolExt internally uses for communicating with servers. WinSCP is distributed under the terms of the GNU General Public License v2.


Version History


Links

Latest version of IOProtocolExt:
http://keepass.info/plugins.html#ioprotocolext

Support:
https://sourceforge.net/projects/keepass/forums/forum/329221

Feature Requests & Bug Reports:
https://sourceforge.net/projects/keepass/forums/forum/329220

Donate:
http://keepass.info/donate.html