Langue: en

Version: DECEMBER 2007 (debian - 07/07/09)

Section: 8 (Commandes administrateur)


pssh - sshproxy SSH client (remote login program)


pssh [ssh-options --] [user@]site [remote command]

pssh [ssh-options --] [sshproxy-options]


pssh (sshproxy client) is a program to logging into a remote machine through a special proxy called sshproxy. It is actually a bash(1) wrapper around the official ssh(1) client.

You can give options to the official ssh client by putting them on the beginning of the command line and ending them by the special option '--'. All remaining options will be passed to the sshproxy server. Note that options passed before '--' will apply to the connection to the sshproxyd(8) daemon, not to the remote site.

To give the address of the sshproxy server, you may set some environment variables, or copy and edit the pssh script. See the section ENVIRONMENT below.

To connect to a remote host, you need to know its symbolic name (see --list-sites option below), and put it on the command line as user@site. user is the remote username, and site is the symbolic name of the remote host. If user is not given, a default user will be chosen by the proxy - this differs from ssh(1) which use the currently logged in user (id -un).

To run a single remote command, put the command and its arguments after user@site, like you would do with ssh(1).


NOTE: These options are parsed and handled by the sshproxyd daemon program, not by pssh itself. So the list of options available to a user may change in function of the sshproxyd settings and/or loaded plugins.

You may have to set the SSHPROXY_HOST environment variable to be able to connect to an sshproxyd server.


Show a short help message and give the list of plugin enabled options.

--admin cmd

Run cmd as if it where run in the sshproxy console.


Connect to sshproxy and open the administrative console. This is the default when no option or user@site is given.

--list-sites (-l)

List all available site the client can logging into.



The wrapper script around ssh(1) to connect to sshproxy.


The following environment variables may be set in the user's .bashrc or equivalent.

The host on which the sshproxyd(8) daemon runs. Defaults to localhost.
The host port on which the sshproxyd(8) daemon runs. Defaults to 2242.
The username to authenticate on the sshproxyd(8) daemon. Defaults to $USER, or admin if $USER is not set or empty.


In case of problem connecting to the sshproxyd(8) server, one can set the environment variable $verbose to check the generated ssh(1) command line.


To connect to the sshproxy console as admin:

    USER=admin pssh

To connect to the remote site webserver as the user webmaster:

    pssh webmaster@webserver

To restart the apache2(8) server on webserver:

    pssh webmaster@webserver sudo /etc/init.d/apache2 restart

To have X11 forwarding in a shell session:

    pssh -Y -- david@desktop

To use a specific ssh key:

    pssh -i $HOME/.ssh/sshproxy_identity -- root@db_host


The ssh(1) -l (login_name) and -p (port) options does not do anything, since they are overwritten by pssh.

The openssh VPN feature is not yet supported.

See sshproxyd(8)/BUGS for the current limitations and features of sshproxy.

You can report any bug found on the sshproxy mailing list:



David Guerizec <>


sshproxyd(8), pscp(1), sshproxy-setup(1), sshproxy.ini(5),

The sshproxy home page: <>

The sshproxy online documentation: