secure shell (SSH)
Secure Shell (SSH) is a security protocol that cryptographically secures authentication and the communication itself when a user logs into a remote computer and executes programs there. In contrast to Remote Login( rlogin), Telnet or Remote Shell( rsh), Secure Shell can be used to authenticate the user using public keyencryption in addition to password verification. The public key is stored on the target system, the private key is used by the user for authentication.
Secure Shell can replace channels for terminal emulations, it can be used with the Secure Copy Protocol( SCP) for secure file transfers or for managing firewalls, VPN gateways or web servers.
The SSH protocol comes in two incompatible variants, SSH1.x and SSH2.x. SSH1 has an integrity check, but this has vulnerabilities and allows attackers to spy on SSH1 sessions. This drawback is fixed by SSH2, which uses different encryption methods. SSH2 uses the Advanced Encryption Standard( AES) with a key length of 128 bits and other methods such as Triple DES( 3DES) and Blowfish and forms the secure connection for the SSH File Transfer Protocol ( SFTP) and the Secure Copy Protocol (SCP) or as an SSH tunnel in Secure FTP.
Secure Shell uses port number 22 by default, and is described in RFC 4251. The free implementation of Secure Shell (SSH) is OpenSSH.