Прозрачное кэширование в nginx для всех и каждого

Peeking at the server often precludes bumping

To peek at the server certificate, Squid must forward the entire Client Hello intact. If that Client Hello or the server response contains any TLS extensions that Squid does not support or understand (many do!), then Squid cannot reliably bump the connection because the other two sides of that bumped communication may start using those extensions, confusing Squid’s OpenSSL in unpredictable ways. Possible solutions or workarounds (all deficient in various ways):

  1. If bumping is more valuable/important than splicing in your environment, you should «stare» instead of peeking. Staring usually precludes future splicing, of course. Pick your poison.
  2. We could add an ACL that will tell you whether those extensions and other complications are present in Client Hello. This is doable, but if that ACL usually evaluates to «yes», do we really want to do all this extra development and then complicate Squid configurations?
  3. We could teach Squid to understand more TLS extensions. This may require significant low-level work (because we would have to do what OpenSSL cannot do for us). This approach may eventually cover many popular cases, but will never cover everything and will require ongoing additions, of course.
  4. Squid could ignore the client and/or server extensions and try to bump anyway. The exact results cannot be predicted, but will often be a total transaction failure, possibly with user-visible browser warnings.
  5. We could teach Squid to abandon the current server connection and then bump a newly open one. This is something we do not want to do as it is likely to create an even worse operational problems with Squids being auto-blocked for opening and closing connections in vain.

How do I implement an ACL ban list?

As an example, we will assume that you would like to prevent users from accessing cooking recipes.

One way to implement this would be to deny access to any URLs that contain the words «cooking» or «recipe.» You would use these configuration lines:

acl Cooking1 url_regex cooking
acl Recipe1 url_regex recipe
acl myclients src 172.16.5.0/24
http_access deny Cooking1
http_access deny Recipe1
http_access allow myclients
http_access deny all

The url_regex means to search the entire URL for the regular expression you specify. Note that these regular expressions are case-sensitive, so a url containing «Cooking» would not be denied.

Another way is to deny access to specific servers which are known to hold recipes. For example:

acl Cooking2 dstdomain www.gourmet-chef.com
http_access deny Cooking2
http_access allow all

The dstdomain means to search the hostname in the URL for the string «www.gourmet-chef.com.» Note that when IP addresses are used in URLs (instead of domain names), Squid may have to do a DNS lookup to determine whether the ACL matches: If a domain name for the IP address is already in the Squid’s «FQDN cache», then Squid can immediately compare the destination domain against the access controls. Otherwise, Squid does an asynchronous reverse DNS lookup and evaluates the ACL after that lookup is over. Subsequent ACL evaluations may be able to use the cached lookup result (if any).

Asynchronous lookups are done for http_access and other directives that support so called «slow» ACLs. If a directive does not support a required asynchronous DNS lookup, then modern Squids use «none» instead of the actual domain name to determine whether a dstdomain ACL matches, but you should not rely on that behavior. To disable DNS lookups, use the «-n» ACL option (where supported).

Использование СКВИДов

Исключительно высокая энергетическая чувствительность (порядка долей постоянной Планка), которой обладают СКВИДы при измерениях магнитных полей, открыла новые возможности в экспериментах фундаментальной физики. Одна из таких задач — оценка возможной величины электрического дипольного момента (ЭДМ) электрона. Общеизвестно, что электроны обладают электрическим зарядом и спином. Эффекты, связанные с нарушением СР- и Т-инвариантности, не запрещают электрону иметь распределение электрического заряда, не совпадающее с распределением его массы, то есть электрический дипольный момент. Различные модели предсказывают существование у электрона ЭДМ на уровне от 10−20 см на заряд электрона до 10−28 см на заряд электрона, а возможно, и ещё меньше. Соответствующие опыты со СКВИДом показали, что ЭДМ у электронов меньше, по крайней мере, 10−22 см на заряд электрона. Этот результат вошел в справочники по свойствам элементарных частиц и к настоящему времени вызвал целую серию подобных измерений.

На исключительно высокую чувствительность к магнитному потоку опирается весь спектр медицинских (магнитоэнцефалография, магнитогастрография, магнитный маркерный мониторинг, исследование сердца), технических (ядерный магнитный резонанс), горно-геологических (, палеомагнитный метод изучения горных пород) применений СКВИДов. Также есть соображения в части применения СКВИДов в квантовом компьютере в качестве кубитов.

Сканирующий СКВИД-микроскоп

