Використовуйте схему, зазначену в документації для порту прослуховування проксі. Обираючи кандидатів зі списку HTTP-проксі, перевірте цю схему до налаштування клієнта. Для HTTPS-сайту можна використовувати http://proxy.example:8080; зміна цього значення на https:// означає інший спосіб підключення до проксі.

URL проксіURL сайтуЗ’єднання
http://proxy.example:8080http://example.com/Незашифрований HTTP до проксі та до цільового сервера.
http://proxy.example:8080https://example.com/HTTP CONNECT до проксі, а потім TLS із цільовим сервером через тунель.
https://proxy.example:8443https://example.com/TLS до проксі; тунель до цільового сервера передається всередині цього з’єднання.

Для звичайного HTTP-порту проксі, який дозволяє CONNECT, така конфігурація узгоджена:

curl --proxy http://127.0.0.1:8080 https://example.com/

TLS-рукостискання із сайтом відбувається після того, як проксі прийме тунель. Якщо змінити URL проксі на https://, хоча порт розуміє лише незашифрований HTTP, узгодження TLS із проксі може завершитися помилкою ще до звернення до сайту.

Що додає TLS на ділянці до проксі

Проксі з підтримкою TLS захищає з’єднання між клієнтом і проксі, зокрема обмін CONNECT та автентифікацію на проксі, від пасивного прослуховування на цій ділянці. Оператор проксі й надалі обробляє з’єднання та знає адресу призначення тунелю. Цей режим мають підтримувати і клієнт, і порт прослуховування:

curl --proxy https://proxy.example:8443 https://example.com/

Використовуйте справжнє ім’я хоста сервісу: сертифікат має відповідати йому та бути довіреним. Обмеження адрес призначення й портів залишаються чинними.

Коли з обох боків використовується HTTPS, виконуються дві перевірки сертифікатів. curl дозволяє налаштувати їх окремо:

curl --proxy https://proxy.example:8443 --proxy-cacert proxy-ca.pem --cacert origin-ca.pem https://example.com/

--proxy-cacert задає довіру для проксі, а --cacert — для цільового сервера. За потреби використовуйте набори сертифікатів від адміністратора; системного сховища довіри вже може бути достатньо. Перш ніж змінювати будь-яке з налаштувань, з’ясуйте, яке рукостискання не вдалося.

Позначка «HTTPS» у списку проксі може означати лише те, що кінцева точка пройшла тест CONNECT. Якщо список не пояснює свій тест, сама позначка не вказує, чи очікує порт прослуховування http://, чи https://.

Схожі статті