Squid: переслать другой прокси (с данными аутентификации для родительского прокси)
Вкратце, я ищу простой способ сделать следующее (просьба дать примеры кода, если это возможно):
- настроить и запустить прокси-сервер на моем компьютере (например, адрес 10.10.200.200:6767), который может захватывать все веб-запросы с моего телефона.
- Как только запрос с телефона поступит в этот прокси-сервер, он добавит пользовательские данные аутентификации (my_username/my_password) и перенаправит их в прокси-сервер института (например, адрес 10.1.2.3:80)
- Мне не нужно кэширование/ускорение на моем локальном прокси (10.10.200.200). Он просто должен поймать запрос и отправить его.
Теперь, подробнее, чтобы полностью объяснить мою ситуацию:
В моем институте аутентификация необходима для прохождения через прокси-сервер, чтобы мы могли подключиться к Интернету. Обычно я вводил свое имя пользователя/пароль ldap для аутентификации, когда появляется всплывающее окно.
Теперь я хочу подключить свой телефон к WiFiу института, но у моего телефона нет возможности аутентификации с прокси. Можно указать только адрес прокси. Итак, я планирую настроить локальный прокси-сервер на своем компьютере, чтобы поймать все запросы с моего телефона, добавить данные аутентификации и передать его в свой прокси-сервер через мой компьютер.
Я установил squid3 (на Ubuntu), но, глядя на файл конфигурации, я теряюсь. Я пробовал поиск в Интернете, но все выглядит слишком сложно.
В надежде, что кто-то сможет оказать помощь.
Ответы
Ответ 1
Я понял из учебников по squid, что простейшая конфигурация для этого:
http_access allow all
http_port 3128
coredump_dir /var/spool/squid3
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
cache_peer 10.1.2.3 parent 80 0 no-query default login=my_username:my_password
never_direct allow all
Эти строки должны предоставить вам рабочий прокси-сервер на вашем локальном компьютере, который перенаправляет все запросы на другой прокси-сервер (соответственно меняет IP-адреса). Однако обратите внимание на, что в приведенном выше script, я отключил управление доступом/фильтры, поэтому потенциально любой может подключиться и использовать ваш прокси. Вам нужно добавить дополнительный код, чтобы ограничить доступ только к некоторым устройствам.