Skip to content

In a Nutshell (🌰)

  • SSH is the primary secure connection method for managing devices in SSM
  • Three authentication methods available: password, SSH key, and passwordless
  • Credentials are securely encrypted using Ansible Vault (AES-256)
  • Properly configured SSH enables terminal access, container management, and automation
  • Advanced settings allow customization for specific network environments

Overview

Secure Shell (SSH) is the foundation of SSM's agentless architecture, providing secure remote access to your devices without requiring additional software installation. This guide covers all SSH configuration options within the SSM interface.

SSH Configuration Interface

The SSH configuration tab in the device settings provides all options needed to establish a secure connection to your device.

device-configuration-device-configuration-2.png

1

Access Device Configuration

From the Devices page, click on the ⚙️ Configuration button for your device.

2

Navigate to SSH Tab

Select the SSH tab in the configuration panel (this is the default tab).

3

Configure Connection Settings

Enter host information, authentication details, and optional advanced settings.

4

Test Connection

Use the Diagnostic tab to verify your connection settings before saving.

Host Configuration

The Host section defines the basic connection parameters needed to reach your device on the network.

ParameterRequiredDescription
Device IP⚠️The IPv4 address or hostname of the device. Must be reachable from the SSM instance.
SSH Port⚠️The SSH port number for the device. Default is 22, but can be customized for security.

Important

Ensure your network configuration allows SSH traffic between the SSM server and your device. This may require firewall configuration on both ends.

Super User Configuration

The Super User section defines how SSM gains elevated privileges on the remote device when needed for operations like Docker management or system configuration.

ParameterRequiredDescription
Sudo Method⚠️The command used for privilege escalation. Almost always sudo on Linux systems.
Sudo UserThe username to switch to when elevation is needed. Optional if the main user has sudo access.
Sudo PasswordThe password for the sudo user, if required. Many systems are configured for passwordless sudo.

TIP

If your system uses passwordless sudo (common for many Linux distributions), you can leave the Sudo Password field empty.

Authentication Methods

SSM supports three methods for authenticating with your devices. Choose the most appropriate option based on your security requirements and environment.

1. Password Authentication

Password authentication is the simplest method, requiring just a username and password.

technical-guide-ssh-ssh-password.png

Configuration Steps:

  1. Select User/Password as the SSH Connection Type
  2. Enter the Username for the SSH account
  3. Enter the Password for the SSH account

Security Note

Password authentication is more vulnerable to brute force attacks. Consider using key-based authentication for production environments.

2. SSH Key Authentication

SSH key authentication is more secure and uses a cryptographic key pair instead of a password.

technical-guide-ssh-ssh-key.png

Configuration Steps:

  1. Select Keys as the SSH Connection Type
  2. Enter the Username for the SSH account
  3. Paste your Private Key in PEM format
  4. Optionally enter a Passphrase if your key is protected

Linux

Generate an SSH key pair:

bash
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Copy public key to your device:

bash
ssh-copy-id username@device-ip

Windows

Generate an SSH key pair (PowerShell):

powershell
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Copy public key to your device (manually or using SSH tools)

3. Passwordless Authentication

Passwordless authentication relies on your system's SSH agent or host-based authentication and requires no credentials to be stored in SSM.

Configuration Steps:

  1. Select Passwordless as the SSH Connection Type
  2. Enter the Username for the SSH account

TIP

This method requires that your SSH environment is already configured with the appropriate trust relationships between the SSM server and your device.

Advanced Settings

For non-standard environments or specific requirements, SSM provides advanced SSH configuration options.

device-configuration-ssh-advanced-1.png

SettingDescriptionDefault
Force IPv4/IPv6Force a specific IP protocol versionDisabled
Ansible ConnectionCustom connection method'smart'
Ansible PortCustom port for Ansible connectionsSame as SSH port
Ansible BecomeAdvanced privilege escalationDisabled
Ansible Become MethodMethod for privilege escalation'sudo'

TIP

Most users do not need to modify the advanced settings. These options are primarily for specialized environments or troubleshooting specific issues.

Testing Your Connection

After configuring SSH settings, you should always test the connection before saving.

1

Go to Diagnostic Tab

Switch to the Diagnostic tab in the device configuration panel.

2

Run Basic Test

Click Basic Test to verify basic SSH connectivity.

3

Run Advanced Test

For more detailed diagnostics, click Advanced Test.

4

Review Results

Check the test results and fix any issues before saving.

device-configuration-device-configuration-4.png

Troubleshooting

If you encounter issues with your SSH configuration, try these common solutions:

ProblemPossible Solution
Connection Refused• Verify SSH service is running on the device
• Check firewall settings on both SSM server and device
• Verify the SSH port configuration
Authentication Failed• Double-check username and password
• Verify SSH key format and permissions
• Ensure the user has SSH access on the device
Permission Denied• Verify sudo permissions for the user
• Check if the user is in required groups (docker, sudo)
• Ensure proper file permissions for SSH keys
Connection Timeout• Verify network connectivity between SSM and the device
• Check for network restrictions or VPN issues
• Ensure the device IP is correct

For more comprehensive diagnostic information, see the Diagnostic Tools documentation.

Security Best Practices

To maintain the highest level of security for your SSH connections:

Next step

🐳
Docker Configuration

Learn how to configure Docker integration for your devices

Made with love