Linux 로그 경로 정리 · 12/50 · Part 2. RHEL / Rocky Linux 로그 경로

선행 학습 → 11. Rocky Linux 주요 로그 경로 · 기초 21. grep으로 로그와 문자열 검색
이번 글 → /var/log/messages 분석
이어서 → 13. /var/log/secure 분석

1. 들어가며

/var/log/messages 는 RHEL 계열의 종합 상황판입니다. 서비스 기동·중지, 커널 경고, 네트워크 변화, 디스크 문제까지 모입니다. 양이 많아 "노이즈 파일"로 취급되기 쉽지만, 침해 이후의 서비스 등록, 커널 모듈 로딩, 로깅 중단 같은 흔적은 여기서 가장 먼저 보입니다.

핵심 요약

  • 규칙: *.info;mail.none;authpriv.none;cron.none — 인증·메일·cron은 들어오지 않는다.
  • 보안 관점 핵심 키워드: Started/Stopped, Created slice, kernel:, rsyslogd, audit
  • 로그인 추적은 messages 가 아니라 secure 에서 한다.

2. 핵심 개념

들어오는 것들어오지 않는 것
systemd 서비스 시작/중지/실패authpriv (sshd 인증 상세, sudo) → secure
커널 메시지 (kern)mail → maillog
NetworkManager, chronydcron → cron
systemd-logind 세션 생성 (New session)debug 레벨 (info 미만)
rsyslogd 자체 상태auditd 감사 레코드 (별도 경로)

3. 로그 생성 구조

messages에 모이는 이벤트

systemd(1) ─────┐
kernel ─────────┤
NetworkManager ─┼──▶ journald ──▶ rsyslog: *.info;mail.none;authpriv.none;cron.none ──▶ /var/log/messages
systemd-logind ─┤
chronyd ────────┘
sshd(authpriv) ─X  (messages 제외 → secure)

4. 실제 로그 경로

/var/log/messages              현재 파일
/var/log/messages-YYYYMMDD     주 단위 순환 파일 (비압축)
journalctl                     같은 이벤트의 원천 (필드 검색 가능)

5. 명령어 실습

# 오늘 기록 중 서비스 상태 변화
grep "$(date '+%b %e')" /var/log/messages | grep -E 'Started|Stopped|Failed|Reloaded' | tail -10

# 로깅 관련 데몬 자체의 이벤트 (중단/재시작 흔적)
grep -E 'rsyslogd|systemd-journald|auditd' /var/log/messages | tail -10

# 커널 경고/오류
grep 'kernel:' /var/log/messages | grep -Ei 'error|warn|fail|segfault|module' | tail -10

# 세션 생성 (누가 언제 로그인해 세션을 받았나)
grep -E 'systemd-logind.*New session|Removed session' /var/log/messages | tail -5

# 순환 파일까지 포함해 최근 7일 서비스 신규 등록
grep -h 'Reloading' /var/log/messages* | tail -5

6. 로그 예시

실제 실행 결과 — Rocky Linux 9.8 · root@rocky9-lab — messages 내용

위 이미지는 Rocky Linux 9.8 실습 환경에서 실제로 실행한 messages 조회 결과입니다.

아래는 보안 판단 설명용 예시 로그입니다.

[예시 로그]
Sep 20 02:16:12 web01 systemd-logind[812]: New session 12 of user deploy.
Sep 20 02:16:12 web01 systemd[1]: Started Session 12 of User deploy.
Sep 20 02:18:30 web01 systemd[1]: Reloading.
Sep 20 02:18:31 web01 systemd[1]: Started syscheck.service - System Check.     ← 처음 보는 서비스
Sep 20 02:23:41 web01 systemd[1]: Stopping rsyslog.service - System Logging Service...   ← 로깅 중단

7. 로그 필드 분석

로그필드의미
New session 12 of user deploy세션 번호 12audit의 ses=12 와 연결되는 키
Reloading.systemd 설정 재로딩유닛 파일 추가/변경 후 daemon-reload
Started syscheck.service유닛 이름·설명비표준 이름, 정상 서비스 흉내 여부
Stopping rsyslog.service로깅 서비스 중지원인 확인 필요(업데이트? 수동?)

8. 보안관점

정상의심
패키지 업데이트 직후 Reloading로그인 세션 직후 Reloading → 신규 서비스
업무시간 서비스 재시작새벽 rsyslog/auditd 중지
알려진 커널 모듈처음 보는 모듈 로딩(insmod) → 루트킷 가능성
OOM이 부하 시간대에 발생채굴 프로세스로 인한 지속적 CPU/메모리 경고

9. SOC 관점

  • Detection: "로깅 서비스 중지", "신규 systemd 서비스 시작", "커널 모듈 로딩"은 Wazuh 기본/커스텀 룰 후보.
  • Triage: messages 이벤트에는 사용자 정보가 약하다 → 세션 번호(ses)와 시각으로 secure·audit 과 연결.
  • Investigation: Started xxx.service 발견 시 /etc/systemd/system/xxx.service 의 ExecStart 와 파일 생성 시각 확인 (19편).

10. 실습 체크리스트

[ ] messages 규칙에서 제외되는 facility 3개 설명
[ ] 서비스 시작/중지/실패 이벤트 검색
[ ] rsyslog/journald/auditd 자체 이벤트 검색
[ ] 커널 경고/모듈 로딩 검색
[ ] logind 세션 번호를 audit ses 와 연결
[ ] 순환 파일 포함 검색

11. 핵심 정리

  • messages 는 인증·메일·cron을 제외한 info 이상 이벤트의 종합 파일이다.
  • 서비스 등록·로깅 중단·커널 모듈은 침해 이후 흔적으로 중요하다.
  • 사용자 식별은 약하므로 세션 번호·시각으로 다른 로그와 연결한다.
  • 로그인 분석은 secure 에서, 행위 분석은 audit에서 보강한다.

12. 다음 편 연결

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

0개의 댓글