일본 IDC 환경의 Linux 물리 서버에서 auditd를 활용하여 핵심 시스템 변경 및 접근 기록을 추적하는 커널 수준 감사 로그 체계 수립 가이드와 보안 진단 절차를 설명합니다.
해외 데이터센터나 원격지 인프라에서 Linux 물리 서버를 운영할 때, 일반적인 애플리케이션 로그만으로는 시스템 내부의 중요 설정 변경이나 권한 남용 행위를 추적하는 데 한계가 발생할 수 있습니다. 시스템 관리자가 직접 접근하기 어려운 원격 환경일수록 시스템 콜(System Call) 수준에서 발생하는 주요 동작을 기록하고 검증하는 감사(Audit) 체계가 중요해집니다.
Linux 환경에서 대표적으로 활용되는 auditd(Linux Audit Daemon)는 커널 수준에서 실행되는 이벤트 수집 프레임워크입니다. 파일 시스템 변경, 시스템 시간 수정, 계정 권한 변경, 특정 실행 파일 호출 등 중요 보안 이벤트를 실시간으로 기록하여 보안 진단 및 사고 발생 시의 원인 규명에 활용됩니다. 본 문서에서는 일본 IDC 물리 서버 환경에서 auditd를 설정하고, 효율적인 규칙 수립 및 로그 분석을 통해 보안성을 높이는 운영 절차를 안내합니다.
일본 IDC 서버 운영 환경에서 auditd 감사 로그가 필요한 이유
일반적인 Syslog나 journald는 애플리케이션의 동작 상태나 서비스 오류 메시지를 주로 기록합니다. 그러나 보안 관점에서는 ‘누가, 언제, 어떤 권한으로, 어떤 파일이나 시스템 자원에 접근하여 수정했는가’에 대한 구체적인 추적 정보가 필요합니다. auditd는 커널 내부의 감사 Subsystem과 직접 연동되어 이러한 정보를 정밀하게 기록합니다.
퍼블릭 클라우드 서비스의 경우 공급자가 제공하는 관리 콘솔과 보안 로그 기능이 기본 탑재된 경우가 많지만, 물리 서버 호스팅이나 코로케이션 환경에서는 운영자가 직접 감사 체계를 구성해야 합니다. 특히 일본 현지 데이터센터에 서버가 위치한 경우, 물리적 접근 및 상주 엔지니어와의 협업 구조상 원격 로그 모니터링이 정확하게 작동해야 신속한 초동 조치가 가능합니다.
- 계정 및 권한 남용 추적: root 권한 획득, sudo 명령 실행, 사용자 계정 생성 및 삭제 이력을 빠짐없이 기록합니다.
- 무단 파일 수정 감지: /etc/pam.d, /etc/shadow, /etc/ssh/sshd_config 등 핵심 설정 파일의 조회 및 수정 시도를 감지합니다.
- 규정 준수(Compliance) 대응: 개인정보 보호 표준이나 정보보안 관리체계 인증 기준에 부합하는 접근 통제 기록을 확보합니다.
- 침해 사고 시 원인 분석: 미상의 프로세스가 실행되거나 이상 파일이 생성되었을 때 실행 주체(PID, UID, PPID)를 소급 추적할 수 있습니다.
auditd의 기본 구조와 핵심 구성 파일 이해
auditd 체계는 크게 커널 영역의 이벤트 수집 모듈과 사용자 영역의 데몬 및 분석 도구로 구성됩니다. 커널에서 필터링된 이벤트는 /var/log/audit/audit.log 파일에 저장되며, 운영자는 제공되는 명령어를 통해 이 로그를 검색하거나 리포트 형태로 출력할 수 있습니다.
안정적인 운영을 위해서는 서비스 영향도를 고려한 구성 파일 설정이 우선되어야 합니다. 과도한 감사 규칙은 디스크 I/O 상승 및 커널 버퍼 고갈로 이어질 수 있으므로 환경에 맞춘 최적화가 필요합니다.
주요 구성 파일 및 역할
- /etc/audit/auditd.conf: 데몬 동작 방식, 로그 파일 위치, 로그 순환(Rotation) 정책, 디스크 용량 부족 시 동작 방식 등을 정의하는 메인 설정 파일입니다.
- /etc/audit/rules.d/audit.rules: 시스템 기동 시 커널에 로드할 감사 규칙을 정의하는 파일입니다.
- /etc/audit/audit-stop.rules: auditd 서비스 중단 시 적용할 규칙을 설정합니다.
주요 분석 명령 도구
- auditctl: 현재 실행 중인 커널 감사 규칙을 조회하거나 즉시 추가/삭제하는 제어 도구입니다.
- ausearch: 특정 이벤트 키, 시간대, 사용자 ID, 프로세스 ID별로 로그를 검색하는 도구입니다.
- aureport: 요약된 감사 보고서를 생성하여 로그인 시도, 실행 파일 이력 등의 통계를 확인하는 도구입니다.
보안 정책별 auditd 규칙 작성 및 적용 가이드
auditd 규칙은 크게 파일 감시 규칙(File Watch Rules), 시스템 콜 규칙(System Call Rules), 그리고 데몬 제어 규칙으로 나뉩니다. 각 규칙에는 고유한 키(-k)를 부여하여 추후 ausearch 명령어로 손쉽게 조회할 수 있도록 구성하는 것이 권장됩니다.
실무 운영 시에는 시스템 전체 시스템 콜을 기록하기보다, 보안상 중요한 파일과 권한 변경 이벤트 중심으로 규칙을 수립하는 것이 디스크 부하를 줄이는 데 효과적입니다.
| 구분 | 감시 대상 및 목적 | 주요 설정 예시 (audit.rules) | 설명 |
|---|---|---|---|
| 계정 정보 변경 | 사용자 및 그룹 정보 수정 감시 | -w /etc/passwd -p wa -k identity_change | passwd 파일 변경(w) 및 속성 변경(a) 발생 시 추적 |
| 접근 제어 설정 | PAM 및 SSH 설정 변경 감시 | -w /etc/pam.d/ -p wa -k pam_config | PAM 인증 관련 설정 디렉토리 내 변경 사항 감사 |
| 특권 명령어 실행 | sudo 권한 및 su 명령어 사용 기록 | -w /usr/bin/sudo -p x -k privilege_exec | sudo 실행(x) 이벤트 감지 및 실행 주체 기록 |
| 시간 설정 변경 | 시스템 시간 조작 시도 감시 | -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change | 64비트 환경에서 시간 관련 시스템 콜 호출 추적 |
| 네트워크 설정 | 호스트명 및 네트워크 환경 변경 | -w /etc/hosts -p wa -k network_mod | hosts 파일 수정 등 네임 Resolution 설정 변경 감시 |
작성된 규칙은 augenrules --load 명령을 통해 적용하며, auditctl -l로 정상 로드 여부를 확인합니다. 규칙 변경 후에는 서비스 부하 상태와 로그 생성 속도를 모니터링하여 적절한 조율을 거쳐야 합니다.
감사 로그 분석과 이상 징후 탐지 실무 절차
로그가 정상적으로 수집되더라도 적절한 분석 절차가 수반되지 않으면 이상 징후를 조기에 발견하기 어렵습니다. 보안 진단이나 이상 발생 시에는 다음과 같은 단계별 접근 방식으로 로그를 조사합니다.
1. 특정 키(Key) 기준 이벤트 추적
규칙 생성 시 지정한 키값(-k)을 활용하면 관련 이벤트를 빠르게 필터링할 수 있습니다. 예를 들어 계정 정보 변경 이력을 확인하려면 다음 명령을 사용합니다.
ausearch -k identity_change -i
(-i 옵션은 UID 및 시스템 콜 번호를 사람이 읽기 쉬운 문자열로 변환해 줍니다.)
2. 실패한 접근 및 인증 시도 분석
인증 실패나 파일 접근 거부(EACCES, EPERM) 이벤트는 미인가 접근 시도를 파악하는 데 유용한 지표입니다. aureport를 통해 일별 인증 실패 현황을 정기 수록 및 검토합니다.
aureport --auth --failed
3. 침해 사고 발생 시 원격 관리 및 초동 조치 연계
원격 지점 관리가 필요한 일본 IDC 물리 서버 운영 환경에서는, 예를 들어 HARU IDC의 전용서버 인프라를 활용할 때 Out-of-Band(IPMI) 통신과 함께 인프라 내부 커널 로그를 연동함으로써 비상 상황에서의 가시성을 높일 수 있습니다. 시스템 먹통이나 원격 접속 차단 시에도 OOB 콘솔과 auditd 수집 내역을 조합하여 문제 원인을 파악할 수 있습니다.
안정적인 감사 체계 운영을 위한 체크리스트
auditd를 장기간 안정적으로 운영하려면 로그 파일 용량 관리와 시스템 성능 영향도를 지속적으로 점검해야 합니다. 과도한 로그 스토리지 점유는 시스템 파일 시스템 고갈을 초래할 수 있으므로 구체적인 디바이스 및 회선 관리가 수반되어야 합니다.
점검 체크리스트
- 로그 저장 공간 분리: /var/log/audit 디렉토리를 별도 파티션으로 분리하여 마운트하였는가?
- 로그 순환 정책 설정: auditd.conf 내 max_log_file 및 max_log_file_action 설정이 서버 디스크 용량에 맞게 최적화되었는가?
- 버퍼 크기 검토: 트래픽 및 이벤트가 몰리는 시점에 커널 감사 버퍼가 고갈되지 않도록 audit.rules 내 -b 옵션(예: -b 8192)이 유연하게 설정되었는가?
- 원격 로그 이중화: 주요 감사 로그가 외부 중앙 로그 서버(Syslog/SIEM)로 실시간 전송되도록 audisp-remote 등이 구성되었는가?
- 규칙 변경 통제: audit.rules 파일 자체에 대한 수정 권한이 제한되어 있으며, 규칙 변경 내역이 감사 대상에 포함되어 있는가?
HARU IDC의 물리 서버 환경을 운영하면서 정기적인 로그 수집 정책을 마련하면, 원격 관리 체계 아래에서도 인프라 전체의 안정성을 일정하게 유지하는 데 도움을 받을 수 있습니다. 수집된 감사 로그는 주기적으로 백업하고, 정기적인 보안 진단 절차와 연계하여 시스템 보안 수준을 높여가는 것이 바람직합니다.
기업용 VPN 구성이 필요하신가요?
고정 IP, 관리자 접근 제한, 원격 업무 환경에 맞는 VPN 구성을 안내해드립니다.