Как пробросить соединения от разных клиентов последовательно на разные цепочки прокси-серверов?
Прошу прощения за такой заголовок вопроса, но не смог сформулировать более точно.
Ситуация: сервер Ubuntu Server 13.04. Должен перенаправлять HTTP-трафик от разных клиентов по разным цепочкам прокси.
Что я имею ввиду под цепочкой прокси и почему они разные.
На этом же сервере стоит Squid-прокси, который должен производить некую цензуру HTTP-трафика для всех клиентов.
После этой манипуляции трафик должен пойти на удалённый прокси. Этот удалённый прокси свой для каждого из клиентов.
Т.е. схема работы такая:
IP_client_1->Squid_ubuntu_server->dst_proxy_1
IP_client_2->Squid_ubuntu_server->dst_proxy_2
IP_client_3->Squid_ubuntu_server->dst_proxy_3
И т. д.
Ну и, конечно, клиенты должны получать обратно результат работы с прокси.
Вопрос: как всё это настроить? Понимаю, что нужно использовать iptables для перенаправления трафика. Но у меня в голове пока непонятки насчёт того как трафик после Squid отправить в нужный прокси в зависимости от адреса клиента.
iptables тут вовсе не причём…
Прописываете все родительские прокси через директиву cache_peer. И далее можете определить какой клиент через какую проксю пойдёт дальше с помощью директивы cache_peer_access.
Примеров реализаций в инете хватает, так что сможете запилить настройки под свои нужды.