> ## Documentation Index
> Fetch the complete documentation index at: https://docs.germainux.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SSH execution

> GermainUX can execute commands and scripts on remote servers through SSH.

Components
[`Engine`](https://docs.germainux.com/main/germain-ux-engine)

Availability
2014.2 or later

GermainUX can execute commands and scripts on remote servers through SSH. This capability supports automated reporting, data processing, system maintenance, transaction execution, remediation, and other operational workflows.

> **[Configure an SSH Action](#configure-an-ssh-action)**
>
> Set up remote commands

> **[Connection Settings](#connection-settings)**
>
> Host, credentials and access

> **[SLA Settings](#sla-settings)**
>
> Trigger actions on conditions

> **[Security Recommendations](#security-recommendations)**
>
> Hardening tips and support

## SSH Actions can run:

| | Mode |
| - | - |
| 1 | Manually |
| 2 | On a configurable schedule |
| 3 | When an SLA condition is met |

## Configure an SSH Action

You can create an SSH Action through the wizard or from the Automation screen.

### Using the Wizard

Go to **GermainUX Workspace → Left Menu → Settings → Wizards -> SSH**.

![SSH Action wizard](https://mintcdn.com/germain-ux/aRWpCtnP62NYAs5c/images/main/ssh-execution/image-20260825-161236.png?fit=max\&auto=format\&n=aRWpCtnP62NYAs5c\&q=85\&s=cd979f5920aeba8bb851941798f2d034)

SSH Action wizard - GermainUX

### Using the Automation Screen

1. Go to **GermainUX Workspace → Left Menu → Settings → Automation -> SSH**.
2. Click **Add New Configuration** to open the **SSH Action** wizard.

   ![SSH Configuration Screen](https://mintcdn.com/germain-ux/aRWpCtnP62NYAs5c/images/main/ssh-execution/image-20260825-161454.png?fit=max\&auto=format\&n=aRWpCtnP62NYAs5c\&q=85\&s=7afbd32995d7acde250850ed35606fb0)

   SSH Configuration Screen - GermainUX
3. Complete the following steps:
4. Click **Finish**.
5. Verify the execution results.

   ![Verify the execution results](https://mintcdn.com/germain-ux/aRWpCtnP62NYAs5c/images/main/ssh-execution/image-20260825-161537.png?fit=max\&auto=format\&n=aRWpCtnP62NYAs5c\&q=85\&s=20233d67b7545349b5b756a4b562fe32)

   Verify the execution results - GermainUX

| Step | Label |
| - | - |
| 1 | Action |
| 2 | Connection |
| 3 | Command |
| 4 | Schedule |
| 5 | SLA |
| 6 | Summary |

## Action Settings

| Field | Description |
| - | - |
| **Name** | Unique, descriptive name used to identify the SSH Action. |
| **Notify on Success** | Generates a notification when the command executes successfully. |
| **Notify on Failure** | Generates a notification when the command fails. |
| **Logging Enabled** | Records executions under the **Germain Action Log** KPI. |
| **Execute via Engine** | Runs the SSH connection from the Engine associated with the target server. When disabled, the connection originates from the Action Service. |
| **Target Server** | Expression used to determine the server from which the SSH connection should originate. The default is `context.fact.system.name`. |

## Connection Settings

| Field | Description |
| - | - |
| **Server** | Target server on which the command will execute. Select an existing configured server. |
| **Credentials** | Configured credentials used to establish the SSH connection. |
| **Remote Port** | Port on which the target server accepts SSH connections. The default is `22`. |

## Command Settings

| Field | Description |
| - | - |
| **Working Directory** | Starting directory from which the command or script executes. |
| **Program** | Command, executable, or script filename to run. |
| **Arguments** | Arguments passed to the command. Add each argument separately. |
| **Timeout** | Maximum time allowed for the command to complete. |
| **Exit Value** | Exit code that indicates successful execution. This is typically `0`. |
| **Charset** | Character encoding used to process the command and its output. Configure this only when an alternative charset is required. |
| **Quote Arguments** | Automatically quotes arguments containing spaces or quotation marks. |

## Schedule Settings

| Field | Description |
| - | - |
| **Run on Schedule** | Enables automatic execution according to a configured schedule. |
| **Execution Count** | Limits how many times the action can execute during its configured interval. |

If the action should run only when an SLA is breached, leave **Run on Schedule** disabled.

## SLA Settings

Use the **SLA** step to:

* Associate the SSH Action with an existing SLA.
* Click **+** to create an SLA for a KPI.
* Leave the SLA empty when the action should run only manually or on a schedule.

When the selected SLA condition is met, GermainUX executes the SSH Action automatically.

## Verify the Results

After saving or running the action:

| Step | Check |
| - | - |
| 1 | Review its execution status. |
| 2 | Confirm that the returned exit value matches the expected value. |
| 3 | Review the command output and error output. |
| 4 | Check the **Germain Action Log** KPI when logging is enabled. |
| 5 | Confirm that the intended change occurred on the target server. |

## Security Recommendations

* Use a dedicated SSH account with the minimum required permissions.
* Prefer key-based authentication.
* Store credentials in GermainUX credential configurations.
* Never embed passwords or private keys in commands or arguments.
* Restrict the commands that the SSH account can execute.
* Validate dynamic arguments before passing them to a remote command.
* Configure execution limits and timeouts.
* Test actions in a non-production environment before enabling automatic execution.

## Get Help

> **[Contact GermainUX Support](https://docs.germainux.com/main/support.md)**
>
> The Germain Team can help you set this up.

> **Can't find what you need?**
>
> Search all GermainUX docs with **Ctrl + K**, or use the feedback buttons at the bottom of this page to tell us what is missing.

The content of this document is proprietary to GERMAIN SOFTWARE.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.