ProxyCommand support — Paramiko documentation

# `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.

  `__init__`(command_line)

    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.

  `recv`(size)

    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

  `send`(content)

    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