User Account Management RHCSA – In Linux, everything is represented by a file, all files are associated with a user. All users belong to a group with the
Today in this article about account management I will try to explain how Red Hat manages the users and group creation and management.
For instance, on Linux everything is represented by a file, all files are associated with a user. All users belong to a group with the same name as the username of the user, one user can be in many groups.
Table of Contents
We have three different ways to create users by manually editing system files and using command line tools like useradd the last way is from GUI.
Users home directories are located at /home/username and are created automatically based on a skeleton located at /etc/skel .
RHCSA Exams Topics
- User Account Management
- Administrative Control
- User and Shell Configuration
- Users and Network Authentication
- Special Groups
Account Management – Actions
In this mini tutorial, I will cover some basic actions on Linux Systems related to user management, as a system administrator there are some basic actions we can make like create, delete and modify users. You can check all options using the man command (man useradd).
- useradd – Create User
- userdel – Delete User
- usermod – Modify User Account
- passwd – Define User Password
- User Configs & Home Directory
Account Management – Types of Users
Linux systems have three basic types of user accounts each one of them has a UID range associated with it. We will learn how to verify and change user UIDs on our system.
Root User
The root user is created when the system is installed, this user has the UID equal to Zero (0) and has permissions to access all services and files on the system. For instance, keep this account secure and avoid sharing the root password with anyone.
System Accounts
These types of accounts are used by system services like apache, mysql, squid, or email service They have UIDs between 1 and 999.
Regular Accounts
Regular accounts are users with limited permissions defined by the system administrator to execute standard procedures the UID range associated with them is between 1000 and 65535.
User Type | UID Range | Description |
root | 0 | |
system | 1-999 | |
regular | +1000 |
System Accounts vs. Service Accounts
System accounts and service accounts are both important components of user management in an operating system, but they serve different purposes.
System accounts are created during the installation of the operating system and are used to manage essential system processes and services. These accounts have specific roles and are typically used by system daemons and processes to perform various system-related tasks. System accounts, such as root (superuser), bin, daemon, sys, adm, etc., have predefined functions and privileges that allow them to perform critical system operations.
On the other hand, service accounts are created for specific applications or services running on the system. These accounts are used to isolate and control access to resources required by the respective services. Service accounts are used to run background services, such as database servers, web servers, email servers, or any other applications that require their own dedicated accounts for security and access control.
The primary difference between system accounts and service accounts lies in their purposes and privileges. System accounts have broader and more elevated privileges to manage the overall system, while service accounts are created to provide restricted access and control for particular services or applications.
When managing system accounts and service accounts, it is crucial to follow best practices such as assigning appropriate permissions, implementing strong passwords, regularly reviewing and auditing account access, and adhering to the principle of least privilege to ensure the security and integrity of the system.
User Management – Create User
To create a new user on Linux we have two options, use the default options specified on /etc/skel directory and /etc/default/useradd or pass the specific configuration as a parameter to the useradd command. Before starting to add users to the system check all parameters with #man useradd command.
Create a user with the default options based on /etc/skel file properties.
# useradd poplab
Here we are passing the basic parameters to useradd command, -U creates a group with the same name as the user, -m creates the home directory for the user based on /etc/skel file rules, and last he -s /bin/bash attach the bash shell to the user permitting remote logins.
# useradd -D -U -m -s /bin/bash poplab
RHCSA Add User to Group
After creating a new user most of time we need to add it to a group or many groups, remember the parameter -a (Append).
# usermod -aG security,wheel poplab
RHCSA Define User Password
To define a username password we have the passwd command
# passwd poplab
RHCSA Delete User Account
If it is necessary to delete a user from the system, just run:
# userdel poplab
User Account Management – User Info Commands
Sometimes we need to troubleshoot or create a new specific account, being able to verify all account information related to a user or a file is a bonus.
Sometimes we ask a few questions ourselves in our daily work:
How to check the user and group ID?
Print logged user and user group IDs
# id
# id poplab
Verify all data about the ID command
# man id
How to check user information?
Display information about known users in the system
# lslogins
# lslogins poplab
Files Related to Users – RHCSA
- /etc/passwd – User account information.
- /etc/shadow – Secure user account information.
- /home/username/.bashrc
- /home/username/.bash_history
- /home/username/.profile
- /etc/default/useradd – Default values for account creation.
- /etc/login.defs – Shadow password suite configuration.
Folders Related to Users
- /home/username – User Home Directory
- /etc/skel/ – Directory Containing default files
In the context of the RHCSA (Red Hat Certified System Administrator) certification, knowledge of system accounts is essential. System accounts play a crucial role in managing user access and privileges on a Linux system.
Understanding system accounts is crucial for managing user access and securing the system. As an RHCSA, you should be familiar with creating and managing user accounts, assigning appropriate permissions, controlling user access, and understanding the role of system accounts.
It is also important to adhere to best practices, such as practicing the principle of least privilege and regularly reviewing and updating user and system account configurations for optimal security.
Test your Skills
Next Article – Red Hat Squid Proxy
Sources
- https://www.redhat.com/en/services/certification/rhcsa
- Red Hat Certified System Administrator – RHCSA
- Deployment, Configuration, and Administration of Red Hat Enterprise Linux 7