appleboy/SSH Remote Commands
Executing remote ssh commands
View on GitHubTrust Signals
- Scorecard Score
- Scorecard 2–4scored Jul 6, 2026
- Maintenance Recency
- Activelast commit Jun 23, 2026
- License
- MIT
Pinned Snippet
uses: appleboy/ssh-action@0ff4204d59e8e51228ff73bce53f80d53301dee2 # v1.2.5tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| host | SSH host address or IP to connect to. | — | — |
| port | SSH port number for the connection. | — | 22 |
| passphrase | Passphrase to decrypt the SSH private key if protected. | — | — |
| username | SSH username for authentication on the remote server. | — | — |
| password | SSH password for authentication (use secrets for sensitive data). | — | — |
| protocol | IP protocol version to use. Options: "tcp" (default), "tcp4" (IPv4 only), or "tcp6" (IPv6 only). | — | tcp |
| sync | When true, executes commands synchronously across multiple hosts (one after another). | — | — |
| use_insecure_cipher | Enable additional legacy ciphers that might be less secure but more compatible with older systems. | — | — |
| cipher | Specify custom cipher algorithms for encryption. Leave empty to use secure defaults. | — | — |
| timeout | Maximum time to wait when establishing the SSH connection, e.g., '30s', '1m'. | — | 30s |
| command_timeout | Maximum execution time for the remote commands before terminating, e.g., '10m', '1h'. | — | 10m |
| key | Raw content of the SSH private key for authentication (use secrets for sensitive data). | — | — |
| key_path | Path to the SSH private key file on the runner. | — | — |
| fingerprint | SHA256 fingerprint of the host public key for verification to prevent MITM attacks. | — | — |
| proxy_host | Proxy server hostname or IP if connecting through an SSH jump host. | — | — |
| proxy_port | SSH port number for the proxy connection. | — | 22 |
| proxy_username | Username for authentication on the proxy server. | — | — |
| proxy_password | Password for authentication on the proxy server (use secrets for sensitive data). | — | — |
| proxy_protocol | IP protocol version for proxy. Options: "tcp" (default), "tcp4" (IPv4 only), or "tcp6" (IPv6 only). | — | tcp |
| proxy_passphrase | Passphrase to decrypt the proxy SSH private key if protected. | — | — |
| proxy_timeout | Maximum time to wait when establishing the proxy SSH connection, e.g., '30s', '1m'. | — | 30s |
| proxy_key | Raw content of the SSH proxy private key for authentication (use secrets for sensitive data). | — | — |
| proxy_key_path | Path to the SSH proxy private key file on the runner. | — | — |
| proxy_fingerprint | SHA256 fingerprint of the proxy host public key for verification. | — | — |
| proxy_cipher | Specify custom cipher algorithms for proxy connection encryption. | — | — |
| proxy_use_insecure_cipher | Enable additional legacy ciphers for proxy connections (less secure but more compatible). | — | — |
| script | Commands to execute on the remote server (inline script string). | — | — |
| script_path | Path to a local file containing commands to execute on the remote server. | — | — |
| envs | Environment variables to expose to the remote script, format: key=value,key2=value2. | — | — |
| envs_format | Format specification for environment variable transfer (for advanced usage). | — | — |
| debug | Set to true to enable verbose logging for troubleshooting connection issues. | — | — |
| allenvs | When true, passes all GitHub Actions environment variables to the remote script. | — | — |
| request_pty | Request a pseudo-terminal from the server (required for interactive commands or sudo). | — | — |
| curl_insecure | When true, uses the --insecure option with curl for insecure downloads. | — | false |
| capture_stdout | When true, captures and returns standard output from the commands as action output. | — | false |
| version | The version of drone-ssh to use. | — | — |
Outputs
| name | description |
|---|---|
| stdout | Standard output of the executed commands when capture_stdout is enabled. |