사용자 및 그룹 정보 파일
파일 | 설명 |
---|
/etc/passwd | 시스템에 등록된 사용자 정보 |
/etc/shadow | 시스템에 등록된 사용자의 패스워드와 패스워드에 대한 설정 |
/etc/group | 시스템에 등록된 그룹 정보 |
/etc/gshadow | 시스템에 등록된 그룹의 패스워드와 패스워드에 대한 설정 |
/etc/passwd
[user@localhost ~]$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
USER:x:UID:GID:GECOS:HOME:SHELL
- USER: 사용자 이름. 중복되지 않아야 함.
- x: 패스워드. 현재 사용하지 않고 패스워드에 대한 정보는 /etc/shadow파일에 해시워드 형태로 저장됨
- UID: 사용자 식별 번호. 0번은 root, 1000번 미만은 시스템 사용자 계정, 일반 사용자는 1000번부터 시작
- GID: 그룹 식별 번호. 0번 root그룹, 1000번 미만 시스템 그룹, 1000번 이상 일반 그룹
- GECOS:General Electric Comprehensive Operating. 주석 필드
- HOME: 사용자의 홈 디렉토리
- SHELL: 사용자가 사용할 기본 쉘
/etc/shadow
- 사용자의 패스워드를 해시패스워드 형태로 저장하고 패스워드에 대한 속성을 저장한 파일
- 관리자 권한이 있어야만 접근 가능
- /etc/passwd보다 강력한 해시 알고리즘
USER : HASH : LASTCHANGE : MIN : MAX : WARNING : INACTIVE : EXPIRE : BLANK
- USER: 사용자 이름
- HASH: 패스워드를 해시 알고리즘으로 저장, $ 3개로 구분.
- LASTCHANGE: 마지막으로 패스워드를 변경한 날짜
- MIN: 패스워드 변경 후 최소 사용 기간
- MAX: 패스워드 변경 후 최대 사용 기간. 만료일 전에 갱신해야 함
- WARNING: 만료일이 되기 전 경고 메시지를 출력할지. warning=5이면 만료 5일 전부터 경고 메시지 출력
- INACTIVE: 패스워드 만료되고 inactive 기간 안에 패스워드를 변경하지 않으면 사용자 계정 잠금
- EXPIRE: 사용자 계정 만료일. 만료일이 되면 잠금상태.
- BLANK: 예약된 필드. 현재 미사용.
※ 패스워드 해시는 $를 기준으로 필드가 3개로 나뉘고 순서대로 해시 알고리즘 종류, salt 값(패스워드 설정시 생성되는 랜덤 값), 패스워드와 salt를 해시화한 해시암호
패스워드 속성 변경
change
명령으로 패스워드 속성을 변경할 수 있다.
- root 권한으로만 가능하다.
/etc/group
- 사용자가 생성되면 사용자의 이름과 똑같은 이름의 그룹도 함께 생성됨
- 해당 그룹을 기본 그룹으로 지정하고 있는 사용자의 정보는 확인 불가
- 기본 그룹 정보는 /etc/passwd에서 확인
id
명령으로 사용자의 이름, UID 정보, 기본그룹과 보조그룹의 정보 출력
[user@localhost ~]$ id user
uid=1000(user) gid=1000(user) groups=1000(user),10(wheel)
- /etc/group에서 그룹의 GID와 구성원 확인 가능
[user@localhost ~]$ cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
GROUP : x : GID : MEMBER
- GROUP: 그룹의 이름. 중복되지 않아야 함.
- x: 그룹의 패스워드. 사용 안함. 패스워드는 /etc/gshadow에 저장
- GID: 그룹의 고유 ID
- MEMBE: 이 그룹을 보조 그룹으로 지정하는 사용자의 목록
/etc/gshadow
[user@localhost ~]$ sudo cat /etc/gshadow
root:::
bin:::
daemon:::
GROUP : PASSWORD : ADMIN : MEMBER
- GROUP: 그룹의 이름
- PASSWORD: 그룹의 암호화된 패스워드
- ADMIN: 그룹 관리자
- MEMBER: 그룹 멤버