NAME
Net::CLI::Interact::Transport::SSH - SSH based CLI connection
DESCRIPTION
This module provides a wrapped instance of an SSH client for use by Net::CLI::Interact.
INTERFACE
app
On Windows platforms you must download the plink.exe
program, and pass its location to the library in this parameter. On other platforms, this defaults to ssh
(openssh).
runtime_options
Based on the connect_options
hash provided to Net::CLI::Interact on construction, selects and formats parameters to provide to app
on the command line. Supported attributes:
- host (required)
-
Host name or IP address of the host to which the SSH application is to connect. Alternatively you can pass a value of the form
user@host
, but it's probably better to use the separateusername
parameter instead. - username
-
Optionally pass in the username for the SSH connection, otherwise the SSH client defaults to the current user's username. When using this option, you should obviously only pass the host name to
host
. - ignore_host_checks
-
Under normal interactive use
openssh
tracks the identity of connected hosts and verifies these identities upon each connection. In automation this behaviour can be irritating because it is interactive.This option, enabled by default, causes
openssh
to skip or ignore this host identity verification. This means the default setting is less secure, but also less likely to trip you up. It is equivalent to the following:StrictHostKeyChecking=no UserKnownHostsFile=/dev/null CheckHostIP=no
Pass a false value to this option to disable the above and return
openssh
to its default configured settings. - opts
-
If you want to pass any other options to openssh on its command line, then use this option, which should be an array reference. Each item in the list will be passed to
openssh
, separated by a single space character. For example:$s->new({ # ...other parameters to new()... connect_options => { opts => [ '-p', '222', # connect to non-standard port on remote host '-o', 'CheckHostIP=no', # don't check host IP in known_hosts file ], }, });
- reap
-
Only used on Unix platforms, this installs a signal handler which attempts to reap the
ssh
child process. Pass a true value to enable this feature only if you notice zombie processes are being left behind after use.
COMPOSITION
See the following for further interface details: