passwd 권한 644 (root:root)
root:x:0:0:root:/root:/bin/bash
test:x:1001:1002:,,,:/home/test:/bin/bash
[ID]:[PASSWD]:[UID]:[GID]:[GECOS]:[USERDIR]:[USERSHELL]
오래된 리눅스 or 유닉스는 PASSWD 칸이 직접 매겨져있다.
요즘은 PASSWD만 따로 shadow 파일로 만들어서 쓰는데
뭐 옛날에는 해싱을 못풀어서 패스워드파일이 공개되도 별 문제 없었다는데
이젠 개나소나 다푸니까 그거 자체도 보호해야된다 싶어서 일반유저는 읽을수도 없다나 뭐라나…
예를들어 test아이디는 암호가 shadow파일에 있으며 UID는 1001이며 GID는 1002이다 홈디렉토리는 /home/test 이며 쉘은 /bin/bash 를 쓴다 정도?
GECOS는 사용자 정보를 저장하는데
Full Name: Only
Room Number []: 105
Work Phone []: 010
Home Phone []: 055
뭐 이런거? 위대로 쓰니까 GECOS 에 Only,105,010,055 이렇게 들어가있네
passwd 파일을 변경시킬수있는 명령어들로는
adduser – 유저 생성시
deluser – 유저 제거시
usermod – 유저 변경시
chfn – GECOS 변경시
기타등등 (만들기나름이겠지뭐)
shadow 권한 640 (root:shadow)
root:!:14606:0:99999:7:::
test:$6$j9YC72KG$ysrTy/UpuPez62gWPp/P0.glzzGm9JnpKmQ3TDn1ab..uT8TvHEpv9.IISjdjhQut4CXgA.RieQtVAPtiLq0w.:14643:0:99999:7:::
– 아이디
– 해시된 패스워드
– 마지막 패스워드 바꾼날짜
– 패스워드 변경까지 남은기간 (최소)
– 패스워드 변경까지 남은기간 (최대)
– 패스워드 만료전 경고기간
– 패스워드 만료후 사용 가능한 기간
– 계정 만료일
– 사용치 않음
패스워드를 중점적으로 관리하기위해 따로 떨어져나온 파일이다 랄까 ..
해시된 패스워드에 대해 자세히 쓰자면
$6$j9YC72KG$ysrTy/UpuPez62gWPp/P0.glzzGm9JnpKmQ3TDn1ab..uT8TvHEpv9.IISjdjhQut4CXgA.RieQtVAPtiLq0w
으잌 매우길다 ㅋㅋ ($는 토큰이다)
첫번째는 해시방법 0-DES, 1-MD5, 2-Blowfish, 5-SHA-256, 6-SHA512 (6이므로 SHA512로 되어있음을 알수있다)
두번째는 SALT – 사전파일크랙을 방지하기위해 암호문에 추가하는 문자열.
세번째는 해시된 문자열 (MD5라고해서 MD5형식이 아니다… 위 해시방법을 Base 로 조금 다른 해시방법)
passwd 명령어를통해 조작할수있다.
group 권한 644 (root:root)
root:x:0:root,test
test:x:1002:
[GROUP_NAME]:[GPASSWD]:[GID]:[USER_LIST]
이런형태이며
USER_LIST 에는 여러명의 유저가 들어갈수있으며 , 콤마로 구분된다.
변경할수있는 명령어들은
groupadd groupdel groupmod 이런거 ?!
gshadow도 있는데 잘 안쓰이며 위 shadow와 비슷하므로 넘어간다