Using Bitvise SSH Client with authentication agents

Bitvise SSH Client currently does not implement an authentication agent of its own.

The SSH Client can:

  • Access client authentication keys provided by Pageant, the PuTTY authentication agent.

  • Access client authentication keys provided by a Cygwin-based OpenSSH authentication agent.

  • Forward access to either agent type to server-side software in an SSH terminal session.

Using Bitvise SSH Client with Pageant

To use Bitvise SSH Client with the PuTTY authentication agent, Pageant:

  1. Start Pageant.

  2. Make sure that one or more keys have been added in Pageant.

  3. Run Bitvise SSH Client in any manner.

  4. Observe that Pageant keys are now available in the SSH Client's Client key manager. The SSH Client can use these keys for user authentication.

  5. Server-side software can access Pageant keys inside an SSH terminal shell if you use the setting Enable authentication agent forwarding on the Terminal tab in the main SSH Client window.

If using the command line clients sftpc, stermc, stnlc or sexec:

  • To use a Pageant key for client authentication, use the command line parameter -pk=t1 for the key in PuTTY slot 1. Similarly, use -pk=t2 for PuTTY slot 2, etc.

    Alternately, use -pk=a for any key the server will accept, including keys provided by authentication agents.

  • With sexec and stermc, to allow server-side software to access the authentication agent, use the command line parameter -agentFwd=y.

Using Bitvise SSH Client with Cygwin OpenSSH

To use Bitvise SSH Client with the Cygwin OpenSSH authentication agent, ssh-agent:

  1. Open a Cygwin bash shell.

  2. In the bash shell, run the following to start ssh-agent, add keys to the agent, and start the SSH Client:

    eval $(ssh-agent) ssh-add BvSsh

    The SSH Client needs to be started in this way because it needs the environment variable SSH_AUTH_SOCK which is created by the eval command.

    If the SSH Client is started in a different way, for example by clicking its icon, it will not have access to the environment variables and will not be able to locate the OpenSSH agent.

  3. Observe that OpenSSH keys are now available in the SSH Client's Client key manager. The SSH Client can use these keys for user authentication.

  4. Server-side software can access OpenSSH agent keys inside an SSH terminal shell if you use the setting Enable authentication agent forwarding on the Terminal tab in the main SSH Client window.

If using the command line clients sftpc, stermc, stnlc or sexec:

  • To use an ssh-agent key for client authentication, use the command line parameter -pk=o1 for the key in OpenSSH slot 1. Similarly, use -pk=o2 for OpenSSH slot 2, etc.

    Alternately, use -pk=a for any key the server will accept, including keys provided by authentication agents.

  • With sexec and stermc, to allow server-side software to access the authentication agent, use the command line parameter -agentFwd=y.

Cannot use OpenSSH agent in Windows 10

Bitvise SSH Client is currently unable to use the OpenSSH agent that comes with Windows 10. This version of the OpenSSH agent runs under the Windows Subsystem for Linux and uses Unix sockets in a way that's inaccessible to native Windows applications. Since the Windows Subsystem for Linux is still in development, Microsoft might implement changes that could make these Unix sockets accessible for a future SSH Client version.