명시적 프록시 클라이언트는 자신이 프록시와 통신한다는 것을 압니다. 인터셉트된 브라우저는 웹 사이트에 연결했다고 생각합니다. 이 차이가 인증의 핵심입니다.

일반적인 프록시 인증은 프록시 챌린지와 프록시 인가 응답을 사용합니다. 프록시를 선택하지 않은 클라이언트가 예상치 못한 중간자에게 프록시 자격 증명을 함부로 보내서는 안 됩니다.

그래서 Squid의 인터셉트 지침은 proxy_auth 을(를) 인터셉트 모드와 단순히 결합하는 것을 지원하지 않습니다. 동작하는 Basic 인증 헬퍼가 있어도 브라우저가 원격 엔드포인트를 무엇이라고 여기는지는 바뀌지 않습니다.

식별된 사용자에게 일반적인 인증 포워드 프록시가 필요하다면 클라이언트를 명시적으로 구성하십시오. 직접 구성하거나 적절한 관리형 프록시 구성을 사용하면 됩니다. 그 리스너와 인증 정책은 인터셉트 리스너와 분리해 두십시오.

인증 포털, 네트워크 수준 신원 시스템, TLS 인터셉트 구성은 신뢰와 배포 요건이 다른 또 하나의 설계입니다. 사라진 명시적 프록시 교환에 대한 한 줄짜리 수정이 아닙니다.

프롬프트가 없다는 문제를 인터셉트 대상 서비스를 공개하거나 모든 클라이언트를 허용해서 해결하지 마십시오. 먼저 요구 사항이 명시적 사용자 인증인지, 아니면 프록시용으로 설정된 적 없는 트래픽의 인터셉트인지 결정하십시오. 둘은 서로 다른 전제를 필요로 합니다.

관련 글