사용자계정관리 운영체제실습
목차 Ⅲ. 사용자계정관리 4.1 사용자계정관리 4.2 그룹관리 4.3 사용자계정관련파일 4.4 패스워드관리 4.5 사용자신분확인
4.1 사용자계정관리 사용자생성관련명령어 사용자생성 : useradd / adduser 사용자삭제 : userdel 사용자정보변경 : usermod 패스워드설정및변경 : passwd 그룹생성관련명령어 group 생성 : groupadd group 삭제 : groupdel group 정보변경 : groupmod 관련파일 /etc/passwd /etc/shadow /etc/group /etc/default/useradd /etc/login.defs /etc/skel/*
4.1.1 사용자계정생성 useradd / adduser 사용자계정생성 - #useradd [ 계정명 ] - #adduser [ 계정명 ] 사용자계정패스워드설정및변경 - #passwd [ 계정명 ] 사용자계정생성확인 - /etc/passwd 파일 - /etc/shadow 파일 - /etc/group 파일
4.1.1 사용자계정생성 사용자계정생성 - ID : evergreen useradd / adduser 패스워드설정 - #passwd evergreen 사용자계정생성 계정생성확인 - /etc/passwd - /etc/shadow - /etc/group
4.1.1 사용자계정생성 사용자계정생성 - ID : evergreen useradd / adduser 패스워드설정 - #passwd evergreen 계정생성확인 - /etc/passwd - /etc/shadow - /etc/group
4.1.1 사용자계정생성 useradd / adduser 디렉토리지정하여, 사용자계정생성 - ID : blue - 지정디렉토리 : /home/colors 패스워드설정 - #passwd blue 계정생성확인 - /etc/passwd - /etc/shadow - /etc/group
4.1.1 사용자계정생성 useradd / adduser 계정생성시 사용자설명 추가 - #useradd c [ 설명내용 ] 계정명 /etc/passwd 파일의 5 번째필드에내용추가
4.1.1 사용자계정생성 useradd / adduser 계정생성시 UID 를지정 - #useradd 계정명 -u [UID] /etc/passwd 파일의 3 번째필드 참고
4.1.2 사용자계정삭제 계정삭제 userdel - #userdel [ 계정명 ] 계정삭제시 사용자홈디렉토리 " 까지삭제 - #userdel -r [ 계정명 ] Ex) flower 사용자계정삭제
4.1.2 사용자계정삭제 계정삭제 userdel - #userdel [ 계정명 ] 계정삭제시 사용자홈디렉토리 " 까지삭제 - #userdel -r [ 계정명 ] Ex) evergreen 사용자계정삭제 ( 디렉토리까지삭제 )
4.1.3 사용자계정정보변경 계정정보변경 usermod - #usermod [ 옵션 ] [ 계정명 ] /etc/passwd 혹은 /etc/shadow 파일의내용을변경하는것임
4.1.3 사용자계정정보변경 사용자 UID 변경 usermod - #usermod -u [UID] [ 계정명 ] /etc/passwd 파일의 3 번째필드 (UID 필드 ) 정보변경
4.1.3 사용자계정정보변경 usermod 사용자계정사용종료일지정 - #usermod e [xxxx-xx-xx] [ 계정명 ] /etc/shadow 파일의 8 번째필드 (disable 필드 ) 변경 - 1970 년 1 월 1 일부터계산
4.1.3 사용자계정정보변경 usermod 사용자의홈디렉토리변경 - #usermod d [ 홈디렉토리경로 ] [ 계정명 ] /etc/passwd 파일의 6 번째필드 ( 홈디렉토리 ) 변경 실제홈디렉토리가변경되는것은아님
4.1.3 사용자계정정보변경 usermod 사용자의로그인쉘변경 - #usermod s [ 변경할쉘 ] [ 계정명 ] /etc/passwd 파일의 7 번째필드 ( 로그인쉘 ) 변경 참고 - vi 로 /etc/passwd 를직접변경해도동일한효과
4.2.1 그룹생성 groupadd 그룹생성 - #groupadd 옵션 [ 그룹명 ] 그룹삭제 - #groupdel [ 삭제할그룹 ] 그룹생성확인파일 - /etc/group 파일 관련파일 - /etc/login.defs 파일 (GID 시작번호 )
4.2.1 그룹생성 groupadd 그룹생성 - #groupadd testgroup - #groupadd -g [GID] testgroup 그룹생성시 GID 설정 - #groupadd -r testgroup => 그룹생성시시스템그룹설정
4.2.2 그룹삭제 groupdel 그룹삭제 - #groupdel [ 삭제할그룹 ]
4.2.3 그룹정보변경 groupmod 그룹정보변경 - #groupmod [ 옵션 ] [ 그룹명 ] 그룹의 GID 변경 - #groupmod -g [GID] [ 그룹명 ] 그룹의이름변경 - #groupmod -n [ 그룹 A] [ 그룹 B] - [ 그룹 B] 를 [ 그룹 A] 로이름변경 Ex1) testgroup 그룹의 GID 를 7778 에서 8888 로변경 Ex2) testgroup1 그룹의이름을 newgroup 으로변경
4.2.3 그룹정보변경 usermod 계정에그룹추가 - #usermod -G [ 그룹명 A] [ 그룹명 B] [ 계정명 ] Ex1) red 계정에 colors 그룹추가 - #usermod G colors red 계정에기본그룹변경 - #usermod -g [ 그룹명 ] [ 계정명 ] Ex2) Red 계정의기본그룹을 colors 로변경 - #usermod g colors red
4.2.3 그룹정보변경 gpasswd 그룹패스워드설정및관리 - #gpasswd [ 옵션 ] [ 그룹명 ] 그룹관리자를지정 - #gpasswd -A [ 그룹관리자 ] [ 그룹명 ] 그룹에사용자추가 - #gpasswd -a [ 계정명 ] [ 그룹명 ] 그룹에서사용자제외 - #gpasswd -d [ 계정명 ] [ 그룹명 ] 소속그룹변경 - #newgrp [ 그룹명 ]
4.2.3 그룹정보변경 gpasswd 그룹에패스워드설정및삭제 ( 큰의미없음 ) - #gpasswd [ 그룹명 ] - #gpasswd -r [ 그룹명 ] 관련파일 - /etc/group => 그룸명 : 그룹패스워드 : GID : 그룹맴버리스트 - /etc/gshadow => 그룹명 : 패스워드 : 그룹관리자 : 그룹맴버리스트
4.3 사용자계정관련파일 계정생성관련파일 /etc/default/useradd 파일 - 새로운계정생성할때, - 기본적으로사용할 홈디렉토리 - 쉘종류 - 종료일자 - 기본소속그룹 - 홈디렉토리 에복사될초기화파일들의위치지정
4.3 사용자계정관련파일 계정생성관련파일 /etc/login.defs 파일 - useradd 가새로운계정을생성할때, - 반드시참조하는파일
4.3 사용자계정관련파일 /etc/skel/* 파일 계정생성관련파일 - 새로운계정생성할때, 홈디렉토리 가자동으로생성되고, - /etc/skel 디렉토리에파일들을복사됨
4.4 패스워드관리 /etc/passwd 패스워드파일 ( /etc/passwd ) - 계정 ID : 패스워드 : UID : GID : 설명 : 홈디렉토리 : 로그인쉘
4.4 패스워드관리 shadow 패스워드시스템 shadow 파일 ( /etc/shadow ) - username : 패스워드 : Last changed : Minimum : Maximum : warn : inactive : expire : reserved
4.4 패스워드관리 shadow 패스워드시스템 shadow 패스워드시스템해제 - # pwunconv shadow 패스워드시스템시작 - # pwconv
4.4 패스워드관리 로그인방지 로그인일시금지 - /etc/passwd 파일의 로그인쉘 ( 기본쉘 ) 필드수정 /bin/false /sbin/nologin - /etc/passwd 파일의 패스워드 필드를수정 (x 를 * 로수정 ) - /etc/shadow 파일의 패스워드 필드앞에!! 를수정 패스워드 locking / unlocking - # passwd -l [ 계정명 ] // 사용자패스워드 locking - # passwd -u [ 계정명 ] // 사용자패스워드 unlocking 로그인불가능하도록계정생성 - # useradd -s /bin/fasle [ 계정명 ] - # useradd -s /sbin/nologin [ 계정명 ]
4.5 사용자신분확인 로그인계정확인 whoami ( who am i ) id UID, GID 값확인 - UID 값, GID 값, 속해있는그룹들 groups 나 or 다른사람이속한그룹 - #groups 계정명
4.5 사용자신분확인 현재사용자변경 (su) su (substitute user) - #su 계정명 - #su - 계정명 시스템관리자로변환 #su root #su root Su 로변환시패스워드사용 (1) 패스워드사용하는경우 - 사용자 관리자 (root) - 사용자 A 사용자 B (2) 패스워드사용하지않는경우 - 관리자 (root) 사용자
4.5 사용자신분확인 현재사용자변경 (su) su 와환경변수 - - 사용 (1) 변경할사용자의환경변수적용 - #su - 계정명 예 1) #su usera - usera 로사용자전환하면서 - usera 의환경변수적용 ( 사용 ) 예2) #su usera - usera로사용자전환 - usera의환경변수적용하지않음 ( 전환전의 root의환경변수를그냥사용함 )
4.5 사용자신분확인 su 와환경변수 - - 사용 현재사용자변경 (su) (1) 변경할사용자의환경변수적용 - #su - 계정명 현재환경변수출력 예 1) #su usera - usera 로사용자전환하면서 - usera 의환경변수적용 ( 사용 ) 예2) #su usera - usera로사용자전환 - usera의환경변수적용하지않음 ( 전환전의 root의환경변수를그냥사용함 )
4.5 사용자신분확인 현재사용자변경 (su) su 와환경변수 - - 사용 (1) 변경할사용자의환경변수적용 - #su - 계정명 예 1) #su usera - usera 로사용자전환하면서 - usera 의환경변수적용 ( 사용 ) 예2) #su usera - usera로사용자전환 - usera의환경변수적용하지않음 ( 전환전의 root의환경변수를그냥사용함 )