LINUX-сервер пошаговые инструкции инсталляции и настройки - Бруй В. В. , Карлов С. В
..pdfГлава 24. Кэширующий прокси-сервер Squid |
|
321 |
Интернет |
|
|
Роутер |
|
|
Шлюз |
|
|
|
eth0 IP 212.45.28.122 |
|
|
eth1 IP 192.168.1.0 |
|
|
Локальная сеть |
|
Концентратор |
192.168.1.0/24 |
|
|
|
Рис. 24.1. Типовой вариант сопряжения прокси-сервера с локальной сетью и Интернет
322 |
Часть 6. Программное обеспечение для организации шлюза |
|
no_cache deny QUERY |
|
#Определите объем памяти, выделяемый под кэширование In-Transit objects, |
#Hot Objects,Negative-Cached objects (примерно 1/3 от общего объема #опе-
ративной памяти). Оптимальное значение для системы с памятью
#512 МБайт –170. cache_mem 170 MB
#Определите политику очистки кэша cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
#Определите формат представления данных в кэше (DISKD), каталог,
#в котором он размещается (/var/spool/squid), объем дискового пространства #(1250 МБайт), количество подкаталогов первого и второго уровня в
#каталоге /var/spool/squid.
cache_dir diskd /var/spool/squid 1250 16 256
#Запретите создание файла, в котором регистрируется удаление и помещение
#объектов в кэш. Авторам не известны утилиты, предназначенные для обработки
#информации, содержащейся в этих файлах.
cache_store_log none
#Разрешите запись в файлы регистрации доменных имен вместо IP-адресов.
#Использование этой возможности облегчает анализ файлов регистрации,
#но снижает производительность шлюза.
log_fqdn on
#Разрешите создание файлов регистрации SQUID в формате Apache.
#Анализ этих файлов возможен с помощью стандартных утилит, предназначенных
#для анализа файлов регистрации Apache, например Webalizer.
emulate_httpd_log on
#Определите элементы списков контроля доступа (ACL elements)
#Определите имя элемента ACL и параметры для локальной сети. acl localnet src 192.168.1.0/255.255.255.0
#Определите имя элемента ACL и параметры локального хоста.
acl localhost src 127.0.0.1/255.255.255.255
#Определите имена элементов ACL и номера SSL и безопасных портов. acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535 280 488 591 777
#Определите имя элемента ACL для метода CONNECT.
acl CONNECT method CONNECT
#Определите имя элемента ACL для метода PURGE(очистка кэша).
acl all src 0.0.0.0/0.0.0.0
#Создайте Access List(правила доступа для всех элементов ACL).
#Squid воспринимает правила в том порядке, в котором они встречаются в
#/etc/squid/squid.conf.
#Разрешите доступ пользователей из локальной сети и с локальной системы http_access allow localnet
http_access allow localhost
#Разрешите очистку кэша с локальной системы
http_access allow PURGE localhost
#Запретите обращение к небезопасным портам
http_access deny !Safe_ports
#Запретите обращение к портам, неиспользуемым SSL, с помощью метода
#CONNECT
http_access deny CONNECT !SSL_ports
#Запретите метод CONNECT
http_access deny CONNECT
#Запретите очистку кэша со всех систем
http_access deny PURGE
#Запретите доступ для всех хостов
http_access deny all
#Укажите e-mail администратора cache_mgr admin@domain.ru
#Эти опции повышают безопасность системы за счет запуска #Squid от имени пользователя squid группы squid
Глава 24. Кэширующий прокси-сервер Squid |
323 |
|
cache_effective_user squid |
|
|
cache_effective_group squid |
|
|
logfile_rotate 0 |
с другими прокси-серверами |
|
#Запретите обмен |
|
|
log_icp_queries off |
|
|
#Задайте пароль, |
используемый утилитой администрирования прокси-сервера |
|
#cachemgr через Web-интерфейс (если вы собираетесь ее использовать). |
|
|
#cachemgr_passwd |
$ecretnoe_Sl0vo all |
|
#Включите поддержку ускорения записи файлов регистрации |
|
buffered_logs on
При поступлении запроса на доступ в Интернет последовательно проверяются правила, указанные в ACL. Если условие, указанное в правиле вида "http_access allow …" выполняется, доступ разрешается и дальнейший просмотр правил прекращается. Если условие не выполняется, осуществляется переход к проверке условий, определяемых следующим правилом. Если условие, указанное в правиле вида "http_access deny …" выполняется, доступ запрещается, и дальнейший просмотр правил прекращается. Если условие не выполняется, осуществляется переход к проверке следующего правила.
В рассматриваемом примере при получении запроса от клиента в локальной сети на установление соединения с Web-сервером в Интернет в соответствии с первым правилом, указанным в ACL – http_access allow localnet – доступ разрешается. При получении запроса от клиента с консоли шлюза на установление соединения с Web-сервером в Интернет в соответствии с первым правилом в ACL доступ не разрешается и осуществляется переход к проверке выполнения условий второго правила. В соответствии с ним доступ в Интернет разрешается.
Работа различных клиентов в локальной сети может инициировать обращение к «безопасным» портам шлюза. При возникновении таких обращений в соответствии с первым и вторым правилом доступ не разрешается и осуществляется переход к проверке выполнения условий сначала третьего, а затем четвертого правила. В соответствии с одним из этих правил, доступ разрешается, причем к портам 443 и 563 даже с помощью метода CONNECT. При получении запроса на очистку кэша со шлюза (использования метода PURGE) в соответствии с правилами 1…4 доступ будет запрещен, и осуществляется переход к проверке выполнения условий пятого правила http_access allow PURGE localhost, в соответствии с которым доступ будет разрешен.
Шестое, седьмое и восьмое правило служат для реализации запрета всех остальных возможных соединений. Например, при попытке установления соединения с 22 портом, будут просмотрены первое, второе, третье и четвертое правила. При этом первое, второе и третье правила не дадут разрешения на установку соединения, а при проверке выполнения условий пятого правила соединение будет запрещено, а проверка выполнения условий правил прекращена.
ЗАМЕЧАНИЕ При написании правил в ACL важно учитывать не только их содержание, но и последовательность.
Если вы хотите, чтобы пользователи перед получением доступа в Интернет проходили аутентификацию, файл /etc/squid/squid.conf необходимо отредактировать в соответствии со следующими рекомендациями:
#Установите номер порта, на котором Squid ожидает запросы HTTP-клиентов.
#Значение по умолчанию 3128
http_port 3128
#Обеспечьте корректную работу Squid c браузерами, некорректно
#поддерживающими SSL
ssl_unclean_shutdown on
#Установите номер порта, на котором Squid принимает и получает запросы
#с других прокси-серверов. Установив значение порта, равное 0, вы повысите #производительность вашей системы
icp_port 0
#Установите запрет кэширования некоторого типа объектов.
#В данном случае – файлов, находящихся в каталоге cgi-bin. acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#Определите объем памяти, выделяемый под кэширование In-Transit objects, #Hot Objects,Negative-Cached objects (примерно 1/3 от общего объема #опе-
ративной памяти). Оптимальное значение для системы с памятью
#512 МБайт –170. cache_mem 170 MB
#Определите политику очистки кэша
324 Часть 6. Программное обеспечение для организации шлюза
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
#Определите формат представления данных в кэше (DISKD), каталог,
#в котором он размещается (/var/spool/squid), объем дискового пространства #(1250 МБайт), количество подкаталогов первого и второго уровня в
#каталоге /var/spool/squid.
cache_dir diskd /var/spool/squid 1250 16 256
#Запретите создание файла, в котором регистрируется удаление и помещение
#объектов в кэш. Авторам неизвестны утилиты, предназначенные для обработки
#информации, содержащейся в этих файлах.
cache_store_log none
#Разрешите запись в файлы регистрации доменных имен вместо IP-адресов.
#Использование этой возможности облегчает анализ файлов регистрации,
#но снижает производительность шлюза.
log_fqdn on
#Разрешите создание файлов регистрации SQUID в формате Apache.
#Анализ этих файлов возможен с помощью стандартных утилит, предназначенных
#для анализа файлов регистрации Apache, например Webalizer.
emulate_httpd_log on
#Определите параметры аутентификации пользователей.
#Пример - базовая схема с использованием стандартных модулей PAM. auth_param basic program /usr/lib/squid/pam_auth
auth_param basic children 5
auth_param basic realm Squid Proxy-Caching Web Server
auth_param basic credentialsttl 2 hours
#Определите элементы списков контроля доступа (ACL elements).
#Определите имя элемента ACL, определяющего список пользователей,
#которые должны проходить аутентификацию при обращении к SQUID. #REQUIRED – любое допустимое имя пользователя.
acl usera proxy_auth REQUIRED
#Определите имя элемента ACL и параметры для локальной сети.
acl localnet src 192.168.1.0/255.255.255.0
#Определите имя элемента ACL и параметры локального хоста.
acl localhost src 127.0.0.1/255.255.255.255
#Определите имена элементов ACL и номера SSL и безопасных портов. acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535 280 488 591 777
#Определите имя элемента ACL для метода CONNECT.
acl CONNECT method CONNECT
#Определите имя элемента ACL и IP-адрес, к которому разрешен
#доступ без аутентификации пользователей.
#Определите имя элемента ACL для метода PURGE.
acl PURGE method PURGE
#Определите имя элемента ACL для Интернет.
acl all src 0.0.0.0/0.0.0.0
#Создайте Access List(правила доступа для всех элементов ACL).
#Squid воспринимает правила в том порядке, в котором они встречаются в
#/etc/squid/squid.conf.
#Разрешите доступ пользователей только с аутентификацией.
http_access allow usera
Разрешите доступ пользователей из локальной сети и с локальной системы http_access allow localnet
http_access allow localhost
#Разрешите очистку кэша с локальной системы
http_access allow PURGE localhost
#Запретите обращение к небезопасным портам
http_access deny !Safe_ports
#Запретите обращение к портам, неиспользуемым SSL с помощью
#метода CONNECT
http_access deny CONNECT !SSL_ports
#Запретите метод CONNECT
Глава 24. Кэширующий прокси-сервер Squid |
325 |
|
http_access deny |
CONNECT |
|
#Запретите очистку кэша со всех систем |
|
|
http_access deny |
PURGE |
|
#Запретите доступ для всех хостов |
|
|
http_access deny |
all |
|
#Укажите e-mail администратора |
|
|
cache_mgr admin@domain.ru |
|
|
#Эти опции повышают безопасность системы за счет запуска |
|
|
#Squid от имени пользователя squid группы squid |
|
|
cache_effective_user squid |
|
|
cache_effective_group squid |
|
|
logfile_rotate 0 |
с другими прокси-серверами |
|
#Запретите обмен |
|
|
log_icp_queries off |
|
|
#Задайте пароль, |
используемый утилитой администрирования прокси-сервера |
|
#cachemgr через Web-интерфейс (если вы собираетесь ее использовать). |
|
|
#cachemgr_passwd |
$ecretnoe_Sl0vo all |
|
#Включите поддержку ускорения записи файлов регистрации |
|
buffered_logs on
В некоторых случаях бывает необходимо ограничить перечень Web-ресурсов, доступ к которым могут иметь пользователи локальной сети. Аутентификация пользователей при этом не требуется. Ниже приведен пример конфигурационного файла /etc/squid/squid.conf, разрешающий всем пользователям локальной сети доступ только к серверам http://www.rian.ru, http://www.interfax.ru и http://www.finmarket.ru без аутентификации пользователей:
#Установите номер порта, на котором Squid ожидает запросы HTTP-клиентов.
#Значение по умолчанию 3128 http_port 3128
#Обеспечьте корректную работу Squid c браузерами, некорректно
#поддерживающими SSL
ssl_unclean_shutdown on
#Установите номер порта, на котором Squid принимает и получает запросы
#с других прокси-серверов. Установив значение порта, равное 0, вы повысите #производительность вашей системы.
icp_port 0
#Установите запрет кэширования некоторого типа объектов.
#В данном случае – файлов, находящихся в каталоге cgi-bin. acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#Определите объем памяти, выделяемый под кэширование In-Transit objects, #Hot Objects,Negative-Cached objects (примерно 1/3 от общего объема #опе-
ративной памяти). Оптимальное значение для системы с памятью
#512 МБайт –170.
cache_mem 170 MB
#Определите политику очистки кэша. cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
#Определите формат представления данных в кэше (DISKD), каталог,
#в котором он размещается (/var/spool/squid), объем дискового пространства #(1250 МБайт), количество подкаталогов первого и второго уровня в
#каталоге /var/spool/squid.
cache_dir diskd /var/spool/squid 1250 16 256
#Запретите создание файла, в котором регистрируется удаление и помещение
#объектов в кэш. Авторам не известны утилиты, предназначенные для обработки
#информации, содержащейся в этих файлах.
cache_store_log none
#Разрешите запись в файлы регистрации доменных имен вместо IP-адресов.
#Использование этой возможности облегчает анализ файлов регистрации,
#но снижает производительность шлюза.
log_fqdn on
#Разрешите создание файлов регистрации SQUID в формате Apache.
326 |
Часть 6. Программное обеспечение для организации шлюза |
#Анализ этих файлов возможен с помощью стандартных утилит, предназначенных
#для анализа файлов регистрации Apache, например Webalizer.
emulate_httpd_log on
#Определите элементы списков контроля доступа (ACL elements).
#Определите имя элемента ACL и параметры для локальной сети. acl localnet src 192.168.1.0/255.255.255.0
#Определите имя элемента ACL и параметры локального хоста.
acl localhost src 127.0.0.1/255.255.255.255
#Определите имена элементов ACL и номера SSL и безопасных портов. acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535 280 488 591 777
#Определите имя элемента ACL для метода CONNECT.
acl CONNECT method CONNECT
#Определите имя элемента ACL для метода PURGE(очистка кэша).
acl PURGE method PURGE
#Определите имя элемента ACL для Интернет.
acl all src 0.0.0.0/0.0.0.0
#Определите имя элемента ACL остальных Web-ресурсов.
acl WWW dst 0.0.0.0/0.0.0.0
#Определите имя элементов ACL для серверов, к которым разрешен доступ acl www_rian_ru 195.230.73.54
acl www_interfax_ru 212.69.102.3
acl www_finmarket_ru 195.151.92.50
#Создайте Access List(правила доступа для всех элементов ACL). #Squid воспринимает правила в том порядке в котором они встречаются
#/etc/squid/squid.conf.
#Разрешите доступ пользователей с локальной системы
http_access allow localhost
#Разрешите доступ к трем серверам. http_access allow www_rian_ru http_access allow www_interfax_ru
http_access allow www_finmarket_ru
#Разрешите очистку кэша с локальной системы.
http_access allow PURGE localhost
#Запретите обращение к небезопасным портам.
http_access deny !Safe_ports
#Запретите обращение к портам, неиспользуемым SSL.
http_access deny CONNECT !SSL_ports
#Запретите метод CONNECT.
http_access deny CONNECT
#Запретите очистку кэша со всех систем.
http_access deny PURGE
#Запретите обращение к остальным Web-ресурсам.
http_access deny WWW
#Запретите доступ для всех хостов.
http_access deny all
#Укажите e-mail администратора. cache_mgr admin@domain.ru
#Эти опции повышают безопасность системы за счет запуска #Squid от имени пользователя squid группы squid.
cache_effective_user squid cache_effective_group squid
logfile_rotate 0
#Запретите обмен с другими прокси-серверами.
log_icp_queries off
#Задайте пароль, используемый утилитой администрирования прокси-сервера. #cachemgr через Web-интерфейс (если вы собираетесь ее использовать).
#cachemgr_passwd $ecretnoe_Sl0vo all
#Включите поддержку ускорения записи файлов регистрации buffered_logs on
Возможность ограничения доступа в Интернет по времени иллюстрируется следующим примером конфигурационного файла /etc/squid/squid.conf:
Глава 24. Кэширующий прокси-сервер Squid |
327 |
#Установите номер порта, на котором Squid ожидает запросы HTTP-клиентов.
#Значение по умолчанию 3128
http_port 3128
#Обеспечьте корректную работу Squid c браузерами, некорректно
#поддерживающими SSL.
ssl_unclean_shutdown on
#Установите номер порта, на котором Squid принимает и получает запросы
#с других прокси-серверов. Установив значение порта, равное 0, вы повысите #производительность вашей системы.
icp_port 0
#Установите запрет кэширования некоторого типа объектов.
#В данном случае – файлов, находящихся в каталоге cgi-bin. acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#Определите объем памяти, выделяемый под кэширование In-Transit objects, #Hot Objects,Negative-Cached objects (примерно 1/3 от общего объема #опе-
ративной памяти). Оптимальное значение для системы с памятью
#512 МБайт –170. cache_mem 170 MB
#Определите политику очистки кэша. cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
#Определите формат представления данных в кэше (DISKD), каталог,
#в котором он размещается (/var/spool/squid), объем дискового пространства #(1250 МБайт), количество подкаталогов первого и второго уровня в
#каталоге /var/spool/squid.
cache_dir diskd /var/spool/squid 1250 16 256
#Запретите создание файла, в котором регистрируется удаление и помещение
#объектов в кэш. Авторам не известны утилиты, предназначенные для обработки
#информации, содержащейся в этих файлах.
cache_store_log none
#Разрешите запись в файлы регистрации доменных имен вместо IP-адресов.
#Использование этой возможности облегчает анализ файлов регистрации,
#но снижает производительность шлюза.
log_fqdn on
#Разрешите создание файлов регистрации SQUID в формате Apache.
#Анализ этих файлов возможен с помощью стандартных утилит, предназначенных
#для анализа файлов регистрации Apache, например Webalizer.
emulate_httpd_log on
#Определите элементы списков контроля доступа (ACL elements).
#Определите имя элемента ACL и параметры для локальной сети.
acl localnet src 192.168.1.0/255.255.255.0
#Определите имя элемента ACL и интервал времени, в течение
#которого разрешен доступ в Интернет.
acl WorkDay MTWHF 09:00-18:20
#Определите имя элемента ACL и параметры локального хоста.
acl localhost src 127.0.0.1/255.255.255.255
#Определите имена элементов ACL и номера SSL и безопасных портов. acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535 280 488 591 777
#Определите имя элемента ACL для метода CONNECT.
acl CONNECT method CONNECT
#Определите имя элемента ACL для метода PURGE(очистка кэша).
acl PURGE method PURGE
#Определите имя элемента ACL для Интернет.
acl all src 0.0.0.0/0.0.0.0
#Создайте Access List(правила доступа для всех элементов ACL). #Squid воспринимает правила в том порядке, в котором они встречаются
#в /etc/squid/squid.conf.
#Разрешите доступ пользователей с локальной системы. http_access allow localhost
328 Часть 6. Программное обеспечение для организации шлюза
#Разрешите доступ в Интернет в рабочее время. http_access allow all WorkDay
#Разрешите очистку кэша с локальной системы.
http_access allow PURGE localhost
#Запретите обращение к небезопасным портам.
http_access deny !Safe_ports
#Запретите обращение к портам, неиспользуемым SSL.
http_access deny CONNECT !SSL_ports
#Запретите метод CONNECT.
http_access deny CONNECT
#Запретите очистку кэша со всех систем.
http_access deny PURGE
#Запретите доступ в Интернет в нерабочее время. http_access deny localnet
#Запретите доступ для всех хостов.
http_access deny all
#Укажите e-mail администратора.
cache_mgr admin@domain.ru
#Эти опции повышают безопасность системы за счет запуска #Squid от имени пользователя squid группы squid.
cache_effective_user squid cache_effective_group squid
logfile_rotate 0
#Запретите обмен с другими прокси-серверами.
log_icp_queries off
#Задайте пароль, используемый утилитой администрирования прокси-сервера #cachemgr через Web-интерфейс (если вы собираетесь ее использовать).
#cachemgr_passwd $ecretnoe_Sl0vo all
#Включите поддержку ускорения записи файлов регистрации buffered_logs on
Шаг 2
Создайте файл /etc/sysconfig/squid, содержащий следующие строки:
#Если на момент запуска Squid отсутствует подключение к Интернет,
#используйте опцию –D для отмены начальных обращений к DNS.
#SQUID_OPTS="-D"
#Определите интервал времени, в течении которого Squid будет продолжать
#работать при получении сигнала на остановку.
SQUID_SHUTDOWN_TIMEOUT=100
Шаг 3
В приведенных выше примерах файла /etc/squid/squid.conf установлено значение опции logfile_rotate, равное 0. Это означает, что для осуществления циклической замены файлов регистрации используется не значения параметров по умолчанию, а параметры, определяемые файлом /etc/logrotate.d/squid. Для еженедельной циклической перестановки файлов регистрации создайте файл /etc/logrotate.d/squid, содержащий следующие строки:
/var/log/squid/access.log { weekly
rotate 5 copytruncate compress notifempty missingok
}
/var/log/squid/cache.log { weekly
rotate 5 copytruncate compress notifempty missingok
}
Глава 24. Кэширующий прокси-сервер Squid |
329 |
/var/log/squid/store.log { weekly
rotate 5 copytruncate compress notifempty missingok
postrotate
/usr/sbin/squid -k rotate endscript
}
Шаг 4 Если вы будете использовать аутентификацию пользователей, создайте для них соответствующие
учетные записи (без доступа к командному интерпретатору и пользовательского каталога):
[root@bastion /]# useradd -s /bin/false drwalbr
[root@bastion /]# passwd drwalbr Changing password for user drwalbr New UNIX password:SeCreTnoe_SlOvO
Retype new UNIX password:SeCreTnoe_SlOvO
passwd: all authentication tokens updated successfully
Шаг 5
Если каталог /var/spool/squid смонтирован на отдельном разделе, то повышение безопасности системы может быть обеспечено за счет исключения возможности выполнения файлов, содержащихся в кэше. Для этого замените в файле /etc/fstab строку:
/dev/hda10 |
/var/spool |
ext3 |
defaults |
0 |
1 |
|
на: |
|
|
defaults,noexec,nodev,nosuid 0 |
|
||
/dev/hda10 |
/var/spool |
ext3 |
1 |
|||
и перемонтируйте раздел: |
|
|
|
|
|
|
[root@bastion /]# mount /var/spool -oremount |
|
|
||||
Проверьте правильность вновь установленных опций монтирования раздела: |
|
|||||
[root@bastion /]# cat /proc/mounts | grep hda10 |
|
|
||||
/dev/hda10 /var/spool |
ext3 |
rw,noexec,nodev,nosuid 0 0 |
|
Шаг 6 Для устранения случайного или преднамеренного изменения главного конфигурационного файла
/etc/squid/squid.conf, выполните:
[root@bastion /]# chattr+i /etc/squid/squid.conf
Тестирование Squid
Проверка работоспособности и правильности настройки Squid осуществляется следующим образом.
Шаг 1 Запустите Squid:
[root@bastion /]# /etc/init.d/squid start
Запускается squid: [ОК]
Перезапустите Squid:
[root@bastion /]# /etc/init.d/squid restart
Останавливается squid: |
[ОК] |
Запускается squid: |
[ОК] |
Если в процессе выполнения этих операций появились сообщения об ошибках, то необходимо проверить правильность конфигурационных файлов.
Шаг 2 Попробуйте с помощью браузера на системе в локальной сети, в которой не настроен доступ в Ин-
тернет через прокси-сервер, обратиться к какому-нибудь ресурсу. Если появился доступ, то проверьте настройки системы сетевой защиты.
330 |
Часть 6. Программное обеспечение для организации шлюза |
ЗАМЕЧАНИЕ Доступ в Интернет, минуя прокси-сервер, должен быть закрыт для того, чтобы пользователи локальной сети, отключив использование прокси-сервера в браузере, не могли преодолеть установленные вами ограничения.
Шаг 3 В браузере на системе в локальной сети настройте доступ через прокси-сервер и попробуйте обра-
титься к какому-нибудь ресурсу. Если соединение устанавливается, протестируйте работоспособность всех правил, установленных в файле /etc/squid/squid.conf.
Администрирование Squid
После выполнения команды:
[root@bastion /]# /etc/init.d/squid start
Squid не останавливается немедленно, а дожидается завершения всех установленных соединений. Для немедленной остановки Squid используйте команду:
[root@bastion /]# /usr/sbin/squid –k kill
Иногда возникает необходимость удаления из кэша некоторых объектов. Никогда не пытайтесь добиться этого путем удаления файлов и каталогов в /var/spool/squid. Для решения этой задачи используйте утилиту squidclient, которая является мощным средством для тестирования и администрирования Squid. По умолчанию очистка кэша (использование метода PURGE) в Squid запрещена. Для разрешения очистки кэша во всех переведенных выше примерах файла /etc/squid/squid.conf добавлены строки, разрешающие очистку кэша с локальной системы, т. е. консоли шлюза:
…
#Определите имя элемента ACL для метода PURGE. acl PURGE method PURGE
…
#Разрешите очистку кэша с локальной системы. http_access allow PURGE localhost
…
#Запретите очистку кэша со всех систем. http_access deny PURGE
…
Для получения краткой справочной информации о возможностях утилиты, наберите:
[root@bastion /]# /usr/sbin/squidclient
Удаление некоторого объекта из кэша осуществляется следующим образом. При использовании Squid без аутентификации пользователей:
[root@bastion /]# /usr/sbin/squidclient –m PURGE
При использовании аутентификации:
[root@bastion /]# /usr/sbin/squidclient –m PURGE –u drwalbr –w SeCreTnoe_SlOvO
Вслучае успешного удаления объекта вы получите сообщение вида:
HTTP/1.0 200 OK
Server: squid/2.5.STABLE1 Mime-Version: 1.0
Date: Mon, 03 Mar 2003 19:01:40 GMT Content-Length: 0
X-Cache: MISS from bastion.und X-Cache-Lookup: NONE from bastion.und:3128 Proxy-Connection: close
Вслучае отсутствия объекта в кэше – сообщение вида:
HTTP/1.0 404 Not Found
Server: squid/2.5.STABLE1
Mime-Version: 1.0
Date: Mon, 03 Mar 2003 19:02:50 GMT
Content-Length: 0
X-Cache: MISS from bastion.und