[centos7] 사용자 관리

cateto·2022년 10월 17일
0
post-thumbnail

기본적으로 리눅스는 다중 사용자가 한 OS에 접속해서 동시에 사용할 수 있도록 하는 서버 컴퓨터에 최적화된 OS이다. 그만큼 사용자에 대한 인증(Authentication)과 인가(Authority)가 중요할 것이다.

사용자 관리의 경험을 떠올려 보면, 작년 말 올해 초에 서버 이관을 할 일이 많았는데 그때마다 공용으로 사용할 계정을 생성하고 패스워드 부여하고 Sudoer 등록하고 하는 과정을 여러번 거쳤던 것 같다. 그리고 외부 업체에서 서버를 세팅해줬을 때에도 기본적으로 제공되는 계정을 사용하기 보다는 팀 내에 공유되어 있는 계정정보를 기반으로 새로 생성해서 전달하고 접속하고 사용하고 있다. 하지만 그렇다고 해서 계정 관리를 체계적으로 했다기보다는 좋게 말하면 기본에 충실한(?) ㅎㅎㅎ 계정 관리를 딱히 안했다.. 그래도 나름 혼자서 고군분투했다.. 그래도 서버 컴퓨터의 장점은 사용자에 따라 저장공간이나 권한을 구획화할수 있다는 게 아닐까? 컨테이너 오케스트레이션이 활발한 현재 아키텍처를 경험하고 있으면서... 저수준(Low Level) 이라고 하면 말이 안맞을 수도 있지만 OS 수준에서 가장 기본적이고 기본적인 유저관리를 시나리오를 세워서 정리해보자.

시나리오 1. "계정명 kitty로 생성해주시고, 그룹명 아래에 아이디명으로 홈 디렉터리를 생성하고, DB담당자 그룹을 부여해주시길 요청드립니다."

mkdir /home/dbm
groupadd dbm
useradd -g dbm -d /home/dbm/kitty kitty

-g dbm -d /home/dbm/kitty
-g : 그룹명으로 그룹 부여
-d : 홈디렉터리를 지정


시나리오 2. "2022년 12월 31일까지만 로그인 가능한 andy, jacob 두 계정 생성해주시고 홈 디렉터리는 /home/intern 아래에 계정명으로 생성해주시길 요청드립니다."

mkdir /home/intern
useradd -D -d /home/intern -e 2022-12-31
useradd andy
useradd jacob

-D -d /home/intern -e 2022-12-31
-D : --default와 동일. useradd 기본값을 다음에 설정하는 값으로 함
-d : 홈디렉터리를 설정
-e : 만료일 설정


시나리오 3. "max 사용자의 로그인을 일시적으로 정지시켜주세요. hugo 사용자는 2022-12-31 까지만 로그인 되도록 설정해주시고, 패스워드 만기일이 지난 후 유예 기간은 5일로 설정해주세요."

usermod -L max
usermod -e 2022-12-31 -f 5 hugo

-L : lock! 계정의 로그인을 lock.
-e : 만료일 설정
-f : 만료 후 n일 이후 계정 비활성화


시나리오 4. "kitty 계정을 패스워드 정책을 설정해주세요."

chage -m 3 -M 30 -E 2022-12-31 -I 7 kitty

-m 3 -M 30 -E 2022-12-31 -I 7
-m : 패스워드 변경후 최소 n일 이내 사용
-M : 패스워드 변경 없이 n일 사용 가능
-E : 만료일 설정
-I : 패스워드 만기일 이후 유예기간


시나리오 5. "hugh 계정을 oliver 계정으로 변경해주세요. 홈디렉터리 아래 기존 파일도 동일하게 유지시켜주시고요."

usermod -l oliver -d /home/oliver -m  hugh

-l oliver -d /home/oliver -m
-l : 변경하고자 하는 계정
-d : 변경하고자 하는 디렉터리
-m : 디렉터리 밑 파일을 변경된 홈디렉터리로 옮김


시나리오 6. "/etc/shadow가 없는데 생성해주세요."

pwconv

pwconv


시나리오 7. "/etc/passwd 및 /etc/shadow 필드 검사 해주시고, 아이디 중복 유무와 유효한 사용자 체크해주세요."

pwck

pwck


시나리오 8. "웹 담당자용 그룹 생성해주시고, GID는 1000번으로 부탁드리구요. 그룹명은 webmanager로 해주시고, /home/webmanager 아래에는 그룹만 접근, 파일확인 권한 부여해주세요."

groupadd -g 1000 webmanager
mkdir /home/webmanager
chgrp webmanager /home/webmanager
chmod 750 /home/webmanager

시나리오 9. "admin 그룹 생성해주시고, 해당 그룹 관리자로 kitty 사용자를 지정해주세요."

grpconv
groupadd admin
gpasswd -A kitty admin
groupmod -n admingrp admin

시나리오 10. "패스워드 없이 로그인가능하도록 dougie 계정을 설정해주시고, 패스워드 변경일을 2022-10-31, 계정만기일을 2023-06-30으로 설정해주세요."

passwd -d dougie
chage -d 18523 -E 2023-06-30 dougie
profile
Curious for Everything

0개의 댓글