Чтение онлайн

на главную - закладки

Жанры

Linux: Полное руководство

Аллен Питер В.

Шрифт:

Прокси-сервер SQUID образуют несколько программ, в числе которых сам демон squid, а также программа dnsserver — программа обработки DNS-запросов. Когда запускается squid, то сначала он запускает заданное количество процессов dnsserver, каждый из которых работает самостоятельно и может осуществлять только один поиск в системе DNS. За счет этого уменьшается общее время ожидания ответа DNS.

18.2. Установка SQUID

Я использую версию squid 2.5. Пакет squid входит в состав современных дистрибутивов, а если его у вас почему-то нет, то скачать можно с

www.squid-cache.org
.

При

сборке SQUID из исходных кодов первым шагом должна быть команда

# ./configure --prefix=/usr/local/squid

SQUID будет установлен в каталог, заданный ключом prefix. Другие ключи сценария configure перечислены в таблице 18.1.

Ключи сценария configure Таблица 18.1

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

18.3. Настройка SQUID

Сервер SQUID использует файл конфигурации

squid.conf
, который обычно располагается в каталоге
/etc/squid
(или
/usr/local/squid/etc
— более ранние версии). Подробнее на отдельных настройках мы остановимся чуть позже. А сейчас просто по шагам произведем настройку SQUID. Отредактируйте в этом файле следующие строки.

Укажите прокси-провайдера (тот сервер, который станет вашим «соседом» (neighbour, peer)):

cache_peer proxy.isp.ru

Установите объем памяти, разрешенный для кэша squid, в байтах, и каталог для дискового кэша:

cache_mem 65536

cache_dir ufs /usr/local/squid/cache 1024 16 256

где 1024 — количество мегабайтов, отводимое под кэш в указанном каталоге. В этом каталоге будут храниться кэшированные файлы. Стоит ли говорить, что если у вас несколько жестких дисков, то кэш нужно разместить на самом быстром из них.

Укажите узлы, которым разрешен доступ к прокси-серверу:

acl allowed_hosts src 192.168.1.0/255.255.255.0

acl localhost src 127.0.0.1/255.255.255.255

Укажите разрешенные SSL-порты:

acl SSL_ports port 443 563

Запретите метод CONNECT для всех портов, кроме указанных в acl SSL_ports:

http_access deny CONNECT !SSL_ports

Запретите доступ всем, кроме тех, кому можно:

http_access allow localhost

http_access allow allowed_hosts

http_access allow SSL_ports http_access deny all

Пропишите пользователей, которым разрешено пользоваться SQUID (в рассматриваемом примере это den, admin и developer):

ident_lookup on

acl allowed_users user den admin developer

http_access allow allowed_users

http_access deny all

Тэги maximum_object_size

и maximum_object устанавливают ограничения на размер передаваемых объектов.

Ниже приведен пример запрета доступа к любому URL, который соответствует шаблону games, и разрешения доступа ко всем остальным:

acl GaMS url_regex games

http_access deny GaMS

http_access allow all

18.4. Запуск SQUID

Первый раз squid нужно запускать с ключом -z, чтобы создать и очистить каталог кэша:

# /usr/local/squid/bin/squid -z

Еще несколько полезных ключей, с которыми можно запускать squid, перечислены в таблице 18.2.

Ключи запуска squid Таблица 18.2

Ключ Назначение
– а порт Задает альтернативный порт для входящих HTTP-запросов
– d Включает ражим вывода отладочной информации в стандартный поток ошибок
– f файл Задает альтернативный файл конфигурации, который должен будет использоваться вместо стандартного squid.conf
– h Выдает справочную информацию
– k reconfigure Посылает сигнал HUP, что приводит к тому, что SQUID заново прочитает свой конфигурационный файл
– k shutdown Завершение работы прокси-сервера. При этом он подождет, пока будут завершены все соединения
– k interrupt Немедленно завершить работу прокси-сервера, без ожидания завершения соединений
– k kill Завершение без закрытия журналов
– u порт Задает альтернативный порт для входящих ICP-запросов
– s Включает журналирование с помощью syslog
– v Выдает информацию о версии SQUID
– z Очищает каталог кэша
– D Запрещает DNS-тест при запуске
– N Запрещает становиться демоном (фоновым процессом)
– Y Более быстрое восстановление после сбоев

18.5. Расширенные настройки SQUID. Конфигурационный файл squid.conf

18.5.1. Параметры сети

В файле squid.conf могут быть заданы следующие параметры сети:

♦ http_port — порт для запросов клиентов. С этого порта прокси-сервер будет ожидать и обрабатывать запросы клиентов. Значение по умолчанию равно 3128;

♦ icp_port — порт для общения с соседями через ICP. Если «соседей» (peer) нет, то установите icp_port 0. По умолчанию используется значение 3130. При использовании этого параметра нужно установить ключ --enable-htcp для директивы htcp_port 4827;

Поделиться:
Популярные книги

Неудержимый. Книга VIII

Боярский Андрей
8. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
6.00
рейтинг книги
Неудержимый. Книга VIII

Законы Рода. Том 6

Flow Ascold
6. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 6

Восход. Солнцев. Книга I

Скабер Артемий
1. Голос Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Восход. Солнцев. Книга I

Попаданка

Ахминеева Нина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Попаданка

Возлюби болезнь свою

Синельников Валерий Владимирович
Научно-образовательная:
психология
7.71
рейтинг книги
Возлюби болезнь свою

Кодекс Крови. Книга III

Борзых М.
3. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга III

Ротмистр Гордеев 2

Дашко Дмитрий
2. Ротмистр Гордеев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Ротмистр Гордеев 2

Идеальный мир для Лекаря 5

Сапфир Олег
5. Лекарь
Фантастика:
фэнтези
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 5

Адвокат Империи 3

Карелин Сергей Витальевич
3. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Адвокат Империи 3

Жребий некроманта 3

Решетов Евгений Валерьевич
3. Жребий некроманта
Фантастика:
боевая фантастика
5.56
рейтинг книги
Жребий некроманта 3

Город драконов

Звездная Елена
1. Город драконов
Фантастика:
фэнтези
6.80
рейтинг книги
Город драконов

Убивать, чтобы жить

Бор Жорж
1. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать, чтобы жить

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Беглец

Бубела Олег Николаевич
1. Совсем не герой
Фантастика:
фэнтези
попаданцы
8.94
рейтинг книги
Беглец