You might have SSHed into servers hundreds of times.
You might have used ssh-add to load keys into your agent.
You might have used scp to copy files back and forth between your machine and server.
But have you ever paused and looked at the bigger picture?
All these commands come from one place — the OpenSSH suite. It’s much more than just ssh and scp.
OpenSSH components
OpenSSH has 11 major components.
SSH Server Component
1) sshd
The SSH daemon that listens for incoming connections. It does the following.
- Runs on servers
- Handles authentication
- Spawns user sessions
- Applies security policies
2) sftp-server
Subsystem used by sshd to serve SFTP requests.
SSH Client Components
3) ssh
The main SSH client. It handles the following.
- Login to servers
- Run commands
- Port forwarding
- Agent forwarding
- Multiplexing
4) scp
Secure copy (file transfer using SSH).
SCP still works, but SFTP and rsync are the safer alternatives. OpenSSH developers have acknowledged security and design issues with the SCP protocol.
5) sftp
SFTP interactive client (FTP-like interface over SSH).
Key Management + Agent
6) ssh-keygen
Generates, inspects, converts, and manages SSH keys.
7) ssh-agent
This is a background process that holds private keys securely.
8) ssh-add
This is used to add keys to the agent.
SSH Utilities
9) ssh-keyscan
Fetches public keys from remote servers for host verification.
10) ssh-keysign
Helper for host-based authentication.
Multiplexing / Public Key Infrastructure
11) moduli + supporting libraries
Used for Diffie-Hellman key exchange groups.
(Not an executable, but a core part of OpenSSH.)
Other components
These are still part of OpenSSH:
ssh-copy-id(scripts for copying keys — shipped in portable versions)scpprogress meterssh-pkcs11-helper(for hardware tokens)ssh-sk-helper(for FIDO/U2F keys)
Final Summary — OpenSSH Components
| Category | Component | Purpose |
|---|---|---|
| Server | sshd | SSH daemon |
| sftp-server | Back-end for SFTP | |
| Clients | ssh | SSH login & port forwarding |
| scp | Secure file copy | |
| sftp | SFTP client | |
| Keys/Agent | ssh-keygen | Create/manage keys |
| ssh-agent | Holds keys in memory | |
| ssh-add | Add keys to agent | |
| Utilities | ssh-keyscan | Scan and fetch remote keys |
| ssh-keysign | Host-based authentication | |
| Core crypto | moduli | DH groups |
