12 | 12 | 2019

Настройка Squid

Установка

Установка пакета Squid выполняется штатным способом в разделе System -> Packages. Имеются несколько подобных пакетов, но в данном случае следует использовать только стабильную версию с названием 'squid'.

После успешной установки пакета в меню pfSense появится пункт Services -> Proxy server, через который получим доступ к Web интерфейсу Squid.

 

В Web интерфейсе прокси сервера имеется 7 закладок, в которых функционально сгруппированы опции настроек. 

  • Страница General содержит все основные настройки, с помощью которых задается режим работы прокси сервера.
  • Страница Upstream Proxy позволяет указать родительсий прокси, если такой имеется.
  • Страница Cache Mgmt содержит настройки управления кэшем прокси сервера.
  • Страница Access Control позволяет задать различные параметры доступа к прокси-серверу.
  • Страница Traffic Mgmt содержит опции управления трафиком прокси.
  • Страница Auth Settings управляет аутентификацией пользователей на прокси сервере.
  • Страница Local Users содержит список локальных пользователей для аутентификации Local (аутентификация по локальному списку).

 

Переходим на вкладку General, если она не открыта и приступаем к настройке.

Во-первых необходимо выбрать интерфейс, на котором будет доступен прокси сервер. Для этого щелкаем по нужному названию интерфейса в поле Proxy Interface. В большинстве случаев это будет внутренний интерфейс LAN, но при наличии нескольких (внутренних) интерфейсов доступа выбираем несколько из них при нахатой кнопке Ctrl.

Так же необходимо указать рабочий порт прокси сервера, через который клиенты смогут к нему подключаться. Для этого в поле Proxy Port вводим одно из стандартных значений (3128, 8080) или любой другой номер свободного порта.

Если предполагается обмена данными кэшированных страниц между несколькими прокси серверами в сети, то необходимо настроить опцию ICP Port, указав номер порта, через который будет производится обмен данными. Для начинающих  пользователей и простых сетей эта опция обычно не используется, и поэтому может быть оставлена пустой.

Прокси сервер может работать в двух основных режимах: обычном и прозрачном (transparent). Если в обычном режиме от клиента требуется ввести параметры прокси сервера в настройках браузера (и др программ), то прозрачный режим работает незаметно для пользователя и не требует от него дополнительных действий по настройке своих программ. Но прозрачном режиме недоступна функция авторизации пользователя. Выбор режима авторизации зависит от Ваших задач и требований. Управление режимом производится с помощью поля Transparent Proxy.

В прозрачном режиме работы прокси сервера возможно использование следующих опций:

  • Bypass proxy for these source IPs задает список клиентов (IP/имена хостов/алиасы), разделенных ';', которые будут пропускаться напрямую через файрвол без использования прокси.
  • Bypass proxy for these destination IPs задает список ресурсов (IP/имена хостов/алиасы), разделенных ';', к которым клиенты будут получать доступ напрямую через файрвол без использования прокси.

Для формирования статистики использования прокси клиентами имеется возможность ведения журнала (логов). Имеются три опции, управляющие формированием и хранением журналов:

  • Enable logging включает ведение журнала доступа
  • Log store directory назначает директорию хранения файла журнала
  • Log rotate определяет через сколько дней будет произведена ротация (смена/очистка) файла журнала

Директория хранения файла журнала по умолчанию имеет значение /var/squid/logs. Некоторые пакеты сбора статистики работы прокси (LightSquid к примеру) могут автоматически настраивать параметры ведения журнала прокси сервера.

Следующие опции являются необязательными, и могут быть настроены для дополнительного сервиса прокси:

  • Visible hostname содержит имя прокси сервера, отображаемое в сообщении об ошибке. Эту опцию можно составить пустой.
  • Administrator email это адрес электронной почты администратора прокси, отображаемый в сообщении об ошибке. Эту опцию можно составить пустой.
  • Language задает язык, на котором будут выводиться страницы сообщений прокси сервера. Здесь нуобходимо поставить значение Russian-1251.
  • Disable X-Forward запрещает прокси серверу передавать IP адрес/имя в HTTP запросах. Это может быть полезно для сокрытия данных о прокси-сервере. Но так же отключение этой опции может потребоваться для настройки работы в связке с другими прокси серверами.
  • Disable VIA запрещает прокси серверу включать опцию VIA в заголовок HTTP запроса. Условия и назначения опции такие же как и в опции Disable X-Forward.
  • What todo with requests that have whitespace characters in the URL определяет поведение прокси сервера при нахождении пробелов в запросах. Возможные значения: strip (удалить пробелы), deny (блокировать запрос), allow (разрешить запрос), encode (преобразовать пробелы в код), chop (обрезать на первом пробеле). Значением по умолчанию является strip.
  • Use alternative DNS servers for proxy server определяет список альтернативных DNS серверов, разделенных ';' для использовании прокси сервером.
  • Supress Squid version запрещает прокси серверу передавать свою версию в HTTP запросах и на страницах сообщений.
  • Custom Options содержит опции squid, непосредственно включаемые в конфигурационный файл прокси. Каждая опция отделяется от остальных ';' без пробелов. Некоторые пакеты могут использовать эту опцию для своих целей, поэтому вносите свои изменения с осторожностью. Опция не рекомендуется для использования неподготовленными пользователями.

После настройки параметров прокси сервера для ее сохранения и формирования конфигурационного файла следует нажать кнопку Save внизу страницы.