적절한 식습관과 운동처럼 건강하게 WAS 로그 관리하기
·2023.12.14 08:00
에러·액세스 로그의 레벨, 포맷, 권한을 제대로 정해야 보안과 운영이 함께 산다.
WAS 로그는 식습관과 운동처럼 꾸준히 관리해야 한다. 적절한 로그 레벨과 로그 포맷을 정하면 보안 분석과 장애 대응에 필요한 정보를 확보하면서도 저장 공간을 과도하게 쓰지 않을 수 있다.
에러 로그와 액세스 로그는 공격 여부, 공격자 도구, 접속 위치를 파악하는 핵심 단서다. 그래서 각 WAS별로 필요한 최소 수준이 아니라, 서비스 성격에 맞는 수집 기준을 먼저 정해야 한다.
- IIS: 추가로
sc-bytes,cs-bytes,protocol version같은 항목을 수집하고, 로그 롤오버를 매일로 설정한다. - Apache HTTP Server: 에러 로그는
ErrorLog, 레벨은error와warn사이에서 선택하고, 액세스 로그는combined또는 컴파일 설치 시combinedio를 권장한다. - Tomcat:
logging.properties에서 기본 레벨은 INFO 또는 WARNING을 권장하고,server.xml의AccessLogValve에서는pattern="combined"를 기준으로 설정한다. - NGINX:
error_log는error,access_log는combined를 기준으로 두고, 필요에 따라 저장 위치를 조정한다. - Spring Boot:
application.properties또는application.yml에서 기본 로그 레벨을 WARN이나 ERROR로 두고,server.tomcat.accesslog.pattern으로 액세스 로그 형식을 직접 지정한다. - Node.js: 보통
winston을 사용해 에러 로그와 액세스 로그를 분리하고, 기본 로그 레벨은error를 권장한다.
권한 설정도 중요하다. 로그 디렉터리와 파일은 필요한 사용자만 접근할 수 있어야 하며, 윈도우에서는 전용 WAS 계정과 그룹 중심으로 권한을 제한하고, 리눅스에서는 로그 디렉터리를 750 이하, 로그 파일을 640 이하로 맞추는 것이 원칙이다.
결국 핵심은 기본값에 기대지 않는 것이다. 로그는 이미 켜져 있는 기능이 아니라, 보안과 운영을 위해 의도적으로 다듬어야 하는 설정이며, 연말연시처럼 시스템을 점검할 때 함께 확인할 만한 항목이다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.