Secure Shell or SSH is a communication standard which provides a secure way to access a computer over an unsecured network. It has strong authentication and data is encrypted between the two computers. With SSH you can execute commands, manage systems and applications remotely. For example you can use it to run Composer or NPM commands on your web server.
SSH can work with password authentication, but the better and safer way is to use public key cryptography instead. Basically you need to create a key pair: a public and a private one. The Public key can be used to encrypt messages, but not decrypt them. It resides on the remote server. The Private key can decrypt messages encrypted with the public key. It resides locally on your computer. When you attempt to login to the server, the public and private keys are compared. If they match, you are allowed to to login.
For more information you might want to read our How to ssh into your webserver article.