Мы пытаемся перенаправить трафик нашей виртуальной машины на Squid Proxy. Когда запросы отклоняются Squid Proxy и покидают прокси, все исходные IP-адреса запросов меняются с IP-адреса клиента на IP-адрес сервера Squid Proxy.
Наше требование — гарантировать, что запросы будут защищены ssl, но в то же время мы хотим, чтобы клиентский IP сохранялся и не изменялся Squid Proxy. Есть ли способ добавить какие-либо теги в файл конфигурации (squid.conf), чтобы предотвратить изменение клиентского IP.
Нам нужен IP-адрес клиента для отдельной оценки правил, и хотя нам нужен SSL-Bump, нам также нужен исходный IP-адрес клиента в качестве подписи исходящего запроса.
решение1
Прокси-серверы работают, принимая соединения от клиентов и отправляя запросы от имени клиентов на серверы назначения.
На уровне TCP происходит следующее:
Client --> TCP connection --> Squid --> TCP Connection --> destination
Клиент открывает TCP-соединение со Squid, используя свой собственный IP-адрес. Squid открывает TCP-соединение с целевым сервером, используя свой собственный IP-адрес.
Это означает, что TCP-соединения от прокси-сервера всегда имеют свой собственный IP-адрес. Это фундаментальный режим работы протокола TCP/IP, и обойти его невозможно.
решение2
Я думаю, вам нужен заголовок x-forwarded-for... Затем вы читаете заголовок на следующем хопе, и этот заголовок будет содержать исходный IP-адрес, а не сервер squid. Он всегда будет заменять источник своим собственным... Но вы можете заставить его записать оригинал как заголовок, который вы сможете вытащить позже. это то, что вы делаете с веб-прокси и т. д.