Interface module for the SSH application.
Type definitions that are used more than once in this module and/or abstractions to indicate the intended use of the data type:
Closes an SSH connection.
Connects to an SSH server. No channel is started. This is done
by calling
Options are:
Sets the user directory i.e. the directory containing
ssh configuration files for the user such as
If the user dsa key is protected by a passphrase it can be supplied with this option.
If the user rsa key is protected by a passphrase it can be supplied with this option.
When true hosts are added to the
file
If false disables the client to connect to the server
if any user interaction is needed such as accepting that
the server will be added to the
Sets the preferred public key algorithm to use for user
authentication. If the the preferred algorithm fails for
some reason, the other algorithm is tried. The default is
to try
List of public key algorithms to try to use, 'ssh-rsa' and 'ssh-dss' available.
Will override
Sets a timeout on the transport layer
connection. Defaults to
Provides a user name. If this option is not given, ssh
reads from the environment (
Provide a password for password authentication. If this option is not given, the user will be asked for a password if the password authentication method is attempted.
Module implementing the behaviour
If true, the client will not print out anything on authorization.
Allow an existing file descriptor to be used (simply passed on to the transport protocol).
Provide, in bytes, when rekeying should be initiated, defaults to one time each GB and one time per hour.
Sets a timeout on connection when no channels are active, default is infinity
Retrieves information about a connection.
Starts a server listening for SSH connections on the given port.
Options are:
Sets the user directory i.e. the directory containing
ssh configuration files for the user such as
Sets the system directory, containing the host key files
that identifies the host keys for ssh. The default is
Comma separated string that determines which
authentication methodes that the server should support and
in what order they will be tried. Defaults to
Provide passwords for password authentication.They will be used when someone tries to connect to the server and public key user authentication fails. The option provides a list of valid user names and the corresponding password.
Provide a global password that will authenticate any user. From a security perspective this option makes the server very vulnerable.
Provide a function for password validation. This is called
with user and password as strings, and should return
Max time in milliseconds for the authentication negotiation. The default value is 2 minutes.
If set to false (the default value), only one login is handled a time. If set to true, an unlimited logins will be allowed simultanously. Note that this affects only the connections with authentication in progress, not the already authenticated connections.
Do not enable parallel_logins without protecting the server by other means like a firewall. If set to true, there is no protection against dos attacs.
Module implementing the behaviour
Allow an existing file-descriptor to be used (simply passed on to the transport protocol).
Provide a fun to implement your own logging when a user fails to authenticate.
Provide a fun to implement your own logging when a user authenticates to the server.
Provide a fun to implement your own logging when a user disconnects from the server.
Starts an interactive shell via an SSH server on the
given
Utility function that starts crypto, public_key and the SSH
application. Defult type is temporary.
See also
Stops the SSH application. See also
Stops the listener and all connections started by the listener.
Stops the listener, but leaves existing connections started by the listener up and running.