본문으로 바로가기
반응형

다중 사용자 시스템인 리눅스에서는 사용자에 대한 관리가 매우 중요하다.

특히 서버를 관리하는 root사용자라면 모든 사용자와 그룹에 대한 권한을 가지고 있기에 사용자 및 그룹 관리 명령어를 반드시 잘 알아둬야 한다.


명령어를 알아보기 전에 리눅스 사용자 및 그룹 관리를 하는 파일과, 기본 정보에 대해 알고자 한다면 아래 포스팅에서 확인 바란다.

[리눅스 사용자, 그룹 관리 기본 : http://www.leafcats.com/132 ]


useradd / adduser

사용자 추가

새로운 사용자를 추가한다. 새로운 사용자 한 명을 추가하면 /etc/passwd, /etc/group, /etc/shadow 각각의 파일에 새로운 행 하나가 생성된다.

useradd 명령어의 옵션과 사용법은 다음과 같다. 각각의 옵션은 중복하여 사용 가능하다.


useradd newUser : newUser라는 이름을 가진 사용자를 생성한다. 같은 이름의 그룹을 생성해 사용자를 그 그룹에 소속시킨다.

useradd -u 1234 newUser : newUser라는 이름의 사용자를 생성하는데, 해당 사용자의 ID를 1234로 만든다.

useradd -g Agroup newUser : newUser라는 이름의 사용자를 생성하는데, 해당 사용자를 Agroup에 속하게 만든다.

useradd -d /thisHome newUser : newUser라는 이름의 사용자를 만들고 해당 사용자의 홈 디렉터리를 /thisHome으로 지정한다.


groupadd

그룹 추가

새로운 그룹을 추가한다. /etc/group 파일에 새로운 행이 생성된다.

groupadd 명령어의 사용법은 다음과 같다.


groupadd newGroup : newGroup 이름을 가진 그룹을 새롭게 생성한다.

groupadd -g 1234 newGroup : newGroup이라는 이름의 그룹을 만들고 해당 그룹의 ID를 1234로 지정한다.


다음은 useradd 명령어와 groupadd명령어를 사용한 예시이다.



새로운 그룹 newGroup1, newGroup2, newGroup3을 생성했다. newGroup3의 ID는 1111로 지정해서 생상했다. tail 명령어로 /etc/group 파일을 확인해 보면 새롭게 생성된 세개의 그룹을 확인할 수 있다.

다음으로 새로운 사용자 newUser1, newUser2, newUser3을 생성했다. 

newUser1은 별도의 옵션 없이, userUser2는 newGroup1에 소속시키는 옵션으로, newGroup3은 newGroup2에 소속시키면서 홈 디렉터리를 /newHome으로 지정해서 생성했다.

/etc/passwd 파일을 확인해보면, 생성한 명령어의 옵션에 맞게 사용자가 잘 생성된 것을 확인할 수 있다.


passwd

비밀번호 지정 및 변경


사용법 : passwd 사용자이름

사용자를 처음 생성하면 임의의 비밀번호를 부여한다. 단, root 권한의 사용자라도 다른 사용자의 비밀번호는 암호화된 형태로 보여지기 때문에 알 수 없다. 따라서 새롭게 생성한 사용자의 비밀번호를 지정해 줘야 한다. 비밀번호 변경도 해당 명령어로 동일하게 가능하다.

아래는 사용자의 비밀번호를 변경하는 예시이다.

비밀번호 변경 명령어 passwd는 문답 형식으로 진행된다.

정해진 규칙에 맞지 않는 비밀번호를 입력했을 경우 오류메시지가 나오지만, root사용자의 경우 무시하고 비밀번호를 지정해 줄 수 있다.


usermod

사용자 속성 변경

이미 존재하는 사용자의 그룹, 홈디렉터리 등의 속성을 변경할 때 사용한다. 옵션은 useradd와 동일하다.


userdel

사용자 삭제.

사용자를 삭제한다. 별도의 옵션 없이 userdel 명령어로 삭제한 사용자의 홈 디렉터리는 남아있는다. 

사용자를 삭제하더라도 해당 사용자가 작업하던 자료들은 보존하기 위함이다.

홈 디렉터리까지 삭제하기 원한다면 -r 옵션을 줘서 "userdel -r 사용자이름" 과 같은식으로 사용한다.


change

암호변경 주기설정

사용자의 암호를 주어진 주기에 따라 변경하도록 설정한다.

change 명령어의 사용법과 옵션은 다음과 같다.


chage -l username : 사용자에게 설정해놓은 내용을 보여준다.

chage -m 3 username : 사용자에게 설정된 암호를 사용해야 하는 최소의 일자를 3일로 설정한다. 사용자는 암호 변경 뒤 최소 3일은 해당 암호를 사용해야 한다.

change -M 30 username : 사용자에게 설정된 암호를 사용할 수 있는 최대의 일자를 설정한다. 사용자는 암호를 변경한 후 최대 30일까지만 사용 가능하다.

change -E 2017/12/31 username : 사용자에게 설정된 암호가 만료되는 날자를 2017/12/31로 설정한다.

change -W 5 username : 사용자에게 암호 만료에 대한 경고를 5일 전부터 보여준다. 별도로 지정하지 않을 경우 디폴트는 7일이다.


groups

사용자가 소속된 그룹(들)을 보여준다. 하나의 사용자는 여러 그룹에 소속될 수 있기 때문에 다건의 그룹들이 보여질 수 있다.


groupmod

그룹 속성 변경

그룹의 이름 등의 속성을 변경한다.

예) groupmod -n groupA groupB : groupA의 이름을 groupB로 변경한다.


groupdel

그룹을 삭제한다. 이 때 삭제하려는 그룹을 주요 그룹으로 하는 사용자가 없어야 삭제가 가능하다.


gpasswd

그룹 관리

그룹의 암호를 설정하고 그룹 관리를 하는 명령어이다.

gpasswd의 옵션과 사용법은 다음과 같다.


gpasswd groupA : groupA 그룹의 암호를 설정한다. 사용자 암호 설정과 동일한 과정을 따른다.

gpasswd -A userA groupA : groupA 그룹의 관리자를 userA 사용자로 지정한다.

gpasswd -a userA groupA : userA를 groupA 그룹의 사용자로 추가한다. 

gpasswd -d userA groupA : userA를 groupA의 사용자에서 제거한다.


반응형

 Other Contents