rsyslog를 활용한 로그 관리 시스템 구축 및 분석
(정보시스템구축)정보시스템 구축·운영 기반 정보보안 전문가 양성과정(2) 종일
| 개요 | 이 프로젝트는 통합 로그 관리 시스템 구축 및 관리를 목표로 한다. 단순히 시스템을 구축하는 것을 넘어, 실제 기업 환경에서 여러 서버로부터 발생하는 방대한 양의 로그를 rsyslog를 이용해 한곳에 모으고, 이를 체계적으로 분석하여 가치 있는 정보를 추출하는 것에 중점을 둔다. 이를 통해 로그의 중요성을 인지하고, 실무에서 필수적인 로그 수집 및 관리 역량을 기를 수 있다. 분석 툴 없이 로그 파일을 직접 확인하고 필터링하는 과정을 통해 시스템 상태와 잠재적 위협을 파악하는 데 집중한다. VMware를 이용해 외부망, DMZ, 내부망으로 나뉜 가상의 회사 네트워크를 구성한다. 웹서버, DNS서버, NFS서버 등 각 역할을 담당하는 서버에서 발생하는 로그를 전용 로그 서버로 실시간 전송한다. 이 과정을 통해 시스템의 상태, 보안 위협, 그리고 침해 사고의 흔적을 파악하는 일련의 과정을 직접 경험하게 된다. |
|---|---|
| 구현기능 | 네트워크 환경 구축: VMware Workstation을 이용해 7대의 가상 PC를 생성하고 네트워크를 설정한다. • 로그 서버 위치: 로그 서버는 보안을 위해 내부망(192.168.30.0/24)에 위치한다. 네트워크 구성: • 외부망(192.168.10.0/24): Host PC와 연결 • 내부망(192.168.30.0/24): 라우터, NFS 서버, DB 서버, 로그 서버, 직원 PC • DMZ(192.168.20.0/24): 라우터, 웹 서버, DNS 서버 로그 중앙 집중화: rsyslog를 사용하여 웹 서버, NFS 서버 등에서 발생하는 로그를 로그 서버로 실시간 전송한다. 로그 필터링 및 관리: 로그 서버에 수집된 로그를 용도에 맞게 분류하고 저장하는 규칙을 설정한다. 로그 분석 : 수집된 로그를 분석하고 GoAccess와 같은 도구를 사용하여 보고서를 작성한다. 이상 징후 관리: 웹 디렉토리 스캐닝에 따른 다수의 404 에러 발생 등 보안 위협이 될 수 있는 로그 패턴을 로그 파일에서 직접 식별하는 방법을 익힌다. 알림 시스템 구현: 셸 스크립트를 사용하여 특정 이벤트(예: 404 에러의 반복적인 발생)가 발생했을 때 이를 감지하여 관리자에게 알려주는 시스템을 구축한다.네트워크 보안 강화: iptables를 사용해 라우터에서 외부망, DMZ, 내부망 간 트래픽을 제어하고, 외부에서의 불필요한 접근을 차단한다. MariaDB 포트(3306), HTTP(80), HTTPS(443) 포트 등 필요한 서비스 포트만 외부로 개방한다 시스템 보안 강화: 프로세스나 사용자가 자신의 권한을 벗어나 시스템 자원에 접근하는것을 제어한다. 웹서버와 브라우저간의 모든 통신을 SSL/TLS프로토콜을 사용하여 함호화한다 웹서비스 보안 강화: 사용자 비밀번호를 데이터베이스에 해싱하여 저장한다. 관리자 권한을 분리하여 일반사용자가 데이터베이스에 접근하지 못하도록 제한한다. 데이터베이스 보안 강화: 입력 유효성을 검사하고 SQL injection을 방지한다. 웹페이지에 사용자가 입력값을 출력할 떄 함수를 사용하여 XSS공격을 방지한다. 민감한 작업을 처리하는 POST요청에 일회용 CSRF토큰을 포함하고,서버에서 토큰을 검증한다. 세션 보안 강화: 쿠키 전달, 접근제어, 연결제한을 두어 PHP 세션탈취 및 세션고정 공격을 방지하여 사용자계정의 무단사용을 막는다. |
| 설계의 주안점 | 네트워크 분리: 보안을 위해 웹 서비스가 위치한 DMZ와 내부 PC 및 로그 서버가 위치한 내부망을 물리적으로 분리한다. 기능별 서버 분리: 웹 서버, DB서버, DNS 서버, NFS 서버, 로그 서버를 각각 별도의 PC에 두어 서비스 간의 의존성을 명확하게 이해할 수 있도록 한다. 점진적 접근: 로그 중앙 집중화와 같은 기본적인 기능을 먼저 완성한 후, 로그 분석 및 알림 시스템과 같은 고급 기능을 순차적으로 추가한다. 효율적인 로그 관리: rsyslog와 GoAccess와 같은 도구를 사용하여 단기간에 가시적인 성과를 보여줄 수 있도록 설계한다. 보안 강화: 웹서버 및 DB서버 등 공격에 취약한 부분을 보안한다. |
| 사용기술 및 개발환경 |
운영체제: - 서버: Rocky Linux 8 - 클라이언트: Windows 10 가상화 도구: VMware Workstation Pro 17 주요 기술 및 역할 - mariadb: 데이터 저장 - rsyslog: 로그 수집기 - Apache: 로그 생성기 - GoAccess : 로그 분석 및 보고서 생성 - 셸 스크립트: 자동화, 알림 구현, 로그 필터링 및 분석 - iptables: 라우터의 방화벽 역할 |
|
|