서버를 관리하는 것은 다른 Linux 서버와 마찬가지로 RHEL 7 서버를 관리하는 것을 의미합니다. 사용자 계정을 추가, 편집, 일시 중지 또는 삭제하는 방법을 알아야 하며 사용자에게 할당된 작업을 수행하기 위해 파일, 디렉토리 및 기타 시스템 리소스에 대한 필요한 권한을 부여해야 합니다.

사용자 계정 관리
RHEL 7 서버에 새 사용자 계정을 추가하려면 다음 두 명령 중 하나를 루트로 실행할 수 있습니다:
# adduser [new_account] # useradd [new_account]
새 사용자 계정이 추가되면 기본적으로 다음 작업이 수행됩니다.
- 그의/그녀의 홈 디렉토리가 생성됩니다 (
/home/username
이 아닌 경우). - 이
.bash_logout
,.bash_profile
및.bashrc
숨겨진 파일들이 사용자의 홈 디렉토리 안에 복사되어 그의/그녀의 사용자 세션에 대한 환경 변수를 제공하는 데 사용됩니다. 자세한 내용은 각각을 살펴볼 수 있습니다. - A mail spool directory is created for the added user account.
- A group is created with the same name as the new user account.
전체 계정 요약은 /etc/passwd
파일에 저장됩니다. 이 파일은 시스템 사용자 계정당 레코드를 보유하며 다음 형식을 가지고 있습니다 (필드는 콜론으로 구분됩니다):
[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
- 이 두 필드
[username]
및[Comment]
는 자명합니다. - 두 번째 필드 ‘x’는 계정이 그의/그녀의 사용자 이름으로 로그온하는 데 사용되는 그림자 비밀번호로 보호된 것임을 나타냅니다 (
/etc/shadow
에 있음). [UID]
및[GID]
필드는[username]
이 속한 사용자 ID 및 주 그룹 ID를 나타내는 정수입니다.
마지막으로,
[홈 디렉토리]
는[사용자 이름]
의 홈 디렉토리의 절대 위치를 나타내며,[기본 쉘]
은 사용자가 시스템에 로그인할 때 이 사용자에게 지정된 쉘입니다.
익숙해져야 할 다른 중요한 파일은 그룹 정보가 저장된 /etc/group
입니다. /etc/passwd
와 마찬가지로 각 행마다 하나의 레코드가 있으며 그 필드는 콜론으로 구분됩니다:
[Group name]:[Group password]:[GID]:[Group members]
여기서,
[그룹 이름]
은 그룹의 이름입니다.- 이 그룹은 그룹 비밀번호를 사용합니까? (“x”는 아니오를 의미합니다).
[GID]
:/etc/passwd
와 동일합니다.[그룹 멤버]
: 각 그룹의 구성원으로 쉼표로 구분된 사용자 목록입니다.
계정을 추가한 후 언제든지 usermod를 사용하여 사용자 계정 정보를 편집할 수 있으며, 기본 구문은 다음과 같습니다:
# usermod [options] [username]
관련 기사:
‘useradd’ 명령어 예제 15개
‘usermod’ 명령어 예제 15개
예제 1: 계정의 만료 날짜 설정
회사에서 계정에 특정 기간 동안의 액세스 권한을 부여하는 정책을 가지고 있거나, 제한된 기간 동안 액세스 권한을 부여하고 싶다면, --expiredate
플래그를 사용하여 YYYY-MM-DD 형식의 날짜를 입력하세요. 변경 사항이 적용되었는지 확인하려면, 다음 이미지와 같이 계정 만료 날짜를 업데이트하기 전과 후의
# chage -l [username]
출력을 비교하세요.

예제 2: 사용자를 보조 그룹에 추가하기
새 사용자 계정이 시스템에 추가될 때 생성되는 기본 그룹 외에도, 사용자는 -aG 또는 –append –groups 옵션과 쉼표로 구분된 그룹 목록을 사용하여 보조 그룹에 추가할 수 있습니다.
예제 3: 사용자의 홈 디렉토리 기본 위치 변경 및/또는 쉘 변경
어떤 이유로 사용자의 홈 디렉토리 기본 위치(/home/username 외)를 변경해야 하는 경우, -d 또는 –home 옵션을 사용하여 새 홈 디렉토리의 절대 경로를 입력하세요.
기본적으로 할당되는 bash 외에 다른 쉘(sh 등)을 사용하고 싶은 사용자의 경우, usermod을 사용하여 –shell 플래그와 함께 새 쉘의 경로를 입력하세요.
예제 4: 사용자가 속한 그룹 표시하기
사용자를 보조 그룹에 추가한 후, 실제로 해당 그룹에 속해있는지 확인할 수 있습니다.
# groups [username] # id [username]
다음 이미지는 예제 2에서 4까지를 보여줍니다:

위 예제에서:
# usermod --append --groups gacanepa,users --home /tmp --shell /bin/sh tecmint
그룹에서 사용자를 제거하려면 위 명령에서 --append
스위치를 생략하고 --groups
플래그 뒤에 사용자가 속할 그룹을 나열하면 됩니다.
예제 5: 비밀번호 잠금을 통한 계정 비활성화
계정을 비활성화하려면 사용자의 비밀번호를 잠그기 위해 -L (소문자 L) 또는 –lock 옵션을 사용해야 합니다. 이렇게 하면 사용자가 로그인할 수 없게 됩니다.
예제 6: 비밀번호 잠금 해제
사용자를 다시 활성화하여 서버에 다시 로그인할 수 있게 하려면, 이전에 차단된 사용자의 비밀번호를 해제하기 위해 -U 또는 –unlock 옵션을 사용하면 됩니다. 이는 위 예제 5에서 설명한 것과 같습니다.
# usermod --unlock tecmint
다음 이미지는 예제 5와 6을 설명합니다:

예제 7: 그룹 또는 사용자 계정 삭제
그룹을 삭제하려면 groupdel을 사용하고, 사용자 계정을 삭제하려면 userdel을 사용해야 합니다 (–r 스위치를 추가하면 홈 디렉토리와 메일 스풀 내용을 함께 삭제할 수 있습니다):
# groupdel [group_name] # Delete a group # userdel -r [user_name] # Remove user_name from the system, along with his/her home directory and mail spool
group_name 소유의 파일이 있는 경우, 해당 파일은 삭제되지 않지만 그룹 소유자가 삭제된 그룹의 GID로 설정됩니다.
Source:
https://www.tecmint.com/rhcsa-exam-manage-users-and-groups/