Skip to content

GitHub Action

Run SSH command

0.7.0 Latest version
Use latest version

Run SSH command

Github Action to run commands on a remote server using SSH


Copy and paste the following snippet into your .yml file.

- name: Run SSH command
  uses: garygrossgarten/github-action-ssh@0.7.0
Learn more about this action in garygrossgarten/github-action-ssh
Choose a version

GitHub Action SSH

Simple GitHub Action to run a command on a remote server using SSH. This is working with the latest GitHub Actions.

Example Usage

Example using OpenSSH encrypted private key

- name: ls -a via ssh
  uses: garygrossgarten/github-action-ssh@release
    command: ls -a
    host: ${{ secrets.HOST }}
    username: garygrossgarten
    passphrase: ${{ secrets.PASSPHRASE }}
    privateKey: ${{ secrets.PRIVATE_KEY}}

🔐 Set your secrets here:

Check out the workflow example for a minimalistic yaml workflow in GitHub Actions.


result of example ssh workflow


  • host - string - Hostname or IP address of the server. Default: 'localhost'

  • port - integer - Port number of the server. Default: 22

  • username - string - Username for authentication. Default: (none)

  • password - string - Password for password-based user authentication. Default: (none)

  • privateKey - mixed - Buffer or string that contains a private key for either key-based or hostbased user authentication (OpenSSH format). Default: (none)

  • passphrase - string - For an encrypted private key, this is the passphrase used to decrypt it. Default: (none)

  • tryKeyboard - boolean - Try keyboard-interactive user authentication if primary user authentication method fails. Default: false


This thing is built using Typescript and ssh2 (via node-ssh). 🚀