본문 바로가기
Linux

[Linux] 사용자와 그룹 관리

by noddu 2024. 3. 23.
728x90
반응형

 

 

사용자 제어 명령어

useradd - 사용자 추가

[root@localhost ~] man useradd	# 옵션 확인

[root@localhost ~] useradd -u 1234 newuser2	# id 지정
[root@localhost ~] useradd -g newGroup newuser3	# 그룹 지정
[root@localhost ~] useradd -d /newHome newUser4	# 홈 디렉토리 지정
[root@localhost ~] useradd -s /bin/csh nweUser5	# 쉘 지정

쉘은 설정하지 않으면 기본으로  /bin/bash 로 되어있습니다.

 

 

passwd - 사용자 비밀번호 변경

[root@localhost ~] passwd		# root 비밀번호 변경
[root@localhost ~] passwd newuser1	# newuser1의 비밀번호 변경

passwd 뒤에 아무런 사용자를 입력하지 않으면 root의 비밀번호를 변경할 수 있습니다.

 

 

userdel - 사용자 삭제

[root@localhost ~] userdel newuser1	# 홈 디렉토리는 남아있음
[root@localhost ~] userdel -r newuser1	# 홈 디렉토리까지 삭제

-r 옵션을 사용하지 않으면 홈 디렉토리 /home/user1가 삭제되지 않고 남아있습니다

 

 

chage - 사용자 암호 변경 관련설정

[root@localhost ~] chage -l newuser1	# 설정 확인
[root@localhost ~] chage -m 2 newuser1	# 암호 변경 최소 사용 날 수
[root@localhost ~] chage -M 2 newuser1	# 암호 변경 최대 사용 날 수
[root@localhost ~] chage -W 10 newuser1	# 암호 최대 사용 날 10일 전 부터 예고
[root@localhost ~] chage -E 2030/12/31 newuser1	# 계정 만료일

사용자의 보안을 위한 암호를 변경하기 위해 여러가지 옵션이 있습니다.

 

 

shadow - 비밀번호 확인

[root@localhost ~] tail -2 /etc/shadow	# 비밀번호 확인
user2:!!:19805:0:99999:7:::	# !! = 비밀번호가 정해지지 않음
user3:!!:19805:0:99999:7:::	# !! = 비밀번호가 정해지지 않음

[root@localhost ~] passwd user2	# 비밀번호 1234로 지정
[root@localhost ~] passwd user3	# 비밀번호 1234로 지정

[root@localhost ~] tail -2 /etc/shadow	# 비밀번호 확인 - 같은 값이 나오진 않음(암호화)
user2:$6$tbVamz55OAl6hQLO$7SKl9zkjq4rlZNffGbn4Snnfm2CzFXKpGzuEtXqKFxbOC9GueM/1DvvJeA6wZMGJlWPXGZqaoBT/Mp0HsnrYZ/:19805:0:99999:7:::
user3:$6$z.pCpEl3w7drmACs$sAt5MenyJc5h5mlfSAFURz6DUZcvr4GFpTSCeLY57J8TyWQmXLGn6KJa.MdFfHF50UNcl0WWGDJ/H4tCs2Zni/:19805:0:99999:7:::

 

user2, user3 둘 다 같은 비밀번호 1234로 설정했지만

확인해보면 암호화로 같은 비밀번호가 출력되지는 않습니다.

 

 

반응형

 

그룹 제어 명령어

 

[root@localhost ~] useradd user1

[root@localhost ~] tail -1 /etc/passwd
user1:x:1001:1001::/home/user1:/bin/bash	# id와 그룹 둘 다 1001

[root@localhost ~] tail -1 /etc/group	
user1:x:1001:	# user1이라는 그룹(사용자 id랑 다름)

/etc/passwd와는 다른

user1이라는 그룹과 1001이라는 그룹 id입니다

 

groupadd - 그룹 생성

[root@localhost ~] groupadd newGroup	# 그룹 생성
[root@localhost ~] tail -1 /etc/group	# 그룹 확인
newGroup:x:1001:	# newGroup은 1001번!

[root@localhost ~] useradd -g newGroup user2	# -g 옵션으로 그룹 지정
[root@localhost ~] useradd -g newGroup user3	# -g 옵션으로 그룹 지정

[root@localhost ~] tail -2 /etc/passwd		# 사용자 확인
user2:x:1001:1001::/home/user2:/bin/bash	# 동일한 1001번 그룹(newGroup)
user3:x:1002:1001::/home/user3:/bin/bash	# 동일한 1001번 그룹(newGroup)

그룹을 먼저 생성한 후 사용자를 생성할 때 그 그룹으로 설정해줍니다.

 

useradd -g undefinedGrop user5

 

사용자를 생성하는데 이렇게 없는 그룹에 넣으려고 하면

그룹이 없다는 오류와 함께 그룹사용자 모두 생성되지 않습니다.

 

 

/etc/skel 경로

[root@localhost ~] ls -a /etc/skel	# 생성하는 사용자는 이 경로의 파일을 복사함
.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla


[root@localhost ~] ls -a /home/user2 # 같은 파일들 확인
.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla

해당 경로에 파일을 두면 새로운 사용자에게 배포됩니다.

새로운 사용자마다 특정 파일이 생기길 원한다면 /etc/skel 경로에 넣어두면 됩니다.

 

X윈도우 화면으로 보기

[root@localhost ~] system-config-users	# X윈도우로 사용자, 그룹 설정할 수 있음(설치 필요)

 

반응형