RHCSA 시리즈: RHEL 7에서 사용자 및 그룹을 관리하는 방법 - 3부
다른 Linux 서버와 마찬가지로 RHEL 7 서버를 관리하려면 사용자 계정을 추가, 편집, 일시 중지 또는 삭제하는 방법과 사용자에게 파일에 필요한 권한을 부여하는 방법을 알아야 합니다. , 디렉터리 및 기타 시스템 리소스를 사용하여 할당된 작업을 수행합니다.
사용자 계정 관리
RHEL 7 서버에 새 사용자 계정을 추가하려면 루트로 다음 두 명령 중 하나를 실행할 수 있습니다.
adduser [new_account]
useradd [new_account]
새 사용자 계정이 추가되면 기본적으로 다음 작업이 수행됩니다.
- 그/그녀의 홈 디렉토리가 생성됩니다(달리 지정하지 않는 한
/home/username
). - 이러한
.bash_logout
,.bash_profile
및.bashrc
숨김 파일은 사용자의 홈 디렉터리에 복사되며 사용자에 대한 환경 변수를 제공하는 데 사용됩니다. /그녀의 사용자 세션. 각각을 탐색하여 자세한 내용을 확인할 수 있습니다. - 추가된 사용자 계정에 대해 메일 스풀 디렉터리가 생성됩니다.
- 새 사용자 계정과 동일한 이름으로 그룹이 생성됩니다.
전체 계정 요약은 /etc/passwd
파일에 저장됩니다. 이 파일은 시스템 사용자 계정별 레코드를 보유하며 다음과 같은 형식을 갖습니다(필드는 콜론으로 구분됨).
[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
[username]
및[Comment]
두 필드는 설명이 필요하지 않습니다.- 두 번째 필드 'x'는 해당 계정이
[username]
으로 로그온하는 데 사용되는 숨겨진 비밀번호(/etc/shadow
에 있음)로 보호된다는 것을 나타냅니다. [UID]
및[GID]
필드는 사용자 ID와[username]
이 속한 기본 그룹 ID를 동일하게 표시하는 정수입니다. .
마지막으로,
[홈 디렉터리]
는[사용자 이름]
홈 디렉터리의 절대 위치를 표시하며,[기본 쉘]
은 해당 사용자가 시스템에 로그인할 때 해당 사용자에게 커밋되는 쉘입니다.
숙지해야 할 또 다른 중요한 파일은 그룹 정보가 저장되는 /etc/group
입니다. /etc/passwd
의 경우와 마찬가지로 한 줄에 하나의 레코드가 있으며 해당 필드도 콜론으로 구분됩니다.
[Group name]:[Group password]:[GID]:[Group members]
어디,
[그룹 이름]
은 그룹 이름입니다.- 이 그룹은 그룹 비밀번호를 사용합니까? ("x "는 아니요를 의미합니다.)
[GID]
:/etc/passwd
와 동일합니다.[그룹 구성원]
: 각 그룹의 구성원인 사용자 목록을 쉼표로 구분합니다.
계정을 추가한 후 언제든지 usermod를 사용하여 사용자의 계정 정보를 편집할 수 있습니다. 기본 구문은 다음과 같습니다.
usermod [options] [username]
추가 읽기:
15 'useradd' 명령어 예시
15 'usermod' 명령 예
예 1: 계정 만료일 설정
특정 기간 동안 계정을 활성화하는 일종의 정책이 있는 회사에서 근무하거나 제한된 기간 동안 액세스 권한을 부여하려는 경우 --expiredate
를 사용할 수 있습니다. 플래그 뒤에 YYYY-MM-DD 형식의 날짜가 옵니다. 변경 사항이 적용되었는지 확인하려면 다음의 출력을 비교할 수 있습니다.
chage -l [username]
다음 이미지와 같이 계정 만료 날짜를 업데이트하기 전과 후입니다.
예 2: 보조 그룹에 사용자 추가
새로운 사용자 계정이 시스템에 추가될 때 생성되는 기본 그룹 외에도 -aG 또는 –append 조합을 사용하여 사용자를 보조 그룹에 추가할 수 있습니다. Strong>–groups 옵션 뒤에 쉼표로 구분된 그룹 목록이 옵니다.
예 3: 사용자 홈 디렉토리의 기본 위치 변경 및/또는 쉘 변경
어떤 이유로 사용자 홈 디렉토리의 기본 위치(/home/username 제외)를 변경해야 하는 경우 -d를 사용해야 합니다. 또는 < Strong>–home 옵션 다음에 새 홈 디렉터리의 절대 경로가 옵니다.
사용자가 기본적으로 할당되는 bash(예: sh) 이외의 다른 셸을 사용하려는 경우 –shellusermod를 사용하세요. > 플래그 뒤에 새 쉘의 경로가 옵니다.
예 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로 설정됩니다.