PuttyAgent now supports openssh/cygwin/msys

Aus NOBAQ
Version vom 10. Mai 2014, 23:23 Uhr von Niki (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

For a long time, I extensively used the plugin "PuttyAgent" for KeePass as an SSH key agent. However, unfortunately the protocol (at least the transfer protocol) of PuTTYs implementation and openssh (cygwin, MSYS) are not compatible. So far I avoided openssh and used wrappers to plink.exe (e.g., for rsync or unison). But that becomes more and more a pain. And finally, with git and git-annex I gave up: I looked for putty agent to ssh-agent gateways and they indeed exist. However, another application residing in RAM makes it unhandy. So I decided to just add the support to PuttyAgent. The newest version of the plugin is available here: http://keepass.info/plugins.html


First of all, to into the plugin settings and enable the support. It's disabled by default. You need to supply a path for the socket file. The file must not exist and KeePass must have write permissions to create the socket file. As example, take c:\usr\apps\KeePass\keepass.sock

PuttyAgentCygEnable.png

Then, go to control panel, User Accounts and select "Change my environment variables". Add the variable $SSH_AUTH_SOCK:

PuttyAgentCygAddSockVar.png

Please note that you can just use Windows path (no /cygdrive/c/... or /c/... required). Cygwin and MSYS are able to convert this path appropriately. And this way, the socket can be shared between cygwin and MSYS applications (e.g. git) at the same time!

Finally, open a cygwin terminal, check if the environment variable is set and points to the correct file and test the connection:

PuttyAgentCygTest.png

Meine Werkzeuge