sshmitm.server package

class sshmitm.server.SSHProxyServer(listen_port: int, *, key_file: ~typing.Optional[str] = None, key_algorithm: str = 'rsa', key_length: int = 2048, ssh_interface: ~typing.Type[~sshmitm.forwarders.ssh.SSHBaseForwarder] = <class 'sshmitm.forwarders.ssh.SSHForwarder'>, scp_interface: ~typing.Type[~sshmitm.forwarders.scp.SCPBaseForwarder] = <class 'sshmitm.forwarders.scp.SCPForwarder'>, sftp_interface: ~typing.Type[~sshmitm.interfaces.sftp.BaseSFTPServerInterface] = <class 'sshmitm.interfaces.sftp.SFTPProxyServerInterface'>, sftp_handler: ~typing.Type[~sshmitm.forwarders.sftp.SFTPHandlerBasePlugin] = <class 'sshmitm.forwarders.sftp.SFTPHandlerPlugin'>, server_tunnel_interface: ~typing.Type[~sshmitm.forwarders.tunnel.RemotePortForwardingForwarder] = <class 'sshmitm.forwarders.tunnel.RemotePortForwardingForwarder'>, client_tunnel_interface: ~typing.Type[~sshmitm.forwarders.tunnel.LocalPortForwardingForwarder] = <class 'sshmitm.forwarders.tunnel.LocalPortForwardingForwarder'>, authentication_interface: ~typing.Type[~sshmitm.interfaces.server.BaseServerInterface] = <class 'sshmitm.interfaces.server.ServerInterface'>, authenticator: ~typing.Type[~sshmitm.authentication.Authenticator] = <class 'sshmitm.authentication.AuthenticatorPassThrough'>, transparent: bool = False, session_class: ~typing.Type[~sshmitm.session.Session] = <class 'sshmitm.session.Session'>, banner_name: ~typing.Optional[str] = None)

Bases: object

SELECT_TIMEOUT = 0.5
create_session(client: socket, addr: Union[Tuple[str, int], Tuple[str, int, int, int]], remoteaddr: Union[Tuple[str, int], Tuple[str, int, int, int]]) None
generate_host_key() None
property host_key: Optional[PKey]
print_serverinfo(json_log: bool = False) None
start() None

Submodules