소개
로컬 사용자 및 그룹 관리는 Linux 관리자가 가장 먼저 배우는 ID 관리 작업 중 하나입니다. RHCSA 스타일의 작업에서는 계정 기록을 검사하고, 사용자 및 그룹을 생성하며, 그룹 멤버십을 조정하고, 계정 메타데이터를 수정하며, 임시 계정을 안전하게 제거하는 능력을 요구합니다.
이 실습에서는 rhcsauser, rhcsaops, rhcsaaudit와 같은 임시 로컬 ID 만 생성합니다. labex 계정, SSH 구성, 비밀번호 또는 로그인 액세스는 수정하지 않습니다. 마지막 단계에서는 시스템을 깨끗하게 유지하기 위해 임시 사용자와 하나의 임시 그룹을 제거합니다.
기존 로컬 ID 기록 검사
이 단계에서는 새로운 ID 를 생성하기 전에 기존 로컬 ID 기록을 검사합니다. getent는 구성된 이름 서비스 데이터베이스를 쿼리하므로 로컬 파일 및 기타 ID 소스 모두에서 작동합니다. id 명령은 사용자의 숫자 ID 와 그룹 멤버십을 보여줍니다.
표준 LabEx 프로젝트 디렉토리로 이동합니다.
cd /home/labex/project
기존 labex 계정 기록을 검사합니다.
getent passwd labex
출력은 콜론으로 구분됩니다. 첫 번째 필드는 로그인 이름이며, 이후 필드에는 숫자 UID, 기본 GID, 홈 디렉토리 및 로그인 셸이 포함됩니다.
labex의 현재 그룹 멤버십을 검사합니다.
id labex
labex의 현재 기본 그룹 기록을 검사합니다.
getent group labex
이 명령들은 읽기 전용입니다. 이 명령들을 통해 임시 실습용 ID 를 생성하기 전의 기준 상태를 확인할 수 있습니다.
로컬 그룹 및 사용자 생성
이 단계에서는 로컬 그룹과 로컬 사용자를 생성합니다. 그룹을 먼저 생성하면 계정 생성 시 해당 그룹을 사용자의 기본 그룹으로 할당할 수 있습니다.
실습용 사용자를 위한 기본 그룹을 생성합니다.
sudo groupadd rhcsaops
홈 디렉토리, 로그인 셸로 Bash, 기본 그룹으로 rhcsaops를 설정하여 rhcsauser를 생성합니다. useradd에서 -m은 홈 디렉토리를 생성하고, -g는 기본 그룹을 설정하며, -s는 로그인 셸을 설정합니다.
sudo useradd -m -g rhcsaops -s /bin/bash rhcsauser
새 계정 기록을 검사합니다.
getent passwd rhcsauser
새 사용자의 ID 와 그룹 멤버십을 검사합니다.
id rhcsauser
useradd -m으로 생성된 홈 디렉토리를 나열합니다.
sudo ls -ld /home/rhcsauser
보조 그룹 추가
이 단계에서는 보조 그룹을 추가합니다. 사용자는 하나의 기본 그룹을 가지지만, 공유 액세스를 위해 추가 그룹에 속할 수도 있습니다.
rhcsaaudit라는 이름의 두 번째 그룹을 생성합니다.
sudo groupadd rhcsaaudit
rhcsauser를 보조 그룹인 rhcsaaudit에 추가합니다. -aG 옵션은 보조 그룹 목록에 추가 (append) 함을 의미합니다. 기존 보조 그룹이 실수로 교체되지 않도록 -G와 함께 -a를 사용하십시오.
sudo usermod -aG rhcsaaudit rhcsauser
사용자의 그룹을 검사합니다.
id rhcsauser
감사 (audit) 그룹 기록을 검사합니다. 그룹 라인에 rhcsauser가 멤버로 나열되어야 합니다.
getent group rhcsaaudit
계정 메타데이터 수정
이 단계에서는 비밀번호 상태를 변경하지 않고 계정 메타데이터를 수정합니다. 비밀번호 만료 및 계정 잠금은 나중에 다루므로, 이 단계에서는 주석 필드와 로그인 셸에 집중합니다.
실습용 사용자에 대한 설명 주석을 설정합니다. -c 옵션은 GECOS/주석 필드를 업데이트합니다.
sudo usermod -c "RHCSA Practice User" rhcsauser
로그인 셸을 /bin/sh로 변경합니다. -s 옵션은 계정 기록의 셸 필드를 업데이트합니다.
sudo usermod -s /bin/sh rhcsauser
업데이트된 계정 기록을 검사합니다.
getent passwd rhcsauser
chage -l을 사용하여 비밀번호 만료 세부 정보를 검사합니다. 이 실습에서는 비밀번호 만료 설정을 변경하지 마십시오. 이는 다음 가이드 실습에서 다룹니다.
sudo chage -l rhcsauser
임시 로컬 ID 제거
이 단계에서는 임시 사용자와 하나의 임시 그룹을 제거합니다. 사용하지 않는 계정과 그룹은 시스템에 남아 있어서는 안 되므로, 정리 작업은 ID 관리의 일부입니다.
실습용 사용자와 해당 홈 디렉토리를 제거합니다. -r 옵션은 지원되는 경우 사용자의 홈 디렉토리와 메일 스풀을 함께 제거합니다.
sudo userdel -r rhcsauser
보조 감사 그룹을 제거합니다.
sudo groupdel rhcsaaudit
사용자가 삭제되었는지 확인합니다. getent는 기록이 존재하지 않을 때 0 이 아닌 값을 반환하므로, && echo는 조회가 예상대로 실패했을 때만 출력됩니다.
getent passwd rhcsauser >/dev/null || echo "rhcsauser removed"
감사 그룹이 삭제되었는지 확인합니다.
getent group rhcsaaudit >/dev/null || echo "rhcsaaudit removed"
rhcsaops는 검사를 위해 그대로 둡니다. 이제 빈 로컬 그룹 상태입니다.
getent group rhcsaops
요약
RHCSA 준비를 위해 로컬 사용자 및 그룹 관리 실습을 완료했습니다. 기존 ID 기록을 검사하고, 기본 그룹과 로컬 사용자를 생성하고, 보조 그룹을 추가하고, 계정 메타데이터를 수정하고, 비밀번호 만료 정보를 변경 없이 확인하며, 임시 ID 를 안전하게 제거하는 방법을 익혔습니다.



