Copyright © 2011-2023 Dominik Reichl. Distributed under the terms of the GNU General Public License v2.
This plugin adds support for loading/saving files from/to servers via SCP, SFTP and FTPS.
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 have problems with the .NET FTP classes, installing IOProtocolExt might solve them.
IOProtocolExt requires Windows XP or newer. Unix-like systems are not supported.
Installation.
Copy the IOProtocolExt*
files and the IOProtocolExt_WinSCP
folder into the Plugins
folder (in the KeePass application directory)
and restart KeePass.
Firewall.
If you are 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 ensures the integrity of saved files: when saving, KeePass first opens/downloads the file from the server (to see whether it has been 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 ('Tools' → 'Options' → tab 'Advanced'). This will reduce the saving process to one download and one upload.
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 a URL, go 'File' → 'Open' → 'Open URL...'.
URL examples:
sftp://ftp.example.com/public_html/Database.kdbx
scp://ssh.example.com:2222/KeePass/Database.kdbx
Advanced connection options (like timeout, expected host key, etc.) can be specified on the 'Advanced' tab of the 'Open From URL' dialog. For detailed descriptions of the options, see the WinSCP documentation.
FRITZ!Box NAS. If you try to load/save files from/to a FRITZ!Box NAS and this fails, try turning on the option 'Enable FRITZ!Box NAS workaround' (on the 'Advanced' tab of the 'Open From URL' dialog).
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.
WebRequest.RegisterPrefix
method of .NET 4.0.cd
commands anymore.open
script command compatibility
(parameter without quotes).-debug
command line
parameter, IOProtocolExt now shows all WinSCP scripts before executing them.Latest version of IOProtocolExt:
https://keepass.info/plugins.html#ioprotocolext
Support:
https://sourceforge.net/p/keepass/discussion/329221/
Feature requests & bug reports:
https://sourceforge.net/p/keepass/discussion/329220/
Donate:
https://keepass.info/donate.html