웹사이트 검색

RHCSA 시리즈: RHEL 7에서 사용자 및 그룹을 관리하는 방법 - 3부


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

사용자 계정 관리

RHEL 7 서버에 새 사용자 계정을 추가하려면 루트로 다음 두 명령 중 하나를 실행할 수 있습니다.

adduser [new_account]
useradd [new_account]

새 사용자 계정이 추가되면 기본적으로 다음 작업이 수행됩니다.

  1. 그/그녀의 홈 디렉토리가 생성됩니다(달리 지정하지 않는 한 /home/username).
  2. 이러한 .bash_logout, .bash_profile.bashrc 숨김 파일은 사용자의 홈 디렉터리에 복사되며 사용자에 대한 환경 변수를 제공하는 데 사용됩니다. /그녀의 사용자 세션. 각각을 탐색하여 자세한 내용을 확인할 수 있습니다.
  3. 추가된 사용자 계정에 대해 메일 스풀 디렉터리가 생성됩니다.
  4. 새 사용자 계정과 동일한 이름으로 그룹이 생성됩니다.

전체 계정 요약은 /etc/passwd 파일에 저장됩니다. 이 파일은 시스템 사용자 계정별 레코드를 보유하며 다음과 같은 형식을 갖습니다(필드는 콜론으로 구분됨).

[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
  1. [username][Comment] 두 필드는 설명이 필요하지 않습니다.
  2. 두 번째 필드 'x'는 해당 계정이 [username]으로 로그온하는 데 사용되는 숨겨진 비밀번호(/etc/shadow에 있음)로 보호된다는 것을 나타냅니다.
  3. [UID][GID] 필드는 사용자 ID와 [username]이 속한 기본 그룹 ID를 동일하게 표시하는 정수입니다. .

마지막으로,

  1. [홈 디렉터리][사용자 이름] 홈 디렉터리의 절대 위치를 표시하며,
  2. [기본 쉘]은 해당 사용자가 시스템에 로그인할 때 해당 사용자에게 커밋되는 쉘입니다.

숙지해야 할 또 다른 중요한 파일은 그룹 정보가 저장되는 /etc/group입니다. /etc/passwd의 경우와 마찬가지로 한 줄에 하나의 레코드가 있으며 해당 필드도 콜론으로 구분됩니다.

[Group name]:[Group password]:[GID]:[Group members]

어디,

  1. [그룹 이름]은 그룹 이름입니다.
  2. 이 그룹은 그룹 비밀번호를 사용합니까? ("x "는 아니요를 의미합니다.)
  3. [GID]: /etc/passwd와 동일합니다.
  4. [그룹 구성원]: 각 그룹의 구성원인 사용자 목록을 쉼표로 구분합니다.

계정을 추가한 후 언제든지 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

다음 이미지는 예 56을 보여줍니다.

예 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로 설정됩니다.