В отличие от традиционных магнитометров, в которых СКВИДы используются как пассивные датчики низкочастотного или постоянного магнитного поля, в новом микроскопе используется переменный ток микроволновой частоты, циркулирующий по кольцу СКВИДа, когда на его джозефсоновских переходах возникает постоянное напряжение (нестационарный эффект Джозефсона). Основной принцип действия в том, что микроволновой ток течет в кольце СКВИДа легче, когда рядом с ним находится проводящий образец.

Proxy-authentication and neighbor caches

The problem

               
               /         \
              /           \
        --- 
           |
           |
          USER

Proxy A sends and ICP query to Proxy B about an object, Proxy B replies with an ICP_HIT. Proxy A forwards the HTTP request to Proxy B, but does not pass on the authentication details, therefore the HTTP GET from Proxy A fails.

Only ONE proxy cache in a chain is allowed to «use» the Proxy-Authentication request header. Once the header is used, it must not be passed on to other proxies.

Therefore, you must allow the neighbor caches to request from each other without proxy authentication. This is simply accomplished by listing the neighbor ACL’s first in the list of http_access lines. For example:

acl proxy-A src 10.0.0.1
acl proxy-B src 10.0.0.2
acl user_passwords proxy_auth /tmp/user_passwds
http_access allow proxy-A
http_access allow proxy-B
http_access allow user_passwords
http_access deny all

Squid-2.5 allows two exceptions to this rule, by defining the appropriate cache_peer options:

cache_peer parent.foo.com parent login=PASS

This will forward the user’s credentials as-is to the parent proxy which will be thus able to authenticate again.

This will only work with the Basic authentication scheme. If any other scheme is enabled, it will fail

cache_peer parent.foo.com parent login=*:somepassword

This will perform Basic authentication against the parent, sending the username of the current client connection and as password always somepassword. The parent will need to authorization against the child cache’s IP address, as if there was no authentication forwarding, and it will need to perform client authentication for all usernames against somepassword via a specially-designed authentication helper. The purpose is to log the client cache’s usernames into the parent’s access.log. You can find an example semi-tested helper of that kind as parent_auth.pl .

Что такое proxy-сервер и что такое squid

Начну с основ. squid является кэширующим прокси сервером для HTTP, FTP и др. протоколов. Прокси сервер для HTTP — это программа, выполняющая HTTP-запросы от имени клиентской программы (будь то браузер или другой софт). Proxy может быть кэширующим или не кэширующим. Кэширующий, соответственно, сохраняет все запросы в какое-либо хранилище для более быстрой отдачи клиентам, а не кэширующий — просто транслирует HTTP, ftp или другие запросы. Ранее, кэширование трафика позволяло добиться довольно значительной экономии трафика, но в настроящее время с ростом скоростей интернета это немного утеряло актуальность. Прокси серверА можно выстраивать в иерархии для обработки запросов. При этом, прокси серверА взаимодействуют между собой по протоколу ICP.

Squid разработан и может работать на большинстве операционных систем (как unix, так и windows). Лицензируется под лицензией GNU GPL. Способен обрабатывать и кэшировать  HTTP, FTP, gopher, SSL и WAIS (убрано в 2.6) запросы, а так же DNS. Наиболее частые запросы хранит в оперативной памяти. На текущий момент существуют 2 стабильные версии squid: 2.7 и 3.1. С отличиями можно ознакомиться в ссылках в конце статьи. Все зависимости при установке из пакетов у них одинаковые. Конфигурационный файл версии 2 совместим с версией 3, но в 3 версии добавлены новые параметры. В статье я буду рассматривать версию squid3. Стоит так же заметить, что  если устанавливать squid3 , то он свои конфигурационные файлы будет держать в /etc/squid3, а так же логи по умолчанию в squid3 лежат в каталоге /var/log/squid3/, а не /var/log/squid/, как «любят считать» многие анализаторы логов.

Кучу раз упомянуто слово «кэширование». А что же это, собственно, такое — кэширование? Это способ хранения запрошенных из Интернет объектов на сервере, находящемся ближе к запрашивающему компьютеру нежели исходный. Интернет-объект это файл, документ или ответ на обращение к какому-либо сервису предоставляемому в Интернет (например, FTP, HTTP, или gopher). Клиент запрашивает интернет-объект из кеша прокси-сервера; если объект ещё не кеширован, то прокси-сервер получает объект (либо от узла сети указанного по запрошенному адресу URL, либо от родительского или соседнего кеша) и доставляет его клиенту.

