#Creating a new user with SSH access in Linux
##1. Log in as root
ssh root@SERVER_IP_ADDRESS
##2. Create a new user
adduser username
##3. Add the newly created user to the sudo
group
gpasswd -a username sudo
##4. Add public key authentication
Generate a key pair in your local machine with ssh-keygen
and copy the generated public key to the server using ssh-copy-id username@SERVER_IP_ADDRESS
####Alternative: manual install
Generate a key pair with the same method above and print public key with cat ~/.ssh/id_rsa.pub
. In the server use su - username
to switch to the new user. Then create a directory called .ssh
and restrict its permissions:
mkdir .ssh
chmod 700 .ssh
Now paste the public key in a file called authorized_keys
inside .ssh
and and then restrict its permissions using chmod 600 .ssh/authorized_keys
.
##5. Restrict root access
Look for the line PermitRootLogin
in the file /etc/ssh/sshd_config
and change it from yes
to no
.
##6. Restart the SSH daemon
service ssh restart