Red Hat System Administration I
Create groups, use them as supplementary groups for some users without changing those users' primary groups, and configure one of the groups with sudo access to run commands as root.
Outcomes
Create groups and use them as supplementary groups.
Configure
sudoaccess for a group.
As the student user on the workstation machine, use the lab command to prepare your system for this exercise.
This command creates the necessary user accounts to set up the environment correctly.
[student@workstation ~]$ lab start users-group
Instructions
From
workstation, open an SSH session toserveraas thestudentuser and switch to therootuser.[student@workstation ~]$
ssh student@servera...output omitted... [student@servera ~]$sudo -i[sudo] password for student:student[root@servera ~]#Create the
operatorssupplementary group with a GID of 30000.[root@servera ~]#
groupadd -g 30000 operatorsCreate the
adminsupplementary group without specifying a GID.[root@servera ~]#
groupadd adminVerify that both the
operatorsandadminsupplementary groups exist.[root@servera ~]#
tail /etc/group...output omitted... operators:x:30000: admin:x:30001:Ensure that the
operator1,operator2, andoperator3users belong to theoperatorsgroup.Add the
operator1,operator2, andoperator3users to theoperatorsgroup.[root@servera ~]#
usermod -aG operators operator1[root@servera ~]#usermod -aG operators operator2[root@servera ~]#usermod -aG operators operator3Confirm that the users are in the group.
[root@servera ~]#
id operator1uid=1002(operator1) gid=1002(operator1) groups=1002(operator1),30000(operators) [root@servera ~]#id operator2uid=1003(operator2) gid=1003(operator2) groups=1003(operator2),30000(operators) [root@servera ~]#id operator3uid=1004(operator3) gid=1004(operator3) groups=1004(operator3),30000(operators)
Ensure that the
sysadmin1,sysadmin2, andsysadmin3users belong to theadmingroup. Enable administrative rights for all theadmingroup members. Verify that any member of theadmingroup can run administrative commands.Add the
sysadmin1,sysadmin2, andsysadmin3users to theadmingroup.[root@servera ~]#
usermod -aG admin sysadmin1[root@servera ~]#usermod -aG admin sysadmin2[root@servera ~]#usermod -aG admin sysadmin3Confirm that the users are in the group.
[root@servera ~]#
id sysadmin1uid=1005(sysadmin1) gid=1005(sysadmin1) groups=1005(sysadmin1),30001(admin) [root@servera ~]#id sysadmin2uid=1006(sysadmin2) gid=1006(sysadmin2) groups=1006(sysadmin2),30001(admin) [root@servera ~]#id sysadmin3uid=1007(sysadmin3) gid=1007(sysadmin3) groups=1007(sysadmin3),30001(admin)Examine the
/etc/groupfile to verify the supplementary group memberships.[root@servera ~]#
tail /etc/group...output omitted... operators:x:30000:operator1,operator2,operator3 admin:x:30001:sysadmin1,sysadmin2,sysadmin3Create the
/etc/sudoers.d/adminfile so that the members of theadmingroup have full administrative privileges.[root@servera ~]#
echo "%admin ALL=(ALL) ALL" >> /etc/sudoers.d/adminSwitch to the
sysadmin1user (a member of theadmingroup) and verify that you can run asudocommand.[root@servera ~]#
su - sysadmin1[sysadmin1@servera ~]$sudo cat /etc/sudoers.d/admin[sudo] password for sysadmin1:redhat%admin ALL=(ALL) ALLReturn to the
workstationmachine as thestudentuser.[sysadmin1@servera ~]$
exitlogout [root@servera ~]#exitlogout [student@servera ~]$exitlogout Connection to servera closed. [student@workstation ~]$