Linux 로그 경로 정리 · 22/50 · Part 3. Ubuntu / Debian 로그 경로

선행 학습 → 13. /var/log/secure 분석 · 21. Ubuntu 주요 로그 경로
이번 글 → /var/log/auth.log 분석
이어서 → 23. /var/log/syslog 분석

1. 들어가며

/var/log/auth.log 는 Ubuntu의 인증 창구로, RHEL secure 와 내용은 거의 같지만 운영 방식이 다릅니다. 권한(adm 그룹 열람), 순환 방식(.1, .2.gz), 타임스탬프 형식이 다르기 때문에 RHEL용 명령을 그대로 쓰면 결과가 누락될 수 있습니다.

핵심 요약

  • auth,authpriv.* → /var/log/auth.log (0640 syslog:adm)
  • 순환: auth.log.1(비압축) → auth.log.2.gz ~ (compress + delaycompress) → zgrep 필수
  • 이벤트 문자열은 RHEL과 동일한 sshd/PAM/sudo 형식

2. 핵심 개념

항목Ubuntu auth.logRHEL secure
facilityauth + authprivauthpriv
권한0640 syslog:adm0600 root:root
순환주 1회, 4세대, .1 → .N.gz주 1회, 4세대, -YYYYMMDD 비압축
검색zgrep 로 압축 포함grep 로 충분
추가 이벤트systemd-logind 세션 일부, CRON 의 PAM 세션비슷

3. 로그 생성 구조

auth.log = Ubuntu 인증 창구

sshd / sudo / su / login / useradd / passwd / pam_*  (auth, authpriv)
          ↓
       journald ──▶ rsyslog (50-default.conf: auth,authpriv.*) ──▶ /var/log/auth.log (0640 syslog:adm)
          ↓                                                              ↓ weekly logrotate
   journalctl -u ssh (서비스명이 ssh)                        auth.log.1 → auth.log.2.gz → ... .4.gz

Ubuntu의 OpenSSH 서비스 유닛 이름은 ssh.service 입니다(RHEL은 sshd.service). journalctl -u sshd 가 비어 있으면 -u ssh 로 조회합니다. 24.04는 소켓 활성화(ssh.socket)를 쓰는 경우도 있습니다.

4. 실제 로그 경로

/var/log/auth.log            현재
/var/log/auth.log.1          직전 주 (비압축, delaycompress)
/var/log/auth.log.[2-4].gz   이전 주 (압축)
journalctl -u ssh            sshd 원천
/var/log/btmp                실패 로그인 (lastb)

5. 명령어 실습

A=/var/log/auth.log

# 순환 파일 포함 전체 검색 (zgrep -h: 파일명 생략)
zgrep -h 'Failed password' $A* | grep -oE 'from [0-9.]+' | sort | uniq -c | sort -rn | head

# 실패 이력 IP 의 성공
zgrep -h 'Failed password' $A* | grep -oE 'from [0-9.]+' | awk '{print $2}' | sort -u > /tmp/failed_ips.txt
zgrep -hF -f /tmp/failed_ips.txt $A* | grep 'Accepted'

# sudo 명령과 실패
zgrep -h 'sudo:' $A* | grep -E 'COMMAND=|incorrect password|NOT in sudoers' | tail -15

# 계정·그룹 변경 (adm·sudo 그룹 추가는 권한 상승)
zgrep -hE 'useradd|usermod|groupadd|gpasswd|password changed|add .* to group' $A*

# 원천 대조
journalctl -u ssh --since "-1d" --no-pager | grep -E 'Accepted|Failed' | tail -5

/tmp/failed_ips.txt 는 분석용 임시 파일입니다. 사고 조사 시에는 조사 디렉터리에 저장합니다.

6. 로그 예시

실제 실행 결과 — Ubuntu 24.04 · root@ubuntu-lab — auth.log 인증 이벤트

위 이미지는 Ubuntu 24.04 실습 환경에서 auth.log 인증 이벤트를 실제로 조회한 결과입니다.

아래는 Ubuntu에서 권한 상승 경로를 설명하기 위한 예시 로그입니다.

[예시 로그]
2026-09-20T02:16:40.118223+09:00 web02 usermod[5210]: add 'sysbackup' to group 'sudo'
2026-09-20T02:16:40.118511+09:00 web02 usermod[5210]: add 'sysbackup' to shadow group 'sudo'

Ubuntu에서 관리자 권한 그룹은 sudo (RHEL은 wheel)입니다. 로그 열람 그룹 adm 추가도 정보 수집 목적의 권한 확대입니다.

7. 로그 필드 분석

필드예해석
타임스탬프2026-09-20T02:16:40.118223+09:00연도·TZ·μs 포함 (24.04 형식 예)
태그usermod[5210]계정 관리 도구
동작add 'sysbackup' to group 'sudo'관리자 그룹 추가 = 권한 상승

8. 보안관점

정상의심
초기 설치 사용자의 sudo 그룹 소속최근 생성 계정의 sudo/adm 그룹 추가
공개키 로그인외부 IP 비밀번호 로그인
sudo apt upgradesudo -i, sudo su -, sudo bash
auth.log.2.gz 등 순환 파일 연속순환 파일 중 일부 누락

9. SOC 관점

  • Wazuh 수집: <location>/var/log/auth.log</location> (log_format syslog). 순환 파일은 에이전트가 이미 전송했으므로 SIEM에서 과거 조회.
  • Triage: Ubuntu Alert의 원본 확인 시 zgrep 으로 순환 파일까지 확인.
  • Investigation: usermod ... group 'sudo' → 이후 해당 계정의 sudo: 사용 이력.
  • Response: 그룹 제거 전 증거 보존, /etc/group·/etc/sudoers.d/ 확인.

10. 실습 체크리스트

[ ] auth.log 권한(0640 syslog:adm) 확인
[ ] 순환 파일 구조(.1, .N.gz) 확인
[ ] zgrep 으로 순환 포함 검색
[ ] 실패 이력 IP 의 성공 탐지
[ ] sudo / adm 그룹 추가 탐지
[ ] journalctl -u ssh 로 원천 대조

11. 핵심 정리

  • Ubuntu 인증 로그는 auth.log 이며 내용 형식은 RHEL secure 와 같다.
  • 순환 파일이 압축되므로 zgrep 을 기본으로 쓴다.
  • 관리자 그룹은 sudo, 로그 열람 그룹은 adm 이다.
  • 서비스 유닛 이름은 ssh 이다.
  • 타임스탬프 형식(전통/ISO)을 먼저 확인하고 파싱한다.

12. 다음 편 연결

구분글
◀ 이전 글21. Ubuntu 주요 로그 경로
▶ 다음 글23. /var/log/syslog 분석
시리즈Linux 로그 경로 정리 전체 보기
선행 시리즈리눅스 시스템 기초 · 파일 · 권한 · 사용자 관리 · 서비스 · 프로세스 관리 · Linux 시스템 보안 기초
profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글