Copying SSH Key From Root To Another User On Same Machine

I am trying to create a server setup script. On initialization of the server, I add my ssh key which then gives me access to the root user via ssh. I now have created another user and gave them sudo access. Now I am trying to figure out how I can copy my SSH key from root user to the new user I just created. Both users are on the same machine and one is root and the other is a sudo user.

1 Answer

This is just one of a few different ways to do this. I am assuming you've just created your user and it has sudo access.

  1. Create the folder if it doesn't already exist:

    mkdir /home/$USER/.ssh

  2. Make the directory only executable by the user:

    chmod 700 /home/$USER/.ssh

  3. Copy the authorized_keys file that contains your public key:

    sudo cp /root/.ssh/authorized_keys /home/$USER/.ssh/authorized_keys

  4. Make everything in .ssh owned by your user:

    sudo chown -R $USER:$USER /home/$USER/.ssh

  5. Make it readable only by your user:

    sudo chmod 600 /home/$USER/.ssh/authorized_keys

If your user does NOT have sudo access, you can modify this workflow a bit. Using your user name instead of <user>, run these as root:

mkdir /home/<user>/.ssh
chmod 700 /home/<user>/.ssh
cp /root/.ssh/authorized_keys /home/<user>/.ssh/authorized_keys
chmod 600 /home/<user>/.ssh/authorized_keys
chown -R <user>:<user> /home/<user>/.ssh
4

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like