SSH (Secure Shell) is an encrypted protocol to connect with the remote device. By default, it works on TCP port 22. There are two methods to connect with the remote server using SSH, one is by using password authentication, and another way is to authenticate is by public key. In this tutorial, you will learn how to generate an SSH key and copy files over SSH (SCP) without entering a password in CentOS8.

Generate SSH Key

Before generating the SSH Key. Firstly, verify the SSH is installed or not. To verify, open up the terminal and type the following command.

# ssh –V

How to remotely copy files over SSH without entering a password linux shell

After verifying the SSH package. Now I am going to generate the SSH key, using the following command.

# ssh-keygen

To tighten up the security, you can mention the encryption algorithm according to your need, as shown below.

# ssh-keygen –t rsa

# ssh-keygen –t rsa –b 4096

How to remotely copy files over SSH without entering a password linux shell

After entering the above command, the following output should appear.

How to remotely copy files over SSH without entering a password linux shell

To save the file in a suggested directory press enter.

Next, it will prompt you to enter the passphrase, leave it empty, and press enter. The following output should appear.

How to remotely copy files over SSH without entering a password linux shell

The SSH key is successfully generated. You can verify it by using the following command to view your SSH key.

How to remotely copy files over SSH without entering a password linux shell

This command will print your SSH key.

Copy the SSH to the remote side, use the following command.

# ssh-copy-id –i [email protected]

How to remotely copy files over SSH without entering a password linux shell

Repeat all of the above processes on the remote side if you want two-way communication.

Copy file without Password:

To copy the file on the remote side using the following command.

# scp file.txt [email protected]:/tmp/

How to remotely copy files over SSH without entering a password linux shell

It will copy your text file to the remote server, for verification go to the remote side and verify that your file has been copied.

How to remotely copy files over SSH without entering a password linux shell

SSH Configuration

Sometimes you need to require to configure the SSH at the remote side for authentication. In this case, enable the SSH authentication key, for this open up the /etc/ssh/sshd_config, and enable or add the following lines.

RSAAuthentication yes

PubkeyAuthentication yes

Save the configuration file and restart the service using the following command.

# systemctl restart sshd

Conclusion

In this tutorial, we learned how to generate the SSH authentication key in CentOS8 and copy the file over the SSH without entering the password. I hope this tutorial will help you to understand SSH key generation and copy the file at the remote end.