2013-10-05 1 views
23

Короче говоря, я ищу простой способ сделать следующие (пожалуйста, дайте примеры кода, если это возможно):Squid: вперед к другому прокси-серверу (с подробной информацией аутентификации для родительского прокси)

  • набор (например, адрес 10.10.200.200:6767), который может захватить все веб-запросы с моего телефона
  • После того, как запрос с телефона поступит в этот прокси-сервер, он добавит пользовательские данные аутентификации (my_username/my_password) и переслать его в прокси-сервер института (например, адрес 10.1.2.3:80)
  • Мне не нужно кэширование/ускорение на моем локальном прокси (10.10.200.200). Ему просто нужно поймать запрос и отправить его.

Теперь более подробно в полной мере объяснить мою ситуацию:

В моем институте, необходима аутентификация, чтобы пройти через прокси-сервер, так что мы можем подключиться к Интернету. Обычно я вводил свое имя пользователя/пароль ldap для аутентификации, когда появляется всплывающее окно.

Теперь я хочу подключить свой телефон к WiFiу института, но у моего телефона нет возможности аутентификации с прокси. Можно указать только адрес прокси. Итак, я планирую настроить локальный прокси-сервер на своем компьютере, чтобы поймать все запросы с моего телефона, добавить данные аутентификации и передать его в свой прокси-сервер через мой компьютер.

Я установил squid3 (на Ubuntu), но, глядя на конфигурационный файл, я потерялся. Я пробовал искать, но все выглядит слишком сложно.

Надеясь, что кто-то может оказать помощь.

ответ

25

я понял из кальмаров учебники, что самый простой конфигурации, чтобы сделать это:

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-адреса соответственно). Однако, пожалуйста, обратите внимание на, что в приведенном выше сценарии я отключил контроль доступа/фильтры, поэтому потенциально любой может подключиться и использовать ваш прокси. Вам нужно добавить дополнительный код, чтобы ограничить доступ только к некоторым устройствам.

+1

мне нужно добавить следующее: '' ' access_log ни cache_log ни один ' '' –

+0

FTR: ограничить доступ к только хозяину, закомментировать 'http_access позволяют all' строку, и добавить на завершите три строки: 'acl allowed_ip src localhost',' http_access allow allowed_ip', 'http_access deny all' * (да,' deny all' должны быть в конце, не знаю почему) *. И для безопасного случая: нет, нельзя проверить, работает ли он с netcat с другого хоста, только с чем-то, работающим http * (squid не будет отрицать tcp, только http) *. –

Смежные вопросы