What is Ssh?

Questions and answers about network security.

SSH stands for Secure Shell.

Secure Shell is a network security protocol that provides a secure and reliable channel for two networked connected computers for transmitting data and confidential information.

SSH was originally built to replace insecure remote shells like Telnet.

These insecure shells sent information like passwords and usernames in plain text format that was highly vulnerable to packet sniffing and hijacking attacks.

SSH is basically developed for use on UNIX and Linux based systems for accessing their shell accounts. There are two major versions of SSH available namely, SSH1 and SSH2.

Both versions provide a secure and unbreakable encryption for secure transmissions over insecure channels such as wifi networks or internet. SSH authenticates the remote computer and allows it to authenticate users using public key cryptography.

SSH servers use standard TCP port 22 for contacting. SSH uses client server model and is used for supporting tunneling, forwarding TCP ports, transferring files using SCP and SFTP protocols, X11 connections, logging to a remote computer and executing commands on the remote computer.

It is also used for mirroring files, copying files, synchronizing backup copies. SSH is also used for establishing and using a virtual private network with full encryption. SSH can be used for surfing the web using SOCKS protocol through an encrypted proxy channel. 

To establish connection with an SSH daemon for remote connection we generally require a SSH client program.  For ensuring connectivity the SSH host must be running a SSH daemon or server program while the client or requesting node must run the client program.