Configure SSH
SSH key-based authentication
Open SSH By default stores key pairs in the user’s home ~/.ssh directory.
Start with checking the containents of users home directory to confirm exsisiting key pair.
ls ~/.ssh
If there is a key pair it will look like this
id_rsa
id_rsa.pub
After typing
ssh-keygen 
During this process If there are a key pair in your ~/.ssh/ directory,
You will be aked to keep or Generate new key pair.
To use your exsisting keys type no
Warning Selecting yes is an irreversible destructive process.
/home/username/.ssh/id_rsa already exists.
Overwrite (y/n)?
To generate a new 2048-bit RSA key pair.
- Agree to Use the default location ie ~/.ssh/
- Setup new passphrase/password
Use ssh agent to aviod being prompted for a password
ssh kegen 
Created directory '/home/username/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again: 
- Upon succeces the terminal will output similar to below.
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.
The key fingerprint is:
a9:49:EX:AM:PL:E3:3e:a9:de:4e:77:11:58:b6:90:26 username@203.0.113.0
The key's randomart image is:
+--[ RSA 2048]----+
|     ..o         |
|   E o= .        |
|    o. o         |
|        ..       |
|      ..S        |
|     o o.        |
|   =o.+.         |
|. =++..          |
|o=++.            |
+-----------------+
Display the keys pair and
ls ~/.ssh/
id_rsa
id_rsa.pub
Display the the public key
cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAUxXyRfAyhF/rEXwmWkup+pDrdr0/OMb3B8jOhjCXavVEmo7ff/cyDQ0FLqJtiReP12UC50M3M4ALHi98ulG9hJe7IE/ user@example
SSH client custom configuration file,
Simple example
Host dev-server             #Hostname(alias)
    Hostname 10.10.0.1      #Ip address or daomain name (example.com)
    User foo                #User name for login
    Port 2299               #Custom port
With this in place we can login using
ssh dev-server
Note: We dont have to type the full ssh url prefix(ssh foo@10.10.01:2299).
Connecting via, ssh:// Work around for host key verification. Gogs or Gitea URL.
If you get error like bleow
Host key verification failed.
fatal: Could not read from remote repository.
To Disable key checking for specific host.
Host dev-server
    Hostname 10.10.0.1
    User foo
    Port 2299
    StrictHostKeyChecking no
Disable host key checking for all hosts Not recommanded on production
Host *
    StrictHostKeyChecking no