Перевод подготовила команда проекта http://break-people.ru
Секция: Другие прокси(NEIGHBOR SELECTION ALGORITHM)
-----------------------------------------------------------------------------
TAG: cache_peer
Этот тэг позволяет определить другие кэши. Формат записи тэга:
cache_peer hostname type http-port icp-port [options]
Например,
cache_peer имя хоста тип порт_прокси порт_icp опции
cache_peer parent.foo.net parent 3128 3130 proxy-only default
cache_peer sib1.foo.net sibling 3128 3130 proxy-only
cache_peer sib2.foo.net sibling 3128 3130 proxy-only
Тип прокси:
parent - родительский
sibling - соседский
multicast - мультикаст
proxy-port: номер порта на котором прокси будет слушать запросы клиентов.
icp-port: номер порта на котором прокси будет слушать ICP запросы от других прокси.
=======Опции===========
proxy-only
определяет, что объекты, которые берутся из этого кэша, не будут сохранятся локально.
weight=n
позволяет установить приоритет использования прокси при прочих равных условиях(например, при использовании sibling(равных) прокси). Не имеет эффекта при отношениях parent-sibling. Опция может принимать любое число начиная с 1. По умолчанию, ставится 1.
ttl=n
позволяет определить TTL(Time-To-Live) в ICP пакетах при использовании multicast. Полезно только в случае рассылки запросов к к группе multicast. Поскольку, мы не принимаем ICP ответы от случайных хостов, вы должны настроить остальные прокси группы (multicast группы) используя опцию multicast-responder.
no-query
используется для запрета отправки ICP запросов к этому соседскому прокси. Только принимать их.
default
использовать этот прокси по умолчанию.
round-robin
для определения множества родительских кэшей, которые будут использоватся по очереди.
carp
для определения множества родительских кэшей, которые будут использваться в массиве CARP. CARP представляет собой механизм для распределения нагрузки между родительскими прокси согласно их приоритету(weight).
multicast-responder
определяет принадлежность этого прокси к группе multicast.
closest-only
определяет, что при ответах ICP_OP_MISS, мы будем отправлять ответ CLOSEST_PARENT_MISS и никогда FIRST_PARENT_MISS.
no-digest
определяет, что от этого прокси не запрашивать cache digest.
no-netdb-exchange
отключает запросы к ICMP RTT базе данных (NetDB) от соседского прокси.
no-delay
используется для запрета доступа к этому соседскому прокси при перезагрузке delay pools.
login=user:password
используется если ваш родительский прокси требует аутентификации.
Примечание: Строка может содержать URL символы-исключения. (например, %20 для обозначения пробела) Этот также значит, что для использования знака % нужно писать %%.
login=PASS
используется если пользователи должны пройти аутентификацию.
Примечание: Для комбинирования этой опции с локальной аутентификацией, необходимо использовать Basic схему и оба сервера должны иметь одинаковую базу данных пользователей. Такой подход позволяет авторизоваться один раз, вместо двух(один раз на прокси, второй раз на самом сервере). Используйте с осторожностью.
login=*:password
используйте для аутентификации пользователей с разными именами, но одним и тем же паролем. Это может быть необходимо для организации доступа пользователям из другого домена. При этом необходимо идентифицировать пользователей. Значок *(звездочка) может использоваться дополнительно. Например, для добавления некоторой информации, которая будет добавлятся к username.
connect-timeout=nn
используется для определения таймаута соединения(также смотри peer_connect_timeout).
digest-url=url
сообщает Squid взять cache_digest(если digest включен) для этого хоста, с некоторого URL, вместо его обычного расположения.
allow-miss
сообщает Squid, принимать TCP_MISS(отсутсвие в кэше) от sibling(равных, братских) кэшей.
max-conn=n
используется для ограничения количества подключений Squid которые могут быть открыты к этому кэшу.
htcp
определяет использование HTCP вместо ICP запросов к соседскому кэшу. Тогда вы должны разрешить Squid использование htcp_access.
htcp-oldsquid
определяет использование HTCP для старых версий Squid. Тогда вы должны разрешить Squid использование htcp_access.
originserver
определяет, что этот родительский прокси используется для выхода в Интернет.
userhash
используется для баланса нагрузки множества родительских прокси. Правила для баланса основываются на клиентском proxy_auth или ident username.
sourcehash
используется для баланса нагрузки множества родительских прокси. Правила для баланса основываются на IP адресе клиента.
name=xxx
используется если у вас несколько прокси на одном хосте, но на разных портах. Это имя может быть использовано в cache_peer_access и схожих директивах.
monitorurl=url
используется для мониторинга состояния соседского прокси. Действует следующим образом: посылает запрос на заданный URL и ждет ответа. Если ответ пришел - прокси "жив", иначе - нет. По умолчанию, none.
monitorsize=min[-max]
используется для ограничения размера тела ответа полученного от monitorurl. По умолчанию - 0(без ограничения на размер).
monitorinterval=seconds
используется для установки частоты мониторинга. По умолчанию 300 секунд. Если установить значение 0, то мониторинг будет выключен.
monitortimeout=seconds
используется для установки таймаута 'monitorurl'. По умолчанию, равно значению 'monitorinterval'.
forceddomain=name
используется для принудительной вставки Host заголовка в запросы направленные к этому прокси. Полезно, если Squid в режиме accelerator.
ssl
определяет то, что подключения к этому прокси должны быть шифрованы по SSL/TLS.
sslcert=/path/to/ssl/certificate
определяет клиентский SSL сертификат, который необходимо использовать при подключении к этому прокси.
sslkey=/path/to/ssl/key
определяет частный SSL ключ для sslcert. Если 'sslkey' не установлен, тогда файл, указанный в sslcert должен содержать и ключ и сертификат.
используйте sslversion=1|2|3|4 для определения версии SSL протокола:
1 = automatic (по умолчанию)
2 = SSL v2 only
3 = SSL v3 only
4 = TLS v1 only
sslcipher=...
определяет список корректных SSL шифров, используемых для подключения к этому прокси.
ssloptions=...
определяет используемый SSL движок:
NO_SSLv2 Запрещает использовать SSLv2
NO_SSLv3 Запрещает использовать SSLv3
NO_TLSv1 Запрещает использовать TLSv1
Смотри src/ssl_support.c или документацию по OpenSSL для более подробной информации.
sslcafile=...
используется для определения файла содержащего CA сертификаты.
sslcapath=...
определяет каталог, который содержит CA сертификаты.
sslcrlfile=...
определяет список аннулированных сертификатов.
sslflags=...
определяет различные флаги SSL:
DONT_VERIFY_PEER Принимать сертификаты, даже если они не проверены.
NO_DEFAULT_CA Не использовать список CA по умолчанию, встроенный в OpenSSL.
ssldomain=
используется для указания имени прокси в сертификате. Необходимо для проверки на корректность полученного сертификата. Если не указано, то используется hostname прокси.
front-end-https
используется для включения заголовка "Front-End-Https: On" необходимый при использовании Squid как SSL представителя(фронтенда) в Microsoft OWA. Смотри MS KB документ Q307347 для подробностей об этом заголовке.
connection-auth=off
сообщает Squid, что этот прокси не поддерживает Microsoft ориентированные подключения для аутентификации. По умолчанию, auto, для автоматического определения статуса прокси.
По умолчанию:
none
TAG: cache_peer_domain
Этот тэг используется для указания доменов, обращение к которым(к доменам), порождает соединение, проходящее через соседский прокси. Это формулировка немного замысловатая, смотрите пример ниже и пояснение к нему.
Использование:
cache_peer_domain cache-host domain [domain ...]
cache_peer_domain cache-host !domain
Например,
cache_peer_domain parent.foo.net .edu
Этот пример означает, что UDP пакеты будут отправлятся к прокси серверу parent.foo.net только тогда, когда запрошенный объект распологается в .edu зоне(домене). А если будет перед доменом будет стоять знако "!", то это будет означать, что запрос к parent.foo.net будет направлен только тогда, когда объект НЕ находится в .edu зоне(домене).
Примечание: Тэг cache_peer_domain используется по принципу - один тэг = один домен. Следующий домен должен быть оформлен тэгом на следующей строке. Когда используется много доменов, то применяется первый совпавший. Совпадения проверяются сверху вниз.
Кэш хосты не имеющие ограничений по домену, открыты всем доменам.
Здесь нет значений по умолчанию.
То же самое можно настроить через cache_peer_access, с использованием ACL.
По умолчанию:
none
TAG: cache_peer_access
Этот тэг схож с 'cache_peer_domain', но более гибок за счет использования ACL.
cache_peer_access cache-host allow|deny [!]aclname ...
Синтаксис использования подобен http_access. Смотри комментарии к http_access или в Squid FAQ (http://www.squid-cache.org/FAQ/FAQ-10.html).
По умолчанию:
none
TAG: neighbor_type_domain
Использование:
neighbor_type_domain neighbor parent|sibling domain domain ...
Этот тэг позволяет изменять тип соседского прокси для некоторых доменов. Настроив значения по умолчанию через директиву cache_peer, вы можете указать домены для которых тип соседского прокси будет иным.
Например:
cache_peer cache.foo.org parent 3128 3130
neighbor_type_domain cache.foo.org sibling .com .net
neighbor_type_domain cache.foo.org sibling .au .de
По умолчанию:
none
TAG: dead_peer_timeout (в секундах)
Этот тэг определяет как долго Squid будет ожидать, прежде чем определит прокси "мертвым". "Мертвый" означает, что прокси не отвечает на ICP запросы некоторое время. Вот это некоторое время и позволяет задать этот тэг. По истечению установленного времени, если соседский прокси не отвечает, Squid определит его "мертвым". Однако, Squid будет продолжать направлять к нему ICP запросы. И при первом же ответе, определит соседский прокси как "живой".
По умолчанию:
dead_peer_timeout 10 seconds
TAG: hierarchy_stoplist
Этот тэг задает список слов, которые при нахождении их(этих слов) в URL, сообщают Squid то, что объект расположенный по этому URL надо брать напрямую, а не из кэша. Другими словами, используйте этот тэг, для некоторых объектов, которые вы не хотите брать из соседских кэшей.
Разработчики Squid рекомендуют использовать эту строку:Примечание: директива never_direct перекрывает эту опцию.
hierarchy_stoplist cgi-bin ?
Ссылки:
К содержаниюSquid на практике
Работа с Squid через Webmin
Анализатор логов Squid