# sshcheck

Source: https://www.pingtower.com/docs/addons/sshcheck/

Open an SSH session with a key, optionally run one command, and time every stage. Key-based auth only.

<span class="pill priv">privileged</span> Add `sshcheck` to `agent.enable_addons`.

## Parameters

| Parameter | Default | Meaning |
| --- | --- | --- |
| `address` | port 22 | `host:port`. |
| `user`<span class="req">REQUIRED</span> | | |
| `key_file`<span class="req">REQUIRED</span> | | Private key readable by the `addons` user. |
| `known_hosts` | `~/.ssh/known_hosts` | Expanded against the agent's home. |
| `command` | | Run after auth. |
| `expect_exit_code` | `0` | Only with `command`. |
| `expect_output` | | Substring the output must contain. Only with `command`. |
| `max_command` | | Command time above this is **degraded**. Only with `command`. |

No password, passphrase or host-key-bypass parameter exists. A host key that does not match `known_hosts` is **down**, because that is a real finding about the target. An unreadable key or a missing `known_hosts` file is a config **error**, not a verdict. Setting any `expect_*` without a `command` is refused at startup. Output past 4 KiB is dropped.

## Measurements

`connect_ms`, `handshake_ms`, `auth_ms`, `command_ms`, `exit_code`.
