Proxy HTTP a proxy HTTPS: co oznacza ta etykieta
Rozróżnij proxy HTTP tworzące tunele do witryn HTTPS i proxy HTTPS, które szyfruje połączenie z samym serwerem proxy.
Używaj schematu podanego w dokumentacji punktu nasłuchu proxy. Wybierając kandydatów z listy proxy HTTP, sprawdź ten schemat przed skonfigurowaniem klienta. Witryna HTTPS może korzystać z http://proxy.example:8080; zmiana tej wartości na https:// oznacza żądanie innego rodzaju połączenia z proxy.
| URL proxy | URL witryny | Połączenie |
|---|---|---|
http://proxy.example:8080 | http://example.com/ | Nieszyfrowany HTTP do proxy i do serwera docelowego. |
http://proxy.example:8080 | https://example.com/ | HTTP CONNECT do proxy, a następnie TLS z serwerem docelowym przez tunel. |
https://proxy.example:8443 | https://example.com/ | TLS do proxy, z tunelem do serwera docelowego wewnątrz tego połączenia. |
Dla zwykłego punktu nasłuchu HTTP, który zezwala na CONNECT, taka konfiguracja jest spójna:
curl --proxy http://127.0.0.1:8080 https://example.com/Uzgadnianie TLS z witryną następuje po zaakceptowaniu przez proxy tunelu. Jeśli zmienisz URL proxy na https://, a punkt nasłuchu rozumie tylko nieszyfrowany HTTP, negocjacja TLS z proxy może się nie udać, zanim dojdzie do kontaktu z witryną.
Co daje TLS na odcinku do proxy
Proxy obsługujące TLS chroni odcinek między klientem a proxy, w tym wymianę CONNECT i uwierzytelnianie w proxy, przed pasywnym podsłuchem na tej trasie. Operator proxy nadal obsługuje połączenie i zna cel tunelu. Ten tryb musi być obsługiwany zarówno przez klienta, jak i punkt nasłuchu:
curl --proxy https://proxy.example:8443 https://example.com/Używaj rzeczywistej nazwy hosta usługi. Certyfikat musi do niej pasować i być zaufany. Nadal obowiązują ograniczenia dotyczące celów i portów.
Przy HTTPS po obu stronach wykonywane są dwie weryfikacje certyfikatów. curl pozwala skonfigurować je osobno:
curl --proxy https://proxy.example:8443 --proxy-cacert proxy-ca.pem --cacert origin-ca.pem https://example.com/--proxy-cacert określa zaufanie do proxy, a --cacert do serwera docelowego. W razie potrzeby użyj pakietów certyfikatów dostarczonych przez administratora; systemowe ustawienia zaufania mogą już wystarczać. Przed zmianą któregokolwiek ustawienia ustal, które uzgadnianie się nie powiodło.
Etykieta „HTTPS” na liście proxy może oznaczać jedynie, że punkt końcowy przeszedł test CONNECT. Jeśli lista nie wyjaśnia testu, sama etykieta nie mówi, czy punkt nasłuchu oczekuje http://, czy https://.