APT가 HTTP를 사용하여 HTTP 프록시에 연결하지 않는 이유는 무엇입니까 CONNECT
?
HTTP 프록시와 함께 APT를 사용하고 싶어서 http_proxy
서버 주소를 사용하여 변수를 내보냈습니다 http://10.10.10.10
.
CONNECT
이제 내 서버는 지정된 호스트에 대한 프록시 TCP 트래픽을 시작한 후 HTTP 요청을 기다립니다.
그러나 Wireshark는 APT가 HTTP CONNECT
요청을 발행하지 않고 HTTP GET
프록시 서버에 직접 요청을 보내는 것을 보여줍니다.
APT가 HTTP 요청을 보내지 않는 이유는 무엇입니까 CONNECT
? 이것이 HTTP 프록시가 작동하는 방식이 아닌가요?
답변1
apt
CONNECT
필수가 아니므로 HTTP 트래픽 에는 사용되지 않습니다 . HTTPS 트래픽에는 이를 사용합니다.
CONNECT
프록시를 통한 터널링에 사용되는 일반적인 사용 사례는 프록시를 통한 TLS 또는 SSH 트래픽입니다.
일반적으로 HTTP 트래픽에는 사용되지 않습니다. HTTP 프록시는 프록시 대상 호스트와 동일한 방식으로 반응해야 합니다. HTTP RFC 전반에 걸쳐 문서화되어 있는 것을 볼 수 있습니다.RFC 2616찾아보세요). 클라이언트는 호스트에 보내는 것과 동일한 요청을 프록시에 보냅니다.
프록시 서버가 허용하는 경우 클라이언트는할 수 있는프록시를 통해 대상 호스트에 연결 CONNECT
하지만 이는 처음에 프록시를 사용하는 목적 중 일부를 무효화합니다. 특히 CONNECT
터널은 캐시되지 않습니다.