Установка SQUID

SQUID может быть установлен из исходных текстов или в виде RPM-пакета.
Установка RPM пакета SQUID очень проста — для этого нужно ввести команду

dnf install squid

Исходники можно получить
по адресу ftp://ftp.squid.org. Для распаковки
исходных кодов, выполните следующие команды:

cd /usr/src/
gunzip squid-версия-src.tar.gz
tar xvf squid-версия-src.tar.gz
cd squid

Теперь перейдем непосредственно к установке:

./configure --prefix=/usr/local/squid
make all
make install

Squid будет установлен в каталог, заданный ключом prefix — /usr/local/squid.

Помимо prefix можно пользоваться следующими ключами:

Ключ Описание
—enable-icmp  >измерять путь до каждого HTTP-сервера при запросах с помощью ICMP
—enable-snmp  включить SNMP-мониторинг
—enable-delay-pools  управление трафиком
—disable-wccp  отключить Web Cache Coordination Protocol
—enable-kill-parent-hack  более корректный shutdown
—enable-splaytree  позволяет увеличить скорость обработки ACL

Принцип работы

Изменение магнитного потока за счет генерации на Джозефсоновском контакте.

Простейший квантовый магнитометр — СКВИД представляет собой сверхпроводящее кольцо с двумя джозефсоновскими туннельными контактами. Это в определенном смысле аналог оптического эффекта с интерференцией от двух щелей, только в данном случае интерферируют не световые волны, а два джозефсоновских тока. Существенным для понимания работы СКВИДа является наличие волновых свойств у электрона — в СКВИДе волна электронов разделяется на две, каждая из которых проходит свой туннельный контакт, а затем обе волны сводятся вместе. В случае отсутствия внешнего поля обе ветви будут эквивалентны, и обе волны придут без разности фаз. Но при наличии магнитного поля в контуре будет наводиться циркулирующий сверхпроводящий ток. Этот ток в одном из контактов будет вычитаться из постоянного внешнего тока, а во втором — складываться с ним. Теперь две ветви будут иметь разные токи, и между туннельными контактами возникнет разность фаз. Волны электронов, пройдя через контакты и соединившись, будут интерферировать, интерференция проявится как зависимость критического тока СКВИДА от приложенного внешнего магнитного поля. Ступенчатый характер зависимости позволяет чувствовать отдельные кванты потока. Ступенчатый вид зависимости возникает из-за наличия условия изменения фазы электронной волны на джозефсоновском контакте на 2πn{\displaystyle 2\pi n}, где n{\displaystyle n} — целое число.

SAMS — веб-интерфейс для управления Squ > Автор: Уваров А.С. 26.01.2012

По многочисленным просьбам наших читателей сегодняшняя статья посвящена SAMS — веб-интерфейсу для Squid, который позволяет в графическом режиме производить все основные настройки прокси-сервера, а также реализует дополнительный функционал, позволяющий использовать его в качестве простейшего биллинга.

К сожалению, придется начать наш материал с печальной новости. На данный момент проект SAMS закрыт и его будущее под большим вопросом. Из этого следует, что использовать данный продукт вам придется на свой страх и риск, полагаясь исключительно на свои силы.

Мы также предупреждаем, что данный материал актуален только на текущий момент и мы не можем гарантировать, что все нижеизложенное будет работать на следующих версиях Ubuntu Server, при обновлении ПО и при любых иных условиях, отличных от изложенных в статье.

Итак, если вы отдаете себе отчет и осознаете ответственность, то продолжим. В нашем распоряжении имеется роутер, настроенный согласно данной статьи, работающий под управлением Ubuntu Server 10.04.3 LTS на котором мы будем производить все действия. В первую очередь нам необходимо настроить веб-сервер, для этого можно воспользоваться данным руководством, в качестве имени сайта укажем router.local, а в dnsmasq пропишем строку с адресом 10.0.0.1 (внутренний адрес нашего роутера). Не забудьте в /etc/lighttpd/lighttpd.conf раскомментировать и привести к следующему виду опцию:

Это ограничит доступность веб-сервера внутренним интерфейсом. Теперь установим необходимые пакеты:

Затем в /etc/php5/cgi/php.ini найдем и раскомментируем следующую строку, установив ее значение как:

