Disable root login
The root user should not be used on a production server. It's required for initial setup but should be disabled after that.
However, before we can disable root login, we need to make sure an alternate user account exists and is in the sudo
group.
Creating a new user
To create a new user, and home directory, do the following:
useradd -m -g sudo -s /bin/bash pocket && passwd pocket
This will create a new user pocket
and set the default shell to bin/bash
. A home directory will also be created.
If you want to specify the location of the home directory, you can use the -d
option followed by the path to the home directory.
Making sure sudo
is installed
Before disabling root login, we need to make sure sudo
is installed. To do this, run the following command:
which sudo
This will return the path to the sudo
command. If it returns /usr/bin/sudo
, then sudo
is installed.
If sudo
is not installed, you can install it with the following command:
apt install sudo
If you have to install sudo
, you'll also need to add your user to the sudo
group. To do this, run the following command:
usermod -aG sudo pocket
The previous command will add the pocket
user to the sudo
group.
To verify that the pocket
user is in the sudo
group, run the following command:
groups pocket
This will return the group membership for the pocket
user.
Confirming a user is in the sudo
group
The last thing you'll want to do before disabling root login is to make sure sudo
works for your user. To do this, run the following command to switch to the pocket
user:
su - pocket
Then run the following command to verify that sudo
works for the pocket
user:
sudo apt update
This is a command that requires root privileges. If you get an error, your user does not have root privileges.