Ⅰ. Tripwire 란?
서버 및 시스템의 파일 무결성을 점검하는 대표적인 오픈소스 보안 도구입니다. 시스템 내 주요 파일과 디렉터리의 해시값(MD5, SHA, CRC-32 등)을 데이터베이스로 저장해두고, 이후 주기적으로 현재 파일 상태와 비교하여 변경, 삭제, 추가 등 무단 변조 여부를 탐지합니다. 이를 통해 해킹, 악성코드 감염, 내부자 위협 등으로 인한 시스템 변조를 신속하게 감지할 수 있습니다.
Ⅱ. Tripwire 설치 방법(레드햇(RHEL/CentOS) 기반)
ⅰ. EPEL 저장소 추가
기본 저장소에 포함되어 있지 않으므로 EPEL(Extra Packages for Enterprise Linux) 저장소를 먼저 추가해야 합니다.
| [root@feccle ~] # dnf install -y epel-release |
ⅱ. Tripwire 패키지 설치
| [root@feccle ~] # dnf install -y tripwire |
ⅲ. 키 파일 생성
Tripwire는 정책 및 설정 파일 보호를 위해 site key와 local key를 사용합니다. 아래 명령어로 키 파일을 생성하고, 각 passphrase(암호)를 입력합니다.
| [root@feccle ~] # tripwire-setup-keyfiles |
ⅳ. 데이터베이스 초기화
시스템의 현재 상태를 기준으로 Tripwire 데이터베이스를 생성합니다.
| [root@feccle ~] # tripwire --init |
이 과정에서 local key passphrase를 입력해야 합니다.
Ⅲ. Tripwire 사용 방법
ⅰ. 무결성 점검 실행
시스템의 파일 무결성 점검을 수행하려면 다음 명령어를 사용합니다.
| [root@feccle ~] # tripwire --check |
점검 결과는 /var/lib/tripwire/report/ 디렉터리에 .twr 확장자의 리포트 파일로 저장됩니다.
ⅱ. 리포트 확인
리포트 파일을 사람이 읽을 수 있는 텍스트로 변환하려면 아래와 같이 합니다.
| [root@feccle ~] # twprint --print-report --twrfile /var/lib/tripwire/report/리포트파일명.twr > report.txt [root@feccle ~] # cat report.txt |
ⅲ. 정책 파일 수정 및 업데이트
점검 대상 파일/디렉터리, 예외 등 정책을 변경하려면 /etc/tripwire/twpol.txt 파일을 수정 후, 정책을 업데이트합니다.
| [root@feccle ~] # tripwire --update-policy /etc/tripwire/twpol.txt |
정책 변경 후에는 데이터베이스를 다시 초기화해야 합니다.
ⅳ. 정기적 점검 자동화
크론(cron)에 등록하여 주기적으로 점검을 자동화할 수 있습니다.
| [root@feccle ~] # 0 0 * * * /usr/sbin/tripwire --check --email-report |
Ⅳ. Tripwire 활용 방법
ⅰ. 주요 시스템 파일, 설정 파일, 바이너리의 무결성 보장
: /etc, /usr/bin, /sbin 등 핵심 디렉터리의 변조 여부를 감지하여 해킹, 악성코드 감염, 내부자 위협 등에 신속 대응.
ⅱ. 정책 파일 커스터마이징
: 시스템 특성에 맞게 점검 대상/제외 파일을 지정하여 오탐(false positive) 최소화 및 효율적 운영 가능.
ⅲ. 변경 탐지 및 알림
: 변경 발생 시 관리자에게 이메일로 자동 보고서를 발송하도록 설정 가능.
ⅳ. 감사 및 포렌식
: 무결성 점검 결과를 보관하여, 이상 징후 발생 시 원인 분석 및 감사 자료로 활용 가능.
ⅴ. 다중 서버 중앙 관리
: 여러 서버의 Tripwire 리포트를 중앙 서버로 집계하여 통합 보안 관제 환경 구축 가능(별도 스크립트/솔루션 활용
'시스템(Linux)' 카테고리의 다른 글
| 리눅스 무결성 검사 도구인 AIDE(Advanced Intrusion Detection Environment)에 대해 알아보겠습니다. (0) | 2025.06.05 |
|---|---|
| 리눅스 보안 로그(/var/log/secure)에 대해 알아보겠습니다. (0) | 2025.06.03 |
| BPF Door(Berkeley Packet Filter) 에 대해 알아보겠습니다. (2) | 2025.05.26 |
| TCP Wrapper와 IPTables에 대해 알아보겠습니다. (0) | 2025.02.05 |
| SSSD (System Security Services Daemon) 에 대해 알아보겠습니다. (0) | 2025.02.03 |