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

# SSH

> The `SSH Provider` is a provider that provides a way to execute SSH commands and get their output.

## Authentication

This provider requires authentication.

* **host**: SSH hostname (required: True, sensitive: False)
* **user**: SSH user (required: True, sensitive: False)
* **port**: SSH port (required: False, sensitive: False)
* **pkey**: SSH private key (required: False, sensitive: True)
* **password**: SSH password (required: False, sensitive: True)

Certain scopes may be required to perform specific actions or queries via the provider. Below is a summary of relevant scopes and their use cases:

* **ssh\_access**: The provided credentials grant access to the SSH server

## In workflows

This provider can be used in workflows.

As "step" to query data, example:

```yaml theme={null}
steps:
    - name: Query ssh
      provider: ssh
      config: "{{ provider.my_provider_name }}"
      with:
        command: {value}  
        query: {value}  # command to execute
```

Check the following workflow example:

* [businesshours.yml](https://github.com/keephq/keep/blob/main/examples/workflows/businesshours.yml)

## Connecting with the Provider

The `SshProvider` class provides a way to execute SSH commands and get their output. The class uses the `paramiko` library to establish an SSH connection to a server and execute commands.

## Notes

*No information yet, feel free to contribute it using the "Edit this page" link the buttom of the page*

## Useful Links

* [https://www.ssh.com/academy/ssh/keygen](https://www.ssh.com/academy/ssh/keygen)
