SSH (Secure SHell) is a network protocol for secure communication to Unix and Unix-like operating systems. SSH allows you to remotely manage Linux/Unix servers via command line. When you run the ssh command or invoke any SSH client, you will need to provide username and password of a user on the remote Linux server, to then be presented with the command line as if you were working directly and locally on that server.
There are two protocol versions of SSH:
- SSH version 1
- SSH version 2
As a software product, SSH usually consists of three components:
- ssh server – sshd binary that runs SSH service and accepts connections on the server side
- ssh client – ssh command used for logging remotely
- ssh utilities – scp/sftp for copying files, ssh-keygen for SSH key management and other commands
ssh command is the client side of id, while sshd (openssh server) is the server component.