# Enable access to a remote host

In most cases you will not need to add your own SSH public key to other INCD remote hosts as there are other processes to do so, namelly:
  * To get access to the INCD login hosts you will be required to send your SSH public key to the INCD administrators that will install it where needed and will report back to you. 
  * When using the INCD cloud services you may need to add your SSH key to a VM managed by yourself. Usually this is done through the Openstack command line interface or through the Openstack Horizon dashboard when the machine is first created and does not require other manual intervention. See the INCD cloud documentation **[here](https://wiki.incd.pt/shelves/cloud-user-documentation)**.

<BR>
  
* However if you need to add a key manually to a remote host account the required steps are:
  1. login into the remote host account or access its home directory through the root account
  1. check if the account directory ```~user/.ssh``` exists in the home directory of the remote user, if not create it with ```mkdir ~user/.ssh; chmod u=rwx ~user/.ssh```
  1. check if the file ```~user/.ssh/authorized_keys``` exists under ```~user/.ssh```, if not create the file with ```touch ~user/.ssh/authorized_keys; chmod u=rw ~user/.ssh/authorized_keys```
  1. copy the public key to the remote host and append it to the file ```~user/.ssh/authorized_keys``` make sure not to overwrite other keys that may already exist.
  1. If you did the above steps from the root account make sure the files ownership are correct and if not change them to the correct uid and gid with ```chown -R user.group ~user/.ssh```