The SSH protocol (also referred to as Secure Shell) is a method for secure remote login from one computer to another. It provides several alternative options for strong authentication, and it protects the communications security and integrity with strong encryption. It is a secure alternative to the non-protected login protocols (such as telnet) and insecure file transfer methods (such as FTP)

 

HOW DOES THE SSH PROTOCOL WORK

The protocol works in the client-server model, which means that the connection is established by the SSH client connecting to the SSH server. The SSH client drives the connection setup process and uses public key cryptography to verify the identity of the SSH server. After the setup phase the SSH protocol uses strong symmetric encryption and hashing algorithms to ensure the privacy and integrity of the data that is exchanged between the client and server.

SSH PROVIDES STRONG ENCRYPTION AND INTEGRITY PROTECTION

Once a connection has been established between the SSH client and server, the data that is transmitted is encrypted according to the parameters negotiated in the setup. During the negotiation the client and server agree on the symmetric encryption algorithm to be used and generate the encryption key that will be used. The traffic between the communicating parties is protected with industry standard strong encryption algorithms (such as AES (Advanced Encryption Standard)), and the SSH protocol also includes a mechanism that ensures the integrity of the transmitted data by using standard hash algoritms (such as SHA-2 (Standard Hashing Algorithm)).

 

ssh-keygen -t rsa

ssh-copy-id -i ~/.ssh/id_rsa.pub This email address is being protected from spambots. You need JavaScript enabled to view it.



 

 

 

install ssh server on machine 

sudo apt-get install openssh-server

nano ~/.ssh/config

Host pi
          HostName 192.168.180.10
          Port 22
          User nishant

 

 

 

       sudo apt-get install sshfs

  1. To check if the fuse group exists run:

     
    cat /etc/group | grep 'fuse'
    
  2. If the group exists, execute the following command with sudo, substituting your user account name in place of example_user:

     
    sudo usermod -a -G fuse example_user
    
  3. If the group does not exist it has to be created and the user added to the fuse group:

     
    sudo groupadd fuse
    sudo usermod -a -G fuse example_user
    
  4. Log out from the client system and log back in to activate the group membership.

 

 

SFTP FILE TRANSFER PROTOCOL

The SFTP (SSH File Transfer Protocol) is probably the most widely used secure file transfer protocol today. It runs over SSH, and is currently documented in draft-ietf-secsh-filexfer-02.