Create and Manage Linux Users and Groups

Managing users and groups is the basis for system administration. Using groups increases efficiency and security when managing systems. This IT Pro Challenge virtual lab will teach you how to create and manage groups and users in Linux using the command line. You will also learn how to manage Linux VMs remotely using PuTTY and the Azure portal.

45 minutes
Join over 3 million cybersecurity professionals advancing their career
Sign up with
Required fields are marked with an *

Already have an account? Sign In »


Managing users and groups is one of the most fundamental skills needed by a system administrator. You absolutely must know how to create and delete users and groups and how to control user and group permissions. Groups are vital to Linux systems in that they provide extra security for file systems and computers. Groups provide an easy way for groups of users to share files while limiting access to files by outsiders. They also allow system administrators to effectively manage user privileges since privileges can be assigned to groups rather than individual users.

As a modern system administrator, you will often find yourself managing networks and systems remotely. In particular, you might often find yourself working with VMs through the Azure portal. Azure is a public cloud computing platform that can be used for hosting virtual machines (VMs). Often, administrators will have to manage VM settings remotely using the Azure portal and PuTTY. PuTTY is a commonly-used tool for SSH connections, and knowing how to use PuTTY to manage users and groups for VMs remotely is vital for successful system administrators.

This virtual lab will teach you the skills you need to manage Linux VMs on Azure remotely. You will use SSH with PuTTY to connect a remote server in Linux. You will then learn how to use the Linux command line to create and manage users and groups.

Understand the scenario: You are a systems administrator for a company that uses Linux virtual machines in Azure. You need to provision Linux users and groups.

Understand the environment: A Ubuntu Linux virtual machine has been created for you. You will use the free PuTTY tool from your on-premises computer to remotely manage the virtual machine over an SSH connection. If you don’t already have PuTTY installed, you can download and install it on your local on-premises computer using the default installation options.

Manage the Linux root user account:

Before you start creating users and groups, you must first manage the root user account. In this first step, you will:

  • Use PuTTY to connect to a Linux VM hosted by Azure.
  • Change the root user account password.
  • Switch to the root user account using the su - command.

Create and manage Linux groups:

In this step, you will create, modify, and delete user groups. You will:

  • Create several groups using the groupadd command.
  • Rename a group using the groupmod command.
  • Delete a group using the groupdel command.

Create and manage Linux users:

After creating your Linux groups, you will manage the users within these groups. You will:

  • Create two Linux users.
  • Change a user’s password.
  • Set a user’s password policy.
  • Add a user to a group.
  • Delete a user.


As a systems administrator, you must understand how to manage users and groups. Users and groups will make you a more efficient administrator and provide added security to your VMs. This hands-on lab will teach you how to create users and groups remotely in Linux from the command line using Azure and PuTTY. You will gain real-world experience in how to manage users with groups in Linux.

In the “Create and Manage Linux Users and Groups” virtual lab, you will accomplish the following:

  • Login to a remote Linux VM using PuTTY.
  • Create and manage groups using the command line.
  • Create and manage users using the command line.

Other Challenges in this series:

  • GUIDED CHALLENGE: Use Azure CLI Tools to Manage Azure Linux Virtual Machines
  • ADVANCED CHALLENGE: Can you Configure Linux Rsyslog Forwarding?