C.W.K.
Stream
Lesson 08 of 14 · published

감사 — 누가 언제 로그인

~12 min · audit, last, auth.log, log-show

Level 0Pinger
0 XP0/101 lessons0/12 achievements
0/150 XP to next level150 XP to go0% complete

거기 누가 있었나 가시성

작은 fleet 라도 "이 서버에 지난 주 누가 로그인했어?" 답할 수 있어야. 정보가 표준 로그에 살아; 기술이 query 알기.

Linux — auth.log 와 lastb

성공 로그인이 /var/log/auth.log(systemd 면 journalctl) 로. 실패 시도도; lastb 가 bad-login DB 읽음. last 가 good-login. 결합하면 풀 패턴 — 누가, 언제, 어디서.

macOS — unified log

macOS 가 모든 거 unified log 로 funnel. log show + predicate 로 query. Linux 텍스트 로그보다 덜 ergonomic, predicate 구문 배우면 더 강력. Process (process == "sshd") 와 시간 window (--last 24h) 로 필터.

Code

Linux 감사 query·bash
# Recent successful logins
last -20

# Currently logged in
w
who

# Failed login attempts (root required)
sudo lastb -20

# Failed sshd attempts (Debian/Ubuntu)
sudo grep 'Failed password' /var/log/auth.log | tail -20
sudo grep 'Invalid user' /var/log/auth.log | tail -20

# All sshd activity
sudo grep sshd /var/log/auth.log | tail -50

# Or via journalctl
sudo journalctl -u ssh --since '24 hours ago'
macOS 감사 query·bash
# All sshd messages in the last hour
log show --predicate 'process == "sshd"' --last 1h

# Just successful auth in the last day
log show --predicate 'process == "sshd" && eventMessage contains "Accepted"' --last 24h

# Failed auth (sshd uses 'authentication failure')
log show --predicate 'process == "sshd" && eventMessage contains "failure"' --last 24h

External links

Exercise

도달 가능한 모든 서버에서 last -10(Linux) 또는 macOS log query. 모든 줄 읽어. 모든 로그인 설명 가능? 모르는 거 — username, 출처 IP, 시간 — 있어? 그게 당길 실. 모든 거 routine 보이면 query 매일 돌리고 summary 이메일 보내는 10 줄 스크립트 작성. 이제 자동 가시성.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.