Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
squid.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
1.45 Mб
Скачать

22.9 Что за параметры q1 и q2?

В исходном коде это называется magic1 и magic2. Эти числа отвечают за количество необработанных запросов в очереди сообщений. Они указываются в строке cache_dir после директорий L1 и L2 :

cache_dir diskd /cache1 1024 16 256 Q1=72 Q2=64

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

Если не обработано более чем Q2 сообщений, то главный процесс Squid ``блокируется'' ненадолго, пока процесс diskd обслуживает некоторые сообщения и посылает некоторые ответы.

Q1 должно быть больше чем Q2, если вы хотите, чтобы Squid достигал состояния ``блокирования'' прежде, чем он получит ``отказ в открытии файла''.

Разумные значения для Q1 и Q2 - 72 and 64 соответсвенно.

23. Аутентификация

23.1 Как в Squid работает прокси-аутентификация ?

Замечание: Представленая здесь информация верна для версии 2.4.

Пользователи будут аутентифицироваться, если squid настроен на использование ACL типа proxy_auth (см. след. вопрос).

Броузер посылает пользовательский запрос на аутентификацию в загловке Authorization.

Если Squid получает запрос и если список правил http_access содержит ACL типа proxy_auth, Squid ищет загловок Authorization. Если заголовок присутствует, Squid декодирует его и извлекает имя пользователя и пароль.

Если заголовок отсутствует, Squid возвращает HTTP-ответ со статусом 407 (Proxy Authentication Required). Пользовательский агент (броузер) получает ответ 407 и просит пользователя ввести имя и пароль. Имя и пароль кодируется и посылается в заголовке Authorization для последующих запросов к прокси.

ЗАМЕЧАНИЕ: Имя и пароль кодируются с использованием ``base64'' (см. раздел 11.1 RFC 2616). Однако base64 это только кодирование binary-to-text, при кодировании информация НЕ шифруется. Это означает, что имя пользователя и пароль фактически передаются ``открытым текстом'' между броузером и прокси. Поэтому вы не должны использовать тот же пароль и имя пользователя, который вы используете для вашего аккаунта.

Аутентификация фактически происходит вне основного процесса Squid. Когда Squid стартует, он запускаеть несколько процессов аутентификации. Эти процессы читают имена пользователей и пароли со стандартного ввода и выдают "OK" или "ERR" на стандартный вывод. Подобная техника позволяет вам использовать большое количество различных схем аутентификации, однако вы можете использовать только одну схему в данный момент времени.

Исходный код Squid идет с несколькими типами процессов аутентификации. Включая:

  • LDAP: использует Lightweight Directory Access Protocol

  • NCSA: использует NCSA-стиль для файла имен пользователей и паролей.

  • MSNT: использует Windows NT authentication domain.

  • PAM: использует Linux Pluggable Authentication Modules scheme.

  • SMB: использует SMB-север типа Windows NT или Samba.

  • getpwam: использует старомодный файл паролей old-fashioned Unix.

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

Вы указываете Squid, какую программу аутентификации использовать при помощи опции authenticate_program в squid.conf. Вы указываете имя программы плюс опции командной строки если необходимо.К примеру:

authenticate_program /usr/local/squid/bin/ncsa_auth /usr/local/squid/etc/passwd

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]