url_rewrite_program는 요청 URL 결정을 담당합니다. 요청 정보를 받아 Squid의 헬퍼 프로토콜로 응답합니다. 내려받은 파일을 받아 편집해 돌려주지는 않습니다.

원하는 작업관련 경계
브라우저를 리디렉션하거나 다른 요청 URL을 선택요청 단계에서 URL 재작성 헬퍼의 역할
보이는 HTTP 응답 본문을 수정응답 적응 기능, 예를 들어 설정된 ICAP 응답 수정
일반 CONNECT 내부의 HTTP 읽기먼저 적절한 배포 구성에서 목적지 TLS를 종료해야 함
애플리케이션이 암호화한 파일 복호화파일의 형식, 알고리즘, 키이며 전송 방식과 무관

마지막 두 행은 혼동하기 쉽습니다. HTTPS로 전송되는 일반 파일은 TLS로 보호됩니다. 애플리케이션이 암호화한 파일은 HTTPS가 종료된 뒤에도 암호화된 채 남을 수 있습니다. 적응 인터페이스를 고르는 것만으로는 애플리케이션의 키도, 그 복호화 알고리즘도 얻을 수 없습니다.

일반 CONNECT는 암호화된 터널 바이트를 중계합니다. URL 헬퍼는 내부 응답을 노출하지 않습니다. 검사가 필요한 설계라면 그 트래픽을 배포 환경에서 복호화할 수 있는지, 그리고 해야 하는지를 먼저 정해야 합니다.

Squid가 HTTP 메시지를 검사할 수 있는 곳에서도 응답 수정 서비스는 콘텐츠 인코딩, 변경된 길이, 실패 시 동작을 여전히 책임집니다. 변환을 정의한 뒤 인터페이스를 고르세요. 동작하는 URL 재작성 예제를 결코 받지 않는 처리 단계로 확장하지 마세요.

관련 글