ssh

Establish and manage SSH connections to remote machines, including key generation, configuration, and file transfers. Use when connecting to remote servers, executing remote commands, or transferring files via SCP.

By openhands · 1,097 installs

npx skills add openhands/extensions --skill ssh

Source repository · Upstream listing

SSH Skill This skill provides capabilities for establishing and managing SSH connections to remote machines. Windows PowerShell equivalents for SSH config creation, key paths, ssh agent, and permissions are in references/windows.md . Capabilities Establish SSH connections using password or key based authentication Generate and manage SSH key pairs Configure SSH for easier connections Execute commands on remote machines Transfer files between local and remote machines Manage SSH configurations and known hosts Authentication Methods Password Authentication When prompted, you should ask the user for their password or a private key. Key Based Authentication Generate a new SSH key pair: Copy the public key to the remote server: Connect using the private key: SSH Configuration Create or edit the SSH config file for easier connections: Then connect using the alias: Common SSH Options p PORT : Connect to a specific port X : Enable X11 forwarding L local port:remote host:remote port : Set up local port forwarding R remote port:local host:local port : Set up remote port forwarding N : Do not execute a remote command (useful for port forwarding) f : Run in background v : Verbose mode (add more v's for increased verbosity) File Transfer with SCP Copy a file to the remote server: Copy a file from the remote server: Copy a directory recursively: SSH Agent Start the SSH agent: Add a key to the agent: Troubleshooting Check SSH service status on remote: systemctl status sshd Verify SSH port is open: nc zv hostname 22 Debug connection issues: ssh vvv username@hostname Check permissions: SSH private keys should have 600 permissions ( chmod 600 ~/.ssh/key name ) Verify known hosts: If host key changed, remove the old entry with ssh keygen R hostname Secure SSH Key Management Local Storage with Proper Permissions The most basic approach is to ensure proper file permissions: