sshmitm.server package
- class sshmitm.server.HostKeyEntry(key, path, was_generated)
Bases:
object- Parameters:
key (
PKey)path (
Path|None)was_generated (
bool)
- __init__(key, path, was_generated)
- Parameters:
key (
PKey)path (
Path|None)was_generated (
bool)
- key: PKey
- path: Path | None
- was_generated: bool
- class sshmitm.server.SSHProxyServer(listen_address, listen_port, *, key_algorithms=None, key_file_rsa=None, key_file_ecdsa=None, key_file_ed25519=None, key_rsa_length=2048, ssh_interface=<class 'sshmitm.forwarders.ssh.SSHForwarder'>, scp_interface=<class 'sshmitm.forwarders.scp.SCPForwarder'>, netconf_interface=<class 'sshmitm.forwarders.netconf.NetconfForwarder'>, powershell_interface=<class 'sshmitm.forwarders.powershell.PowerShellForwarder'>, sftp_interface=<class 'sshmitm.interfaces.sftp.SFTPProxyServerInterface'>, sftp_handler=<class 'sshmitm.forwarders.sftp.SFTPHandlerPlugin'>, server_tunnel_interface=<class 'sshmitm.forwarders.tunnel.RemotePortForwardingForwarder'>, client_tunnel_interface=<class 'sshmitm.forwarders.tunnel.LocalPortForwardingForwarder'>, authentication_interface=<class 'sshmitm.interfaces.server.ServerInterface'>, authenticator=<class 'sshmitm.authentication.AuthenticatorPassThrough'>, transparent=False, session_class=<class 'sshmitm.session.Session'>, agent_forwarder=<class 'sshmitm.forwarders.agent.AgentForwarder'>, banner_name=None, debug=False)
Bases:
object- Parameters:
listen_address (
str)listen_port (
int)key_algorithms (
list[str] |None, default:None)key_file_rsa (
str|None, default:None)key_file_ecdsa (
str|None, default:None)key_file_ed25519 (
str|None, default:None)key_rsa_length (
int, default:2048)ssh_interface (
type[SSHBaseForwarder], default:<class 'sshmitm.forwarders.ssh.SSHForwarder'>)scp_interface (
type[SCPBaseForwarder], default:<class 'sshmitm.forwarders.scp.SCPForwarder'>)netconf_interface (
type[NetconfBaseForwarder], default:<class 'sshmitm.forwarders.netconf.NetconfForwarder'>)powershell_interface (
type[PowerShellBaseForwarder], default:<class 'sshmitm.forwarders.powershell.PowerShellForwarder'>)sftp_interface (
type[BaseSFTPServerInterface], default:<class 'sshmitm.interfaces.sftp.SFTPProxyServerInterface'>)sftp_handler (
type[SFTPHandlerBasePlugin], default:<class 'sshmitm.forwarders.sftp.SFTPHandlerPlugin'>)server_tunnel_interface (
type[RemotePortForwardingForwarder], default:<class 'sshmitm.forwarders.tunnel.RemotePortForwardingForwarder'>)client_tunnel_interface (
type[LocalPortForwardingForwarder], default:<class 'sshmitm.forwarders.tunnel.LocalPortForwardingForwarder'>)authentication_interface (
type[BaseServerInterface], default:<class 'sshmitm.interfaces.server.ServerInterface'>)authenticator (
type[Authenticator], default:<class 'sshmitm.authentication.AuthenticatorPassThrough'>)transparent (
bool, default:False)session_class (
type[Session], default:<class 'sshmitm.session.Session'>)agent_forwarder (
type[AgentBaseForwarder], default:<class 'sshmitm.forwarders.agent.AgentForwarder'>)banner_name (
str|None, default:None)debug (
bool, default:False)
- SELECT_TIMEOUT = 0.5
- __init__(listen_address, listen_port, *, key_algorithms=None, key_file_rsa=None, key_file_ecdsa=None, key_file_ed25519=None, key_rsa_length=2048, ssh_interface=<class 'sshmitm.forwarders.ssh.SSHForwarder'>, scp_interface=<class 'sshmitm.forwarders.scp.SCPForwarder'>, netconf_interface=<class 'sshmitm.forwarders.netconf.NetconfForwarder'>, powershell_interface=<class 'sshmitm.forwarders.powershell.PowerShellForwarder'>, sftp_interface=<class 'sshmitm.interfaces.sftp.SFTPProxyServerInterface'>, sftp_handler=<class 'sshmitm.forwarders.sftp.SFTPHandlerPlugin'>, server_tunnel_interface=<class 'sshmitm.forwarders.tunnel.RemotePortForwardingForwarder'>, client_tunnel_interface=<class 'sshmitm.forwarders.tunnel.LocalPortForwardingForwarder'>, authentication_interface=<class 'sshmitm.interfaces.server.ServerInterface'>, authenticator=<class 'sshmitm.authentication.AuthenticatorPassThrough'>, transparent=False, session_class=<class 'sshmitm.session.Session'>, agent_forwarder=<class 'sshmitm.forwarders.agent.AgentForwarder'>, banner_name=None, debug=False)
- Parameters:
listen_address (
str)listen_port (
int)key_algorithms (
list[str] |None, default:None)key_file_rsa (
str|None, default:None)key_file_ecdsa (
str|None, default:None)key_file_ed25519 (
str|None, default:None)key_rsa_length (
int, default:2048)ssh_interface (
type[SSHBaseForwarder], default:<class 'sshmitm.forwarders.ssh.SSHForwarder'>)scp_interface (
type[SCPBaseForwarder], default:<class 'sshmitm.forwarders.scp.SCPForwarder'>)netconf_interface (
type[NetconfBaseForwarder], default:<class 'sshmitm.forwarders.netconf.NetconfForwarder'>)powershell_interface (
type[PowerShellBaseForwarder], default:<class 'sshmitm.forwarders.powershell.PowerShellForwarder'>)sftp_interface (
type[BaseSFTPServerInterface], default:<class 'sshmitm.interfaces.sftp.SFTPProxyServerInterface'>)sftp_handler (
type[SFTPHandlerBasePlugin], default:<class 'sshmitm.forwarders.sftp.SFTPHandlerPlugin'>)server_tunnel_interface (
type[RemotePortForwardingForwarder], default:<class 'sshmitm.forwarders.tunnel.RemotePortForwardingForwarder'>)client_tunnel_interface (
type[LocalPortForwardingForwarder], default:<class 'sshmitm.forwarders.tunnel.LocalPortForwardingForwarder'>)authentication_interface (
type[BaseServerInterface], default:<class 'sshmitm.interfaces.server.ServerInterface'>)authenticator (
type[Authenticator], default:<class 'sshmitm.authentication.AuthenticatorPassThrough'>)transparent (
bool, default:False)session_class (
type[Session], default:<class 'sshmitm.session.Session'>)agent_forwarder (
type[AgentBaseForwarder], default:<class 'sshmitm.forwarders.agent.AgentForwarder'>)banner_name (
str|None, default:None)debug (
bool, default:False)
- agent_forwarder: type[AgentBaseForwarder]
- authentication_interface: type[BaseServerInterface]
- authenticator: type[Authenticator]
- banner_name: str | None
- client_tunnel_interface: type[LocalPortForwardingForwarder]
- create_agent_forwarder(session)
- Parameters:
session (
Session)- Return type:
- create_agent_local_socket(transport)
- Parameters:
transport (
Transport)- Return type:
- create_agent_proxy(transport)
- Parameters:
transport (
Transport)- Return type:
- create_session(client, addr, remoteaddr)
- Parameters:
client (
socket)addr (
tuple[str,int] |tuple[str,int,int,int])remoteaddr (
tuple[str,int] |tuple[str,int,int,int])
- Return type:
None
- debug: bool
- property host_keys: list[PKey]
- netconf_interface: type[NetconfBaseForwarder]
- powershell_interface: type[PowerShellBaseForwarder]
- print_serverinfo(json_log=False)
- Parameters:
json_log (
bool, default:False)- Return type:
None
- register_subsystem_handlers(transport, session)
- Parameters:
transport (
Transport)session (
Session)
- Return type:
None
- scp_interface: type[SCPBaseForwarder]
- server_tunnel_interface: type[RemotePortForwardingForwarder]
- session_class: type[Session]
- setup_host_keys()
- Return type:
None
- setup_transport_hooks(session)
- Parameters:
session (
Session)- Return type:
None
- sftp_handler: type[SFTPHandlerBasePlugin]
- sftp_interface: type[BaseSFTPServerInterface]
- ssh_interface: type[SSHBaseForwarder]
- start()
- Return type:
None
- transparent: bool