SW/서버보안

Apche WAF 설치하여 웹 서비스 보안 설정

bigju 2025. 7. 19. 00:52
반응형

Rocky Linux 9.5 환경에서 Apache용 WAF인 mod_security 설치 및 설정 가이드

 

1. mod_security 개요.

Apache 모듈로 웹 공격(예: XSS, SQL Injection)을 차단하는 웹방화벽(WAF)
OWASP CRS (Core Rule Set) 룰셋과 함께 사용하면 강력한 방어 가능

 

2. 설치

sudo dnf install mod_security mod_security_crs -y

-> mod_security : Apache 모듈
-> mod_security_crs : OWASP 기본 룰셋 제공

 

3. 기본 설정

mod_security 활성화
/etc/httpd/conf.modules.d/10-mod_security.conf 확인 및 로드 확인
  
sudo vi /etc/httpd/conf.modules.d/00-mod_security.conf
아래가 포함되어 있어야 합니다:

apache
 LoadModule security2_module modules/mod_security2.so

 

4. OWASP CRS 룰셋 활성화

cp /usr/share/mod_modsecurity_crs/rules/* /etc/httpd/modsecurity.d/activated_rules/

 

-/etc/httpd/conf.d/mod_security.conf 파일 수정 또는 생성

IncludeOptional /etc/httpd/modsecurity.d/activated_rules/*.conf

 

5.mod_security 설정 주요 파일

 /etc/httpd/conf.d/mod_security.conf : 모듈 기본 설정
 /etc/httpd/modsecurity.d/modsecurity.conf : mod_security 메인 설정 파일
 /etc/httpd/modsecurity.d/activated_rules/ : 활성화된 룰셋 위치

 

6. 주요 설정 예시 (modsecurity.conf)
 SecRuleEngine On               # 모드 활성화
 SecRequestBodyAccess On        # 요청 본문 검사 허용
 SecResponseBodyAccess Off      # 응답 본문 검사 비활성화 (성능 위해)
 SecDefaultAction "phase:2,deny,log,status:403"
 SecRule REQUEST_HEADERS:User-Agent "BadBot" "id:1000001,deny,msg:'Bad bot detected'"

 

7. Apache 재시작

  sudo systemctl restart httpd



8. 로그 확인
/var/log/httpd/modsec_audit.log (감사 로그)
/var/log/httpd/error_log (에러 로그)



9. 테스트

OWASP ZAP, sqlmap 같은 툴로 공격 시뮬레이션 가능
차단 로그와 동작 확인

9. 참고


너무 엄격하면 정상 요청도 차단 가능 → 룰셋 튜닝 필요

반응형