Мы настроили сервер, можно приступать к установке SAMS. На официальном сайте доступны две версии: стабильная 1.5 и бета 2.0, по причине заморозки проекта и некоторой нестабильности последней версии мы рекомендуем использовать 1.5. С данной страницы качаем пакеты для Debian Lenny, а также пакет libmysqlclient15off с нашего сервера (i386 / amd64). Переносим их на сервер, например при помощи флешки, ее можно смонтировать командой:

где sdb имя съемного диска, его можно увидеть на экране сервера после подключения флешки:

Перейдем в каталог /media и установим пакеты:

Теперь откроем /etc/sams.conf и укажем параметры подключения к MySQL серверу:

где password — пароль суперпользователя MySQL который вы задали на этапе его установки.

Создадим линк на папку SAMS в каталоге веб-сервера:

Скопируем дампы БД в каталог для установки:

Установим необходимые права и владельцев на папки и файлы:

В данном релизе SAMS есть один неприятный баг, сервис samsdaemon отказывается стартовать автоматически, для его устранения нужно заменить скрипт /etc/init.d/sams следующим файлом (скачать). Будем считать что он распакован и находится на флешке, которая смонтирована в /media:

Перейдем к установке веб-интерфейса. Для этого в браузере наберем http://router.local/sams, на экране появится сообщение о невозможности подключится к БД и будет предложено запустить скрипт установки:

На следующем экране нужно указать параметры подключения к MySQL и задать пароль пользователю БД sams.

Если все сделано правильно вы увидите следующую страницу:

Можно смело жать кнопку и переходить в веб-интерфейс. Для авторизации используйте логин: admin и пароль: qwerty.

Осталось проверить, что сервис samsdaemon запущен и работает. Для этого перейдите в SAMS — SQUID и нажмите левую нижнюю иконку Squid reconfiguration, затем нажмите кнопку Reconfigurate, вы должны увидеть следующее сообщение:

На этом установку можно считать законченной. Настройка Squid при помощи SAMS выходит за пределы данной статьи и при наличии необходимых знаний не представляет каких-либо затруднений.

How can I block access to porn sites?

