
- •1. О Squid, этом faq, и других информационных ресурсах по Squid
- •1.1 Что такое Squid?
- •1.8 Работает ли Squid под Windows nt?
- •1.9 Какие доступны листы рассылки по Squid ?
- •1.10 Я не могу найти описание как отписаться от вашего списка рассылки.
- •1.11 Какие веб-страницы посвящены Squid ?
- •1.12 Поддерживает ли Squid ssl/https/tls?
- •1.13 Каков официальный статус Squid?
- •1.14 Совместим ли Squid c проблемой 2000 ?
- •1.15 Могу ли я заплатить кому-нибудь за поддержку Squid ?
- •1.16 Создатели Squid faQrus
- •1.17 О этом документе
- •2. Получение и компиляция Squid
- •2.1 Какие файлы мне загрузить ?
- •2.2 Как мне откомпилировать Squid?
- •2.3 Какой компилятор мне необходим?
- •2.4 Что еще мне необходимо для компиляции Squid?
- •2.5 А есть откомпилированные бинарники?
- •2.6 Как мне наложить патч ?
- •2.7 Опции configure.
- •2.8 Undefined reference to __inet_ntoa
- •2.9 Как мне получить действительное dns ttl в ip-rtit Squid?
- •2.10 Моя платформа - bsd/os или bsdi и я не могу откомпилировать Squid.
- •2.11 Проблемы компиляции libmiscutil.A на Solaris.
- •2.12 У меня проблемы при компиляции Squid на некоторой платформе.
- •2.13 Я вижу много предупреждений во время компиляции.
- •2.14 Сборка Squid на os/2
- •3. Установка и запуск Squid
- •3.1 Насколько мощная система мне необходима, чтобы запускать Squid?
- •3.2 Как мне установить Squid?
- •3.3 Что делает файл squid.Conf?
- •3.4 А у вас есть пример squid.Conf?
- •3.5 Как мне запустить Squid?
- •3.6 Как мне запускать Squid автоматически во время загрузки системы?
- •3.7 Как узнать запущен ли Squid?
- •3.8 Опции командной строки squid.
- •3.9 Как мне посмотреть как работает Squid ?
- •4. Проблемы настройки
- •4.1 Как мне присоединится к иерархии кешей ?
- •4.9 Как мне настроить в Squid перенаправление всех запросов на другой прокси ?
- •4.10 У меня есть процессы dnsserver, которые не используются, нужно ли мне уменьшить их кол-во в squid.Conf?
- •4.11 Среднее время обработки запроса моим dnsserver достаточно велико, как мне его уменьшить ?
- •4.12 Каким самым простым способом я могу изменить http-порт, установленный по умолчанию?
- •4.13 Возможно ли контролировать насколько велика каждая из cache_dir?
- •4.14 Какой размер cache_dir должен использовать?
- •4.15 Я добавил новую cache_dir. Потеряю ли я свой кеш ?
- •4.16 Squid и http-gw из пакета tis.
- •4.17 Что такое ``http_x_forwarded_for''? Почему squid снабжает ним www-сервера и как мне это прекратить?
- •4.18 Может ли Squid сделать анонимными http-запросы?
- •4.19 Могу ли я заставить Squid ходить напрямую на некоторые сайты?
- •4.20 Могу ли я заставить Squid ходить напрямую на некоторые сайты?
- •4.21 Могу ли я предотвратить закачку больших файлов пользователями?
- •5. Взаимодействие между броузерами и Squid-ом
- •5.1 Ручная настройка Netscape
- •5.2 Автоматическая настройка Netscape
- •5.3 Настройка Lynx и Mosaic
- •5.4 Redundant Proxy Auto-Configuration
- •5.5 Proxy Auto-Configuration with url Hashing
- •5.6 Настройка Microsoft Internet Explorer
- •5.7 Настройка Netmanage Internet Chameleon WebSurfer
- •5.8 Настройка прокси в Opera 2.12
- •5.9 Как мне указать Squid использовать определенное имя пользователя для ftp?
- •5.10 Настройка броузеров для wpad
- •5.11 Настройка броузеров для wpad с dhcp.
- •5.12 Ie 5.0x crops trailing slashes from ftp url's
- •5.13 Ie 6.0 sp1 не работает при использовании аутентификации basic.
- •6. Файлы журналов Squid
- •6.1 Squid.Out
- •6.2 Cache.Log
- •6.3 Useragent.Log
- •6.4 Store.Log
- •6.5 Hierarchy.Log
- •6.6 Access.Log
- •6.7 Результирующие коды Squid
- •6.8 Http status codes
- •6.9 Методы запроса
- •6.10 Коды иерархий
- •Invalid code
- •6.11 Cache/log (Squid-1.X)
- •6.12 Swap.State (Squid-2.X)
- •6.13 Какие лог-файлы я могу безопасно удалить?
- •6.18 Почему я так часто получаю сообщения получаю err_no_clients_big_obj?
- •6.19 Что значит err_lifetime_exp?
- •6.20 Восстановление ``потеряных'' файлов из кеша.
- •6.21 Могу ли я использовать store.Log,чтобы определить был ли объект закеширован ?
- •7.4 Как я могу проксировать/кешировать Real Audio?
- •7.5 Как мне удалить объект из кеша?
- •7.6 Using icmp to Measure the Network
- •Inspecting the database
- •7.7 Почему так мало запросов tcp_ims_miss попадают в лог?
- •7.8 Как мне заставить Squid не кешировать некоторые сервера или url-ы?
- •7.9 Как я могу удалить и вновь создать кеш?
- •7.10 Почему я не могу запустить Squid как root?
- •7.11 Можете ли вы подсказать мне хороший вариант обновления Squid с минимальными затратами времени?
- •7.12 Может ли Squid слушать более одного http-порта ?
- •7.12 Can Squid listen on more than one http port?
- •7.13 Can I make origin servers see the client's ip address when going through Squid?
- •8. Память
- •8.1 Почему Squid использует так много памяти!?
- •8.2 Как мне узнать сколько памяти использует мой процесс Squid ?
- •8.3 Мой процесс Squid безгранично растет.
- •8.4 Я установил параметр cache_mem равным XX, но мой процесс превышает это значение !
- •8.5 Как мне проанализировать использование памяти, основываясь на показаниях кеш-менеджера ?
- •8.6 Значение ``Total memory accounted'' меньше, чем размер моего процесса Squid.
- •8.7 Xmalloc: Unable to allocate 4096 bytes!
- •8.8 Fork: (12) Cannot allocate memory
- •8.9 Как я могу уменьшить размер используемой Squid-ом памяти ?
- •8.10 Использование альтерантивной библиотеки malloc.
- •8.11 Сколько памяти необходимо моему серверу Squid ?
- •9. Менеджер кеша
- •9.1 Что такое кеш-менеджер ?
- •9.2 Как мне его установить ?
- •9.3 Настройка кеш-менеджера для cern httpd 3.0
- •9.4 Настройка кеш-менеджера для Apache
- •9.5 Настройка кеш-менеджера для Roxen 2.0 и более поздних версий
- •9.7 Почему он говорит, что мне небходим пароль и url ?
- •9.8 Я хочу остановить кеш удаленно. Какой пароль ?
- •9.9 How do I make the cache host default to my cache?
- •9.23 Что такое fqdncache и чем он отличается от ipcache?
- •9.24 Что значит ``Page faults with physical I/o: 4897'' ?
- •9.25 Что значит поле ignored в 'cache server list' ?
- •10. Контроль доступа
- •10.1 Введение
- •10.2 Как мне разрешить моим клиентам использовать кеш?
- •10.3 Как мне настроить Squid, чтобы он не кешировал определенный сервер?
- •10.4 Как мне организовать acl списка запрета?
- •10.5 Как мне блокировать доступ к кешу определенным пользователям и группам?
- •10.6 А у вас есть cgi-программа, позволяющая пользователям менять свой пароль доступа к прокси?
- •10.7 Есть ли способ осуществлять поиск ident только для определенного хоста и сравнивать результат со списком пользователей в squid.Conf?
- •10.8 Типичные ошибки
- •10.9 Я установил собственные контроли доступа, но они не работают! Почему?
- •10.10 Прокси-аутентификация и братские кеши
- •10.11 Какой самый простой способ запретить все адреса назначения кроме одного?
- •10.13 Squid не распознает мой поддомен
- •10.14 Почему Squid запрещает доступ к некоторым портам?
- •10.20 Могу ли я устанавливать acl-лы, основанные на mac-адресах, а не на ip?
- •10.21 Отладка acl
- •10.22 Могу ли я ограничить количество соединений для клиента?
- •10.23 Я пытаюсь запретить доступ к foo.Com, но это не срабатывает.
- •10.24 Я хочу изменить или создать собственное сообщение о ошибке.
- •10.25 Я хочу видеть локальную временную зону в сообщениях о ошибке
- •11. Решение проблем
- •11.1 Почему я получаю ``Proxy Access Denied?''
- •11.2 Я не могу заставить работать local_domain.Squidкеширует объекты с моих локальных серверов.
- •11.3 Я получаю Connection Refused, когда кеш пытается получить объект с братского кеша (sibling), хотя братский кеш считает, что он отдал объект моему кешу.
- •11.4 Кончаются файловые дескрипторы.
- •11.5 Что за странные строки о удалении объектов?
- •11.6 Могу ли заставить Windows nt ftp-сервер показывать директории в формате Unix?
- •11.7 Почему я получаю ``Ignoring miss from non-peer X.X.X.X?''
- •11.8 Dns lookups for domain names with underscores (_) always fail.
- •11.9 Почему Squid сообщает: ``Illegal character in hostname; underscores are not allowed?'
- •11.10 Почему я получаю запрет доступа от братского кеша ?
- •11.11 Cannot bind socket fd nn to *:8080 (125) Address already in use
- •11.12 IcpDetectClientClose: error XXX.XXX.XXX.XXX: (32) Broken pipe
- •11.13 IcpDetectClientClose: fd 135, 255 unexpected bytes
- •11.14 Does Squid work with ntlm Authentication?
- •11.15 Опция default parent не работает!
- •11.16 ``Hot Mail'' complains about: Intrusion Logged. Access denied.
- •11.17 Мой Squid становиться слишком медленным после того, как проработает некоторое время.
- •11.18 Warning: Failed to start 'dnsserver'
- •11.19 Как послать отчет о ошибке в Squid
- •11.20 Отладка Squid
- •11.21 Fatal: ipcache_init: dns name lookup tests failed
- •11.22 Fatal: Failed to make swap directory /var/spool/cache: (13) Permission denied
- •11.23 Fatal: Cannot open http Port
- •11.24 Fatal: All redirectors have exited!
- •11.25 Fatal: file_map_allocate: Exceeded filemap limit
- •11.26 Fatal: You've run out of swap file numbers.
- •11.27 I am using up over 95% of the filemap bits?!!
- •11.28 Fatal: Cannot open /usr/local/squid/logs/access.Log: (13) Permission denied
- •11.29 Когда я использую имя пользователя и пароль, я не имею доступа к некоторым файлам.
- •11.30 PingerOpen: icmp_sock: (13) Permission denied
- •11.31 Что такое петля передачи ?
- •11.32 Accept failure: (71) Protocol error
- •11.33 StoreSwapInFileOpened: ... Size mismatch
- •11.34 Почему я получаю fwdDispatch: Cannot retrieve 'https://www.Buy.Com/corp/ordertracking.Asp' ?
- •11.35 Squid не может получить url-ы типа http://3626046468/ab2/cybercards/moreinfo.Html
- •11.36 Я получаю большое количество ошибок типа ``uri has whitespace'' в моем cache.Log, что я должен делать ?
- •11.37 CommBind: Cannot bind socket fd 5 to 127.0.0.1:0: (49) Can't assign requested address
- •11.38 Unknown cache_dir type '/var/squid/cache'
- •11.39 Unrecognized: 'cache_dns_program /usr/local/squid/bin/dnsserver'
- •11.40 Is dns_defnames broken in 2.3.Stable1 and stable2?
- •11.41 What does sslReadClient: fd 14: read failure: (104) Connection reset by peer mean?
- •11.42 Что значит Connection refused?
- •11.43 Squid: error: no running copy
- •11.44 Fatal: getgrnam failed to find groupid for effective group 'nogroup'
- •11.45 ``Unsupported Request Method and Protocol'' for https urLs.
- •11.46 Squid использует 100% cpu
- •11.47 Webmin's cachemgr.Cgi убивает операционную систему
- •11.48 Segment Violation во время запуска или при первом запросе
- •11.49 UrlParse: Illegal character in hostname 'proxy.Mydomain.Com:8080proxy.Mydomain.Com'
- •11.50 Не работают запросы для инетрнациональных доменных имен
- •11.51 Почему иногда я получаю ``Zero Sized Reply''?
- •12. Как работает Squid?
- •12.1 Что такое кешируемые объекты?
- •12.2 Что такое пмс протокол?
- •12.3 Что такое dnsserver ?
- •12.4 Для чего предназначена программа ftpget ?
- •12,5 Ftp put не работает!
- •12.6 Что такое иерархии кэш-памяти? Какие родители, братья и сестры?
- •12.7 Что такое разрешение кеш алгоритм?
- •12,8 Над какими новыми возможностями сейчас работают разработчики Squid?
- •12,9 Расскажите подробнее о рабочих нагрузок интернет-трафика
- •12.10 Каковы компромиссы кэширования с системой кэш nlanr?
- •12.11 Где мне найти больше информации о файервол?
- •12.12 Что такое `` хранения lru истечения Возраст?''
- •12.13 Что такое `` Отказ побед на 1,01; Войдя в хит-Only-режиме в течение 5 минут''?
- •12.14 Перечитывает ли кальмар периодически свой файл конфигурации?
- •12.15 Как unlinkd работу?
- •12.16 Что такое икона url?
- •12.17 Как мне заставить моих обычных ftp-клиентов и спользовать Squid?
- •12.18 Почему Выберите время средние петли так высоко?
- •12.19 Как Squid дело с печеньем?
- •12.20 Как Squid решает, когда, чтобы обновить в кэше объект?
- •12.21 Что такое отложенное чтение ?
- •12.22 Почему входящий трафик моего кэша равным исходящий трафик?
- •12.23 Почему некоторые предметы не попали кэшировать?
- •12.24 Что поддержания активности соотношение означает?
- •12.25 Как работает кэш Squid-алгоритм замены работы?
- •12.26 Какие закрытых и открытых ключей?
- •12.27 Для чего нужна forw_via_db?
- •12.28 Посылает ли Squid пакеты порту 7 (эхо)? Если да, то почему?
- •12.29 Что значит `` предупреждение: Ответ от неизвестных имен [abcd]''?
- •12.30 Как Squid распространения кэш-файлов среди доступных каталогах?
- •12.31 Почему я вижу отрицательную Процент попадания байт?
- •12.32 Что означает сообщение `` Отключение использования закрытых ключей'' означает?
- •12.33 Что такое наполовину закрытый файловый дескриптор?
- •12.34 Что делает - Enable-кучи замену?
- •12.35 Почему действительный размер используемый размер файловой ситсемы больше, чем считает Squid?
- •12.36 Как работают positive_dns_ttl и negative_dns_ttl ?
- •12.37 Что значит swapin md5 несоответствие ?
- •12.38 Что означает не удалось распаковать файл подкачки данных мета ?
- •12.39 Почему не сделать Squid Ident поиска в режиме перехвата?
- •12.40 DnsSubmit: перегрузки очереди, отвергая бла
- •12.41 Что такое пассивные ftp-соединения?
- •13. Multicast
- •13.1 Что такое Multicast?
- •13.2 Как я могу знать, если я нахожусь на Mbone?
- •13.3 Мне следует использовать Multicast пмс?
- •13.4 Как мне настроить Squid для отправки Multicast icp запросы?
- •13.5 Как я знаю, что Multicast ttl использовать?
- •13.6 Как мне настроить Squid, чтобы получать и отвечать на Multicast пмс?
- •14. Системно-зависимые сверхестественности :)
- •14.1 Solaris
- •14.2 FreeBsd
- •14.5 Linux
- •14.7 Irix
- •15. Редиректоры
- •15.1 Что такое редиректор?
- •15.2 Почему используют редиректор?
- •15.3 Как это работает?
- •15.4 А примеры имеются ?
- •15.5 Can I use the redirector to return http redirect messages?
- •15.6 Fatal: All redirectors have exited!
- •15.7 Редиректор не срабатывает при повторной отработке ident
- •16. Кэш Сборники
- •16.1 Что такое кэш дайджест?
- •16.2 Как и почему они используются?
- •16.3 Что такое теория за кэш дайджесты?
- •16.4 Как размер кэша дайджест на Squid определяется?
- •16.5 Что хэш-функции (и сколько их) а Squid использовать?
- •16.6 Как объекты добавляются в кэш дайджест на Squid?
- •16,7 Ли Squid поддержки делеции в кэш дайджесты? Каковы различий / дельт?
- •16,8 Когда и как часто местные дайджест построили?
- •16.9 Как Кэш Дайджесты передаваться между сверстниками?
- •16.10 Как и где хранится кэш дайджесты?
- •16.11 Как Кэш Дайджест статистики в Cache Manager следует интерпретировать?
- •16.12 Какие ложные значения и как они должны быть обработаны?
- •16.13 Как Кэш Дайджест деятельности, связанной прослеживается / отлажена?
- •16.14 А как насчет пмс?
- •16.15 Есть ли Спецификация Cache Digest?
- •16.16 Можно ли будет шататься моменты времени, когда cache_digests извлекаются из сверстников?
- •17. Прозрачное кеширование/проксирование
- •17.1 Прозрачное кеширование для Solaris, SunOs, и bsd систем
- •17.2 Прозрачное кеширование на Linux 2.0 и ipfwadm
- •Этот метод поддерживает только протокол http, gopher и ftp не поддерживаются
- •17.3 Прозрачное кеширование на Linux 2.2 и ipchains
- •17.4 Прозрачное кеширование на Linux 2.4 и netfilter
- •17.5 Прозрачное кеширование и маршуртизаторы Cisco
- •17.6 Прозрачное кеширование на linux 2.0.29 и cisco ios 11.1
- •17.7 Кеш пытается соединится сам с собой ...
- •17.8 Прозрачное кеширование с FreeBsd
- •17.9 Прозрачное кеширование с сервером доступа acc Tigris digital
- •17.10 ``Connection reset by peer'' и Cisco policy routing
- •17.11 Wccp - Web Cache Coordination Protocol
- •Ios Version 11.X
- •Ios Version 12.X
- •17.13 А как насчет wccPv2?
- •17.14 Прозрачное проксирование с свитчами Foundry l4
- •18.3 Конфигурирование Squid 2.2
- •18.4 Конфигурирование Squid 2.1
- •18.5 Как я могу опрашивать Squid snmp Agent
- •18.6 Для чего я могу использовать snmp и Squid?
- •18.7 Как я могу использовать snmp со Squid?
- •18.8 Где я могу найти больше информации о Squid и snmp?
- •18.9 Мониторинг Squid при помощи mrtg
- •19. Squid версии 2
- •19.1 Какие новые возможности?
- •19.2 Как мне теперь настроить 'ssl_proxy'?
- •19.3 Logfile rotation doesn't work with Async I/o
- •19.4 Добавление нового диска для кеша
- •19.5 Squid 2 performs badly on Linux
- •19.6 Как мне настроить proxy authentication в Squid-2?
- •19.7 Почему proxy-auth отвергает всех пользователей в Squid-2.2?
- •19.8 Delay Pools
- •19.9 Могу ли я сохранить мой кеш при обновлении с версии 1.1 до 2?
- •19.10 Пользовательские сообщения о ошибках
- •19.11 Мой squid.Conf от версии 1.1 не работает!
- •20. Режим httpd-акселератора
- •20.1 Что такое режим httpd-акселератора?
- •20.2 Как мне это установить ?
- •20.3 Когда используется httpd-aкселератор, номер порта для редиректа неверен
- •21.5 Сервера идентификации
- •22. Diskd
- •22.1 Что такое diskd?
- •22.7 Как мне настроить распределенную память?
- •22.8 Иногда распределенная память и очереди сообщений не освобождаются, когда Squid завершает работу.
- •22.9 Что за параметры q1 и q2?
- •23. Аутентификация
- •23.1 Как в Squid работает прокси-аутентификация ?
- •23.2 Как мне использовать аутентификацию для контроля доступа?
- •23.3 Кеширует ли Squid запросы аутентификации?
- •23.4 А пароли передаются открытым текстом или шифруются?
- •23.5 Могу ли я использовать Winbind аутентификацию ?
- •24. Термины и определения
- •24.1 Сосед (Neighbor)
- •24.2 Регулярные выражения
- •25. Беспокойство о безопасности
- •25.1 Прокси открытого доступа
- •25.2 Релай почты
10.8 Типичные ошибки
Логическое И/ИЛИ
Вы возможно уже заметили (и были разочарованы), что фактически вы не можете комбинировать контроли доступа при помощи конструкций ``и'', ``или.'' Эти операции уже встроены в схему контроля доступа, это одна из основополагающих вещей, которую вы должны усвоить.
Все элементы, указанные в данном acl объединяются при помощи логического "ИЛИ".
Все элементы, указанные в access объединяются при помощи логического "И". т.к. http_access and icp_access.
К примеру, следующая конфигурация контроля доступа никогда не будет работать:
acl ME src 10.0.0.1
acl YOU src 10.0.0.2
http_access allow ME YOU
Для того, чтобы запрос был разрешен, он должен совпасть и с acl ``ME'' И acl ``YOU''. Это невозможно, т.к. IP-адрес в данном случаю может совпасть либо с одним, либо с другим acl. Это должно быть заменено на:
acl ME src 10.0.0.1
acl YOU src 10.0.0.2
http_access allow ME
http_access allow YOU
Такая конструкция тоже должна работать:
acl US src 10.0.0.1 10.0.0.2
http_access allow US
перепутанные allow/deny
Я перечитал несколько раз мой squid.conf, поговорил с коллегами, почитал FAQ и документацию по Squid Docs и никак не могу понять, почему следующее не работает.
Я успешно подключаюсь к cachemgr.cgi с нашего web-сервера, но хотелось бы использовать MRTG для мониторинга различных параметров нашего прокси. Когда я пытаюсь использовать 'client' или GET cache_object с машины, на которой работает прокси, то всегда получаю "доступ запрещен".
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl server src 1.2.3.4/255.255.255.255
acl all src 0.0.0.0/0.0.0.0
acl ourhosts src 1.2.0.0/255.255.0.0
http_access deny manager !localhost !server
http_access allow ourhosts
http_access deny all
Приведенная здесь задача состоит в том, чтобы разрешить запросы кеш-менеджера с адресов localhost и server и запретить все остальные. Такая политика описывалась правилом:
http_access deny manager !localhost !server
Проблема состоит в разрешении запроса, правило доступа не срабатывает. К примеру, если IP-адрес источника localhost, тогда ``!localhost'' - ложь и правило доступа не срабатывает, Squid продолжает проверять другие правила. Запросы к кеш-менеджеру с адреса server работают, т.к. server находится в подсети ourhosts, сработает второе правило и запрос будет разрешен. Это значит также, что любой запрос кеш-менеджера из ourhosts будет разрешен.
Чтобы необходимая политика работала корректно, правила доступа должны быть переписаны следующм образом
http_access allow manager localhost
http_access allow manager server
http_access deny manager
http_access allow ourhosts
http_access deny all
Если вы используете miss_access, не забывайте также добавить правило miss_access для кеш-менеджера:
miss_access allow manager
Вы можете быть обеспокоены тем, что пять правил взамен трех могут нанести удар по качеству работы кеша. Исходя и нашего опыта, можно сказать, что этого не произойдет. Squid в состоянии поддерживать достаточное количество проверок контроля доступа без снижения качества работы. Можете проверить это самостоятельно.
Различия между src и srcdomain типами ACL.
Для типа ACL srcdomain Squid делает обратное преобразование клиентского IP-адреса и проверяет соответствие результата домену, описанному в строке acl. Для типа ACL src Squid вначале преобразует имя хоста в IP-адрес и только потом сравнивает с клиентским IP. Тип ACL src предпочтительнее, чем srcdomain, т.к. он не требует преобразования адреса в имя при каждом запросе.