728x90
리눅스 로그인 기록 확인 명령어
로그인 가능한 사용자만 확인
awk -F: '$7 ~ /(bash|sh)$/ {print $1}' /etc/passwd
시스템 계정만 확인
awk -F: '$7 ~ /(nologin|false)$/ {print $1}' /etc/passwd
/etc/passwd 파일 구조
사용자명 : 암호자리 : UID : GID : 설명(또는 코멘트) : 홈 디렉터리 : 로그인 쉘
admin:x:1001:1001::/home/admin:/bin/bash
항목 값 의미
| 사용자명 | admin | 계정 이름 |
| 암호자리 | x | 실제 암호는 /etc/shadow 파일에 저장됨 |
| UID | 1001 | User ID — 시스템에서 고유하게 식별 |
| GID | 1001 | Group ID — 주 그룹의 ID |
| 설명 | (비어 있음) | 보통 사용자 이름 등 메모용 |
| 홈 디렉터리 | /home/admin | 로그인 시 시작 위치 |
| 로그인 쉘 | /bin/bash | 로그인 시 실행되는 쉘 (bash = 명령어 입력 가능) |
각 필드 상세 설명
① 사용자명 (username)
리눅스 계정을 식별할 이름
파일·디렉터리의 소유자 표시, 로그인 시 사용
② 암호자리 (x)
예전 리눅스에서는 암호 해시가 여기에 직접 저장됐지만,
지금은 보안 때문에 /etc/shadow 파일로 분리되어
여기엔 단순히 “x”가 표시
확인 예시:
sudo cat /etc/shadow | grep outadmin
→ 여기에 실제 암호 해시가 저장
③ UID (User ID)
리눅스는 이름보다 UID 숫자로 사용자를 식별
파일 소유권 등도 내부적으로 UID로 처리
UID의미
| 0 | root (슈퍼유저) |
| 1~999 | 시스템 계정 (데몬/서비스용) |
| 1000~ | 일반 사용자 |
④ GID (Group ID)
사용자가 속한 기본 그룹의 ID
이 그룹 정보는 /etc/group 파일에서 확인 가능
grep 1001 /etc/group
→ admin이 속한 그룹을 표시
⑤ 설명(Comment)
보통 "Full Name" 같은 식으로 메모를 적는 자리
비어 있으면 그냥 공백
ubuntu:x:1000:1000:Ubuntu Default User:/home/ubuntu:/bin/bash
→ “Ubuntu Default User” 부분이 설명
⑥ 홈 디렉터리 (Home Directory)
사용자가 로그인하면 처음 위치하는 디렉터리
여기서 개인 설정파일(.bashrc, .profile) 등이 관리
- root → /root
- 일반 사용자 → /home/<username>
⑦ 로그인 쉘 (Login Shell)
로그인할 때 실행되는 명령어 해석기(shell)
쉘의미
| /bin/bash | 일반 명령어 입력 가능 |
| /bin/sh | 기본 쉘 (bash와 유사) |
| /usr/sbin/nologin | 로그인 불가 |
| /bin/false | 로그인 즉시 종료 |
/usr/sbin/nologin 또는 /bin/false 면 “서비스용 계정”
728x90
'IT 끄적이기' 카테고리의 다른 글
| 딩코딩코 바이브코딩 강의 후기 - AI로 개발하기 (0) | 2025.11.02 |
|---|---|
| API, 라이브러리, 프레임워크 - 헷갈리는 개념 정리 (0) | 2025.10.31 |
| 네트워크 DMZ란? (1) | 2025.09.16 |
| 서브넷마스크, IP 대역, VPN 정리 (0) | 2025.09.16 |
| 개발 기술 분류 - 공부용 (4) | 2025.08.10 |