ProxyCommand support

class paramiko.proxy.ProxyCommand(command_line)

Wraps a subprocess running ProxyCommand-driven programs.

This class implements a the socket-like interface needed by the Transport and Packetizer classes. Using this class instead of a regular socket makes it possible to talk with a Popen’d command that will proxy traffic between the client and a server hosted in another machine.

Instances of this class may be used as context managers.


Create a new CommandProxy instance. The instance created by this class can be passed as an argument to the Transport class.

Parameters:command_line (str) – the command that should be executed and used as the proxy.

Read from the standard output of the forked program.

Parameters:size (int) – how many chars should be read
Returns:the string of bytes read, which may be shorter than requested

Write the content received from the SSH client to the standard input of the forked command.

Parameters:content (str) – string to be sent to the forked command