Generate Ssh Key In Ubuntu With User

I have Ubuntu Linux 18.4 LTS server running on AWS cloud. How do I create a user account on Ubuntu Linux server using the command line?

Then over in the server, add that public key to user fideloper's authorizedkeys file: # Logged in as user fideloper cd mkdir.ssh vim.ssh/authorizedkeys # Paste in the public key Disallow Root Login. First, we want user fideloper to be able to use sudo commands, so we don't need the root user to perform administrative tasks. Before adding a new SSH key to the ssh-agent to manage your keys, you should have checked for existing SSH keys and generated a new SSH key. When adding your SSH key to the agent, use the default macOS ssh-add command, and not an application installed. You need to store his public key in john/.ssh/authorizedkeys as described in manual page for sshd (good place to start). Also you need to make sure the john/.ssh/ directory is owned by john and has 0700 permissions and john/.ssh/authorizedkeys also with permissions 0600.

Generate Ssh Key In Ubuntu With User Guide

Generate Ssh Key In Ubuntu With UserIntroduction : By default, the cloud server comes with a user named ubuntu. You can use such primary user account for sysadmin tasks on Ubuntu. However, sometimes you need to add a user account on Ubuntu for additional sysadmin tasks. This page shows how to create a regular user account or sysadmin account on the Ubuntu server.Ubuntu add ssh key
Advertisements

Steps to create a user account on Ubuntu Linux

  1. Open the terminal application
  2. Log in to remote box by running the ssh user@your-ubuntu-box-ip
  3. To add a new user in Ubuntu run sudo adduser userNameHere
  4. Enter password and other needed info to create a user account on Ubuntu server
  5. New username would be added to /etc/passwd file, and encrypted password stored in the /etc/shadow file

Let us see all commands in details.

Ubuntu create user account commands

Let us say you need to add a new user in Ubuntu called vivek, type the following command in your shell:
$ sudo adduser vivek
Type your own password and other info:

Verification

Use the grep command or cat command as follows:
$ cat /etc/passwd
$ grep '^vivek' /etc/passwd

Sample outputs:

How do I log in using ssh?

From your Windows (WSL) or macOS or Linux desktop, run:
$ ssh vivek@your-aws-ubuntu-server-ip
OR
$ ssh -i ~/.ssh/aws.pub.key vivek@your-aws-ubuntu-server-ip
Enter the password when prompted.

Generate Ssh Key In Ubuntu With Username

Creating a user account using useradd command on Ubuntu

Alternatively, you can use the useradd command is a low level utility for adding users on Ubuntu. The syntax is:
$ sudo useradd -s /path/to/shell -d /home/{dirname} -m -G {secondary-group} {username}
$ sudo passwd {username}

Let us create a new user named vivek using the useradd command on Ubuntu:
$ sudo useradd -s /bin/bash -d /home/vivek/ -m -G sudo vivek
$ sudo passwd vivek

Where,

Generate Ssh Key In Ubuntu With User Guide

  • -s /bin/bash – Set /bin/bash as login shell of the new account
  • -d /home/vivek/ – Set /home/vivek/ as home directory of the new Ubuntu account
  • -m – Create the user’s home directory
  • -G sudo – Make sure vivek user can sudo i.e. give admin access to the new account

Generate Ssh Key Ubuntu

I strongly recommend installing ssh keys while creating the new user account. You must have RSA/ed25519 key pair on your local desktop/laptop. Use the cat command to view your current RSA/ed25519 public key on the desktop:
$ cat ~/.ssh/id_ed25519.pub
$ cat ~/.ssh/id_rsa.pub

Run the following commands on your Ubuntu server to install above ~/.ssh/id_ed25519.pub key from your desktop:
$ sudo mkdir /home/vivek/.ssh/
$ sudo chmod 0700 /home/vivek/.ssh/
$ sudo -- sh -c 'echo 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILaLvLmaW9qIbUVo1aDHWZE9JewbNfIdTVif2aFGF0E0 vivek@nixcraft' > /home/vivek/.ssh/authorized_keys'
$ sudo chown -R vivek:vivek /home/vivek/.ssh/

Now you can log in with ssh keys:
$ ssh vivek@your-aws-server-ip-here
For more info see:

Ubuntu Ssh Key Setup

Conclusion

Generate Ssh Key In Ubuntu With User Software

ADVERTISEMENTS