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.
The following environment variables may be set in the user's .bashrc or equivalent.
In case of problem connecting to the sshproxyd(8) server, one can set
the environment variable $verbose to check the generated ssh(1)
To connect to the sshproxy console as admin:
To connect to the remote site webserver as the user webmaster:
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:
The sshproxy home page: <http://sshproxy-project.org/>
The sshproxy online documentation: