LabHub

LFCS — 리눅스 재단 시스템 관리자 · 사용자·그룹·권한 · 실습

사용자와 그룹 만들고 정책 걸기

LabHub 에서 이어서 보기

목표

실제로 사용자와 그룹을 만들고, 암호 정책을 걸고, 계정 데이터베이스 세 파일에서 값을 직접 읽어 확인한다.

왜 중요한가

계정 관리는 LFCS 에서 배점이 확실한 영역이면서, 실무에서 되돌리기 가장 어려운 작업이기도 하다. usermod -G 에서 추가 옵션 하나를 빠뜨리면 사용자의 보조 그룹이 전부 날아가고, 그 사용자가 관리자였다면 복구 경로 자체가 사라진다. 그래서 이 실습은 매번 idgetent 로 결과를 확인하는 습관을 만드는 데 초점을 둔다. 암호 정책도 마찬가지다 — /etc/shadow 의 만료 필드는 날짜가 아니라 1970년부터의 일수라서, 값을 눈으로 보고 "이게 맞나" 를 판단하려면 그 규칙을 알아야 한다. 마지막 단계에서 만드는 고아 홈 디렉터리는 실제 서버에서 UID 가 재사용될 때 남의 파일을 읽게 되는 사고의 씨앗이다.

단계

1. GID 가 4200 인 그룹 lfcsops 와, GID 를 지정하지 않은 그룹 lfcsdev 를 만드세요.
2. 사용자 lfcsadm 을 UID 4201, 기본 그룹 lfcsops, 홈 디렉터리 /home/lfcsadm(실제로 생성), 로그인 셸 /bin/bash 로 만드세요.
3. 사용자 lfcsdev1 을 기본 그룹 lfcsdev 로 만들고 보조 그룹으로 lfcsops 를 주세요. 그리고 lfcsadm 의 기본 그룹은 그대로 둔 채 보조 그룹에 lfcsdev추가하세요.
4. 서비스 계정 lfcssvc 를 UID 1000 미만(시스템 계정 범위), 로그인이 불가능한 셸, 홈 디렉터리 없이 만드세요.
5. lfcsdev1 의 암호 정책을 최소 사용 일수 7, 최대 사용 일수 90, 만료 경고 14일, 계정 만료일 2027-12-31 로 설정하세요.
6. lfcsdev1 에 암호를 설정한 다음 그 암호를 잠그세요. /etc/shadow 두 번째 필드가 느낌표로 시작하고 그 뒤에 해시가 남아 있어야 합니다.
7. /root/lfcs-users/report.txtuid=<lfcsadm 의 UID>, gid=<lfcsops 의 GID>, shadow_max=<lfcsdev1 의 최대 사용 일수> 세 줄을 적으세요.
8. 홈 디렉터리가 있는 임시 계정 lfcstmp 를 만든 뒤, 홈은 남기고 계정만 삭제하세요. /home/lfcstmp 는 남아 있고, 그 소유 UID 에 대응하는 계정은 없어야 합니다.

참고

단계 8개

  1. 그룹 두 개 만들기
  2. UID·홈·셸을 지정한 사용자
  3. 보조 그룹 붙이기
  4. 로그인 불가 서비스 계정
  5. 암호 만료 정책
  6. 암호 설정 후 잠그기
  7. 계정 데이터베이스에서 값 읽기
  8. 계정만 지우고 홈은 남기기