SSH Nexus

Advanced SSH automation hub with intelligent connection management and network device support. Built with ❤️ by Sarryaz

Overview

This node, named "SSH Nexus," provides advanced SSH automation capabilities with a focus on network device support and connection health monitoring. The Connection Health resource's Throughput Test operation measures the data transfer performance over an SSH connection by sending a fixed-size payload multiple times and calculating throughput metrics.

Typical use cases include:

  • Verifying SSH connection quality to remote servers or network devices.
  • Measuring bandwidth and transfer speed for troubleshooting network issues.
  • Monitoring SSH link performance as part of automated network health checks.

For example, a network engineer can use this node to periodically test the throughput of SSH connections to critical routers or switches, ensuring that the network is performing optimally.

Properties

Name Meaning
Configuration Mode Choose how to configure the SSH connection:
- Use Credentials: Use stored SSH credentials (recommended for security).
- Dynamic Parameters: Use dynamic parameters from previous nodes or environment variables.
Dynamic Host Hostname or IP address for SSH connection (required if using Dynamic Parameters mode). Supports expressions and environment variables.
Dynamic Port SSH port number (default 22) when using Dynamic Parameters mode. Supports expressions and environment variables.
Dynamic Username Username for SSH login (required if using Dynamic Parameters mode). Supports expressions and environment variables.
Dynamic Password Password for SSH login (optional if using Dynamic Parameters mode). Supports expressions and environment variables.
Dynamic Private Key Private key content for SSH authentication (optional if using Dynamic Parameters mode). Supports expressions and environment variables.
Advanced Options Collection of additional settings:
- Command Timeout (ms): Max wait time for command execution.
- Output Parsing: How to parse command output (smart, JSON, table, raw, none).
- Continue on Error: Whether to proceed if errors occur.
- Cipher Override: Select cipher algorithms.
- Try Fallback Ciphers: Automatically try alternative ciphers if primary fail.
- Retry Delay (ms): Delay between retry attempts.
- Verbose Logging: Enable detailed debug logs.
- Line Ending Style: CRLF (Windows) or LF (Unix) line endings.
- Device Type: Select network device type for optimized handling (generic, Cisco IOS, Aruba OS/AP, Juniper, HP ProCurve, Dell PowerConnect, MikroTik).

Output

The output JSON object for the Throughput Test operation includes:

  • throughputBps: Calculated throughput in bits per second.
  • throughputKbps: Throughput in kilobits per second.
  • averageTransferTime: Average time in milliseconds taken for each transfer iteration.
  • testSize: Size in bytes of the test payload sent (fixed at 1024 bytes).
  • iterations: Number of test iterations performed (fixed at 5).
  • performance: Qualitative assessment of throughput ("excellent", "good", or "limited").
  • pairedItem: Reference to the input item index.

This output allows users to quantitatively assess SSH connection throughput and categorize its performance level.

Dependencies

  • Requires an SSH server accessible via the provided host, port, and credentials.
  • Uses an API key credential or private key for SSH authentication depending on configuration.
  • Depends on the node-ssh library for SSH connections.
  • No special environment variables are required beyond standard SSH credentials.
  • Optional verbose logging can be enabled for debugging connection issues.

Troubleshooting

  • Invalid Host Format: If the dynamic host contains invalid characters, the node throws an error. Ensure the hostname or IP only contains letters, numbers, dots, and hyphens.
  • Port Number Out of Range: Ports must be between 1 and 65535.
  • Missing Credentials: When using credentials mode, stored SSH credentials must be configured; otherwise, the node will error.
  • Connection Failures: May occur due to network issues, wrong credentials, or unsupported cipher algorithms. Enabling fallback ciphers and verbose logging can help diagnose these problems.
  • Command Timeout: If commands take longer than the specified timeout, they may fail. Adjust the "Command Timeout" advanced option accordingly.
  • Continue on Error: If enabled, the node will continue processing remaining items even if some commands fail, useful for batch operations.

Links and References


This summary focuses exclusively on the Connection Health resource and its Throughput Test operation as requested.

Discussion