Often, the hardest part about using Squid to deny pornography is coming up with the list of sites that should be blocked. You may want to maintain such a list yourself, or get one from somewhere else (see below). Note that once you start blocking web content, users will try to use web proxies to circumvent the porn filter, hence you will also need to block all web proxies (visit http://www.proxy.org if you do not know what a web proxy is).

The ACL syntax for using such a list depends on its contents. If the list contains regular expressions, use this:

acl PornSites url_regex "/usr/local/squid/etc/pornlist"
http_access deny PornSites

On the other hand, if the list contains origin server hostnames, simply change url_regex to dstdomain in this example.

Настройка адреса прокси через GPO в Windows Server 2008 R2

Настройка Internet Explorer через GPO

Желательно на всех машинах локальной сети обновить Internet Explorer до 7 версии, ибо с IE 6 доменная проверка подлинности не будет работать. Об этом Mictosoft официально . Настройка параметров прокси сервера задается в объекте групповой политики в разделе Конфигурация пользователя — Политики — Конфигурация Windows — Настройка Internet Explorer — Подключение — Параметры прокси-сервера: Т.к. данная настройка расположена в конфигурации пользователя, то и применяться будет к пользователям, расположенным в текущем подразделении OU, к которому будет применен Объект групповой политики.

Настройка Mozilla Firefox через GPO

1. Качаем MSI пакет FrontMotion Firefox Community Edition с http://www.frontmotion.com/FMFirefoxCE/download_fmfirefoxce.htm. (Обязательно Community Edition, ибо кроме CE-версии на данном сайте предлагается обычная сборка msi пакета, которая не принимает настройки из реестра GPO). Оттуда же качаем файлы административных шаблонов mozilla.admx и mozilla.adml, которые собственно и задают настройки групповых политик. Если у Вас сервер AD 2003 версии, то нужно скачивать firefox.adm и mozilla.adm.

2. Распространяем скачанный MSI пакет через объект GPO (как это сделать я описывал в статье установка программ через AD GPO).

3. Кладем скачанные файлы административных шаблонов…:

  • Если используется централизованное хранилище, то mozilla.admx кладется в каталог %logonserver%\sysvol\%userdnsdomain%\policies\PolicyDefinitions\, а mozilla.adml — в %logonserver%\sysvol\%userdnsdomain%\policies\PolicyDefinitions\en-US\.
  • Если используется локальное хранилище административных шаблонов, то mozilla.admx кладется в каталог %systemroot%\PolicyDefinitions\, а mozilla.adml — в %systemroot%\PolicyDefinitions\en-US\. После этого появиться новый раздел в настройках GPO.

4. Задаем настройки браузера в созданном объекте групповой политики. Настройки прокси-сервера задаются в разделе Конфигурация компьютера — Политики — Административные шаблоны — Mozilla Advanced Options — Locked Settings — network:

Т.к. данная настройка расположена в конфигурации компьютера, то и применяться будет к компьютеру всем пользователям, вошедшим в компьютер, расположенный в текущем подразделении OU, к которому будет применен Объект групповой политики. Кроме настроек прокси, браузер поддерживает еще туеву хучу настроек, о которых можно почитать тут http://kb.mozillazine.org/About:config_entries.

Настройка Google Chrome через GPO

1. Качаем MSI пакет Chrome с https://www.google.com/intl/en/chrome/business/browser/ или http://www.google.com/chrome/intl/ru/business/index.html. Качаем файлы административных шаблонов chrome.admx и chrome.adml, которые собственно и задают настройки — отсюда http://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip.

2. Распространяем скачанный MSI пакет через объект GPO (как это сделать я описывал в статье установка программ через AD GPO).

3. В скачанном архиве  policy_templates.zip имеются каталоги policy_templates\windows\admx, из данного каталога кладем файлы административных шаблонов…:

  • Если используется централизованное хранилище административных шаблонов, то chrome.admx кладется в каталог %logonserver%\sysvol\%userdnsdomain%\policies\PolicyDefinitions\, а chrome.adml — в %logonserver%\sysvol\%userdnsdomain%\policies\PolicyDefinitions\ru-RU\.
  • Если используется локальное хранилище административных шаблонов, то \ru\chrome.admx кладется в каталог %systemroot%\PolicyDefinitions\, а \ru\chrome.adml — в %systemroot%\PolicyDefinitions\en-US\. После этого появиться новый раздел в настройках GPO.

4. Задаем настройки браузера в созданном объекте групповой политики. Настройки прокси сервера задаются в разделе Конфигурация пользователя —  Политики — Административные шаблоны — Google — Google Chrome — Прокси-сервер:

Т.к. данная настройка расположена в конфигурации пользователя, то и применяться будет к пользователям, расположенным в текущем подразделении OU, к которому будет применен Объект групповой политики. Кроме настроек прокси, браузер Crome поддерживает еще много настроек, о которых можно почитать в скачанном архиве в файле policy_templates\common\html\ru\chrome_policy_list.html. Кроме того, можно ознакомиться с Кратким руководством от гугла http://support.google.com/a/bin/answer.py?hl=ru&answer=187202.

Управление squid

Демон управляется init-скриптом /etc/init.d/squid3. Прокси-сервер представляет собой процесс /usr/sbin/squid3. Демон поддерживает множество параметров, с которыми можно ознакомиться в man squid, но в таких дистрибутивах, как Debian и RH для управления демоном вполне достаточно init-скрипта.

Проверить работоспособность сервера squid можно следующим образом:

gw ~ # # проверка работоспособности squid на сетевом интерфейсе
gw ~ # netstat -npl | grep 3128
tcp        0      0 0.0.0.0:3128            0.0.0.0:*               LISTEN      25816/(squid)
gw ~ # # проверка, запущен ли процесс демона
gw ~ # ps aux | grep squ
root     25814  0.0  0.0   9316  1644 ?        Ss   Feb15   0:00 /usr/sbin/squid3 -YC -f /etc/squid3/squid.conf
proxy    25816  0.0  0.4  37308 13184 ?        S    Feb15   2:29 (squid) -YC -f /etc/squid3/squid.conf
root     28451  0.0  0.0   3328   784 pts/0    S+   00:20   0:00 grep --colour=auto squ

Как видно, при запуске данный демон стартует с параметрами -YC -f /etc/squid3/squid.conf. Параметр -f задает конфигурационный файл, который используется для работы демона. Параметры -Y и -С мне не совсем ясны. -Y вроде как ускоряет каким-то образом запуск в случае падения, а -С позволяет корректно завершать демона.

Программа squid3 с ключом -k и дополнительным параметром позволяет удобно управлять демоном, не прерывая пользователей. Примеры:

  • -k — послать команду работающему серверу:
    • reconfigure — посылка сигнала HUP — перечитать и использовать файл конфигурации
    • rotate — обрезать логи; сигнал USR1
    • shutdown — корректно остановить squid; сигнал TERM
    • interrupt — убить squid; сигнал INT
    • kill — жестко убить squid; сигнал KILL
    • debug — начать/закончить полную трассировку; сигнал USR2
    • check — проверить корректность работы squid (без сообщений — работает корректно); сигнал ZERO
    • parse — проверить синтаксис squid.conf

Собственно, изменив squid.conf, выполнив squid3 -k parse, можно убедиться в корректности внесенных изменений, далее выполнив squi3 -k reconfigure можно практически не обрывая пользователей применить изменения. Очистку кэша (пересоздание) можно выполнить командой squid3 -z.

Будет неправильно, если я не обращу внимание на следующий момент. При установке squid из репозиториев Вашего дистрибутива, пакет является уже настроенным и имеет какие-то заданные настройки по умолчанию

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

Параметры, с которыми был собран squid Вашего дистрибутива можно посмотреть командой squid3 -v. Например, в Debian squeezу squid собран с параметрами, приведенными ниже:

--prefix=/usr - префикс для других ключей:
--mandir=${prefix}/share/man - каталог хранения man-страниц
--libexecdir=${prefix}/lib/squid3 - каталог с исполняемыми модулями (в том числе и хелперы)
--sysconfdir=/etc/squid3 - каталог хранения конфигурации
--with-logdir=/var/log/squid3 - каталог хранения журналов
и мн. др...

Присоединение к Active Directory

Нам нужно присоединить нашу Linux машину к домену Active Directory. Для этого нужно выполнить ряд подготовительных действий.Сначала нам нужно научить наш будущий прокси сервер синхронизировать время с домен-контроллером. Устанавливаем NTP командой apt-get install ntp

После установки опять правим конфиг-файлы. Начнем с самбы.Открываем файл /etc/samba/smb.conf, стираем из него все нафиг и пишем заново следующие строки:

workgroup = MYDOMAINnetbios name = PROXYrealm = MYDOMAIN.LOCALserver string =security = adsencrypt passwords = truepassword server = dc.mydomain.localwinbind enum users = yeswinbind enum groups = yeswinbind use default domain = ysewinbind uid = 10000-20000winbind gid = 10000-20000Если вы внимательно посмотрели этот листинг, то заметили, что в строке server string после знака равенства стоит пробел — это не случайно. Добавляйте там пробел, иначе самба сама будет заполнять этот параметр на свое усмотрение, что не всегда хорошо.Перезагружаемся.Правим следующий файл /etc/krb5.conf В конечном итоге он должен выглядеть как показано на скриншоте ниже. Вместо mydomain.local и dc подставляете свои названия

Обратите внимание, что в разных частях файла эти названия написаны в разном регистре — это очень важно!Перезагружаемся

Выполняем команду kinit admin где вместо admin указываем логин администратора домена. Нас должны будут спросить пароль этого админа.

Теперь выполняем команду net ads join -U admin где вместо admin пишем логин администратора домена. После выполнения этой команды может появиться ошибка DNS сервера. Смело можно проигнорировать.Еще выполним команды wbinfo -p и wbinfo -tОбе команды должны завершиться успешно. Если так оно и получилось, то не поленитесь перезагрузить комп прокси-сервера.

Важное замечание: с описанными выше командами просто так лучше не играться. При подготовке этого обзора я от нефига делать выполнил эти команды на своем боевом прокси сервере

Сами команды выполнились успешно, но прокси после этого перестал воспринимать доменных пользователей. Помогла только перезагрузка машины.Устанавливаем squid командой apt-get install squid

I want to customize, or make my own error messages.

You can customize the existing error messages as described in Customizable Error Messages in SquidFaq/MiscFeatures. You can also create new error messages and use these in conjunction with the deny_info option.

For example, lets say you want your users to see a special message when they request something that matches your pornography list. First, create a file named ERR_NO_PORNO in the /usr/local/squid/etc/errors directory. That file might contain something like this:

Our company policy is to deny requests to known porno sites.  If you
feel you've received this message in error, please contact
the support staff (support@this.company.com, 555-1234).

Next, set up your access controls as follows:

acl porn url_regex "/usr/local/squid/etc/porno.txt"
deny_info ERR_NO_PORNO porn
http_access deny porn
(additional http_access lines ...)

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий