본문 바로가기

프로젝트 구축 Infrastructure

NDLP -> ICAP 서버 구축 및 연동

  • 간단한 설명 :
  1. 개발/cs망에서 외부로 데이터가 이동할 때 OPNsense의 NAT Port Forward 규칙에 의해, 목적지가 80(HTTP) 또는 443(HTTPS)인 트래픽은 외부로 나가지 않고 Ubuntu 보안 서버의 3128/3129 포트로 강제 굴절된다.
  2. 스퀴드 프록시가 이를 가로채 설정된 icap_service 규칙에 따라 수신된 데이터를 가공하지 않고 즉시 1344번 포트의 C-ICAP 서버로 전달하여 내용 검사한다.
    1. C-ICAP 서버의 content-filtering을 통해 데이터 내에 사전에 정의된 예시)주민등록번호 패턴(900101-1234567 등)이 포함되어 있는지 확인
  3. 개인정보 패턴이 매칭되면 ICAP 서버는 Squid에게 차단(Block) 응답을 보내고 Squid는 사용자 PC와의 TCP 연결을 즉시 끊어버리는 Connection Reset을 실행하여 데이터 유출을 방지함
  4. 이 차단 이벤트는 /var/log/squid/access.log에 기록됨

C-ICAP 설치

apt install c-icap libicapapi-dev -y

 

설정 파일 수정하기

nano /etc/c-icap/c-icap.conf

 

내부 파일 /etc/c-icap/c-icap.conf 파일 수정 및 status 확인

 

포워드 프록시 설명 변경
네트워크 대역 추가 (개발, cs망)
인터페이스 추가
탐지는 성공 하지만 여기서 필터를 잡아야 함

 

/etc/c-icap/c-icap.conf 파일 최종 수정
access.log에 에러 메시지 표시
TCP Reset 신호를 송출함으로써 'Connection reset by peer' 오류와 함께 실시간 차단이 이루어짐