appleboy/SSH Remote Commands

Executing remote ssh commands

View on GitHub

Trust Signals

Scorecard Score
Scorecard 2–4scored Jul 6, 2026
Maintenance Recency
Activelast commit Jun 23, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: appleboy/ssh-action@0ff4204d59e8e51228ff73bce53f80d53301dee2 # v1.2.5

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
hostSSH host address or IP to connect to.
portSSH port number for the connection.22
passphrasePassphrase to decrypt the SSH private key if protected.
usernameSSH username for authentication on the remote server.
passwordSSH password for authentication (use secrets for sensitive data).
protocolIP protocol version to use. Options: "tcp" (default), "tcp4" (IPv4 only), or "tcp6" (IPv6 only).tcp
syncWhen true, executes commands synchronously across multiple hosts (one after another).
use_insecure_cipherEnable additional legacy ciphers that might be less secure but more compatible with older systems.
cipherSpecify custom cipher algorithms for encryption. Leave empty to use secure defaults.
timeoutMaximum time to wait when establishing the SSH connection, e.g., '30s', '1m'.30s
command_timeoutMaximum execution time for the remote commands before terminating, e.g., '10m', '1h'.10m
keyRaw content of the SSH private key for authentication (use secrets for sensitive data).
key_pathPath to the SSH private key file on the runner.
fingerprintSHA256 fingerprint of the host public key for verification to prevent MITM attacks.
proxy_hostProxy server hostname or IP if connecting through an SSH jump host.
proxy_portSSH port number for the proxy connection.22
proxy_usernameUsername for authentication on the proxy server.
proxy_passwordPassword for authentication on the proxy server (use secrets for sensitive data).
proxy_protocolIP protocol version for proxy. Options: "tcp" (default), "tcp4" (IPv4 only), or "tcp6" (IPv6 only).tcp
proxy_passphrasePassphrase to decrypt the proxy SSH private key if protected.
proxy_timeoutMaximum time to wait when establishing the proxy SSH connection, e.g., '30s', '1m'.30s
proxy_keyRaw content of the SSH proxy private key for authentication (use secrets for sensitive data).
proxy_key_pathPath to the SSH proxy private key file on the runner.
proxy_fingerprintSHA256 fingerprint of the proxy host public key for verification.
proxy_cipherSpecify custom cipher algorithms for proxy connection encryption.
proxy_use_insecure_cipherEnable additional legacy ciphers for proxy connections (less secure but more compatible).
scriptCommands to execute on the remote server (inline script string).
script_pathPath to a local file containing commands to execute on the remote server.
envsEnvironment variables to expose to the remote script, format: key=value,key2=value2.
envs_formatFormat specification for environment variable transfer (for advanced usage).
debugSet to true to enable verbose logging for troubleshooting connection issues.
allenvsWhen true, passes all GitHub Actions environment variables to the remote script.
request_ptyRequest a pseudo-terminal from the server (required for interactive commands or sudo).
curl_insecureWhen true, uses the --insecure option with curl for insecure downloads.false
capture_stdoutWhen true, captures and returns standard output from the commands as action output.false
versionThe version of drone-ssh to use.
namedescription
stdoutStandard output of the executed commands when capture_stdout is enabled.