Страница 1 из 1

c-icap

Добавлено: 2006-04-03 13:12:04
Abigor
делал все по статье.

Код: Выделить всё

[root@caviar etc]# cat c-icap.conf
#
# This file contains the default settings for c-icap
#
PidFile /var/run/c-icap.pid
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
# set KeepAliveTimeout to -1 for no timeout
KeepAliveTimeout 600
StartServers 3
MaxServers 10
MinSpareThreads     10
MaxSpareThreads     20
ThreadsPerChild     10
MaxRequestsPerChild  0


Port 1344
User nobody
Group nobody


#ServerAdmin you@your.address # Not implemented yet
#ServerName localhost:1344 # Not implemented yet

TmpDir /tmp
MaxMemObject 131072

ServerLog /var/log/c_icap/server.log
AccessLog /var/log/c_icap/access.log
#DebugLevel 3

ModulesDir /usr/local/lib/c_icap
Module logger sys_logger.so
#Module perl_handler perl_handler.so

sys_logger.Prefix "C-ICAP:"
sys_logger.Facility local1

Logger sys_logger

acl squid_respmod src 0.0.0.0 type respmod
icap_access allow squid_respmod

ServicesDir /usr/local/lib/c_icap
Service echo_module srv_echo.so
Service squard_module srv_sguard.so
Service antivirus_module srv_clamav.so

srv_clamav.ScanFileTypes TEXT DATA EXECUTABLE ARCHIVE GIF JPEG MSOFFICE
StartSendPercentDataAfter size
srv_clamav.SendPercentData 5
srv_clamav.StartSendPercentDataAfter 2M


srv_clamav.MaxObjectSize  5M
srv_clamav.ClamAvMaxFilesInArchive 0
srv_clamav.ClamAvMaxFileSizeInArchive 100M
srv_clamav.ClamAvMaxRecLevel 5
вот вывод запуска

Код: Выделить всё

[root@caviar etc]# /usr/local/bin/c-icap -d 1 -D
Setting parameter :PidFile=/var/run/c-icap.pid
Setting parameter :Timeout=300
Setting parameter :KeepAliveTimeout=600
Setting parameter :StartServers=3
Setting parameter :MaxServers=10
Setting parameter :MinSpareThreads=10
Setting parameter :MaxSpareThreads=20
Setting parameter :ThreadsPerChild=10
Setting parameter :Port=1344
Setting parameter :User=nobody
Setting parameter :Group=nobody
Setting parameter :TmpDir=/tmp
Setting parameter :MaxMemObject=131072
Setting parameter :ServerLog=/var/log/c_icap/server.log
Setting parameter :AccessLog=/var/log/c_icap/access.log
Setting parameter :DebugLevel=3
Setting parameter :ModulesDir=/usr/local/lib/c_icap
Loading service :logger path sys_logger.so
Going to search variable Prefix in table sys_logger
Setting parameter :Prefix=C-ICAP:
Going to search variable Facility in table sys_logger
Setting parameter :Logger=sys_logger
Setting parameter :ServicesDir=/usr/local/lib/c_icap
Loading service :echo_module path srv_echo.so
Found handler C_handler for service with extension:.so
Initialization of echo module......
Loading service :squard_module path srv_sguard.so
Found handler C_handler for service with extension:.so
Initialization of sguard module......
Loading service :antivirus_module path srv_clamav.so
Found handler C_handler for service with extension:.so
Going to search variable ScanFileTypes in table srv_clamav
Going to search variable SendPercentData in table srv_clamav
Setting parameter :SendPercentData=5
Going to search variable StartSendPercentDataAfter in table srv_clamav
Setting parameter :StartSendPercentDataAfter=2097152
Going to search variable MaxObjectSize in table srv_clamav
Setting parameter :MaxObjectSize=5242880
Going to search variable ClamAvMaxFilesInArchive in table srv_clamav
Setting parameter :ClamAvMaxFilesInArchive=0
Going to search variable ClamAvMaxFileSizeInArchive in table srv_clamav
Setting parameter :ClamAvMaxFileSizeInArchive=104857600
Going to search variable ClamAvMaxRecLevel in table srv_clamav
Setting parameter :ClamAvMaxRecLevel=5
вот конфиг сквида

Код: Выделить всё

http_port 10.1.1.1:3128
icp_port 0

cache_effective_user nobody                                     # Пользователь от имени которого будет работать Squid
cache_effective_group nobody                                    # Группа от имени которой будет работать Squid

cache_mem 32 MB                                                 # Размер оперативной памяти отводимой под кэш
maximum_object_size 25600 KB                                    # Максимальный размер объекта записываемого в кэш
cache_dir ufs /var/squid_cache 1024 16 256
cache_access_log /var/squid_log/access.log                      # Протокол доступа к кэшу
cache_log /var/squid_log/cache.log                              # Тут находится протокол работы кэша
cache_store_log /var/squid_log/store.log                        # Протокол работы менеджера кэша
logfile_rotate 10                                               # Уровень ротации логов

hierarchy_stoplist cgi-bin ?                                    # Запрещаем кэшировать CGI
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

mime_table /usr/local/etc/squid/mime.conf
pid_filename /var/squid_log/squid.pid

ftp_user anonymous@                                             # Логин юзена для ftp
ftp_list_width 32
ftp_passive on                                                  # Разрешаем пассивный режим для ftp
ftp_sanitycheck on

refresh_pattern -i      ^ftp:           1440    20%     10080
refresh_pattern -i      ^gopher:        1440    0%      1440
refresh_pattern -i      \.gif$          1440    50%     10080
refresh_pattern -i      \.jpg$          1440    50%     10080
refresh_pattern -i      \.jpeg$         1440    50%     10080
refresh_pattern -i      \.png$          1440    50%     10080
refresh_pattern -i      .               0       20%     4320

quick_abort_pct 60                                              # Докачка файла после отказа, посте 60%

negative_ttl 1 minutes                                          # Время жизни запросов завершившихся ошибкой.
positive_dns_ttl 6 hours                                        # Время жизни успешного DNS запроса.
negative_dns_ttl 5 minutes                                      # Время жизни DNS запросов завершившихся ошибкой.
half_closed_clients on                                          # Поддержка нестандартных Http клиенттов
dns_nameservers 127.0.0.1                                       # Адрес DNS сервера
#dns_defnames off

#--- Исключения для серваком
acl logg src 10.1.1.44/255.255.255.255
#acl sirius src 10.1.1.10/255.255.255.255
#acl dir src 10.1.1.9/255.255.255.255
#---

#--- редирект через squidGuard
#redirect_program       /usr/local/bin/squidGuard
#redirect_children 7
#redirector_bypass on
#---

#--- Аутентификация пользователей в squid через доменные аккаунты Windows 2003
auth_param ntlm program /usr/local/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 10
auth_param ntlm max_challenge_reuses 0
auth_param ntlm max_challenge_lifetime 20 minutes

auth_param basic program /usr/local/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 10
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
#----

acl all src 0.0.0.0/0.0.0.0                                     # Загоняем всю сеть
acl squidusers proxy_auth REQUIRED                              # Группа Windows :)
#acl zal src 10.1.1.2-10.1.1.255/255.255.255.255                        #Описываем сети

acl bann url_regex "/usr/local/etc/squid/banners.deny"          # Список баннерных сетей
http_access deny bann

#--- c-icap
icap_service    service_1 reqmod_precache 0 icap://localhost:1344/srv_clamav
icap_service    service_2 respmod_precache 1 icap://localhost:1344/srv_clamav
icap_class      class_antivirus service_2 service_1
icap_access     class_antivirus allow all
#---

acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl Safe_ports port 80                                          # http
acl Safe_ports port 20                                          # ftp passiv
acl Safe_ports port 21                                          # ftp
acl Safe_ports port 443 563                                     # https, snews
acl Safe_ports port 70                                          # gopher
acl Safe_ports port 210                                         # wais
acl Safe_ports port 1025-65535                                  # unregistered ports
acl Safe_ports port 280                                         # http-mgmt
acl Safe_ports port 488                                         # gss-http
acl Safe_ports port 591                                         # filemaker
acl Safe_ports port 777                                         # multiling http
acl CONNECT method CONNECT
#http_access allow manager localhost                            # Разрешаем соединения только по правильным портам.

acl mus urlpath_regex -i \.mp3$  \.asf$ \.wma$ \.swf$           # Запрещаем качать музыку
acl vidio urlpath_regex -i \.avi$ \.mpg$ \.wmv$                 # Запрещаем качать видио
acl arhiv urlpath_regex -i \.zip$ \.rar$                        # Запрещаем качать архивы
acl aplic urlpath_regex -i \.exe$ \.msi$                        # Запрещаем качать экзешники

#acl chat dstdom_regex chat                                     # Запрещаем любые адреса где есть слово chat
#http_access deny chat

acl garant dstdom_regex garant                                  # Запрещаем любые адреса где есть слово garant
http_access deny garant

#--- Будущий прозрачный прокси
#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on
#---

#http_access deny mus
#http_access deny vidio
#http_access deny arhiv
#http_access deny aplic
#http_access allow zal

#http_access allow sirius
http_access allow logg
#http_access allow dir

http_access allow squidusers
http_access deny manager
http_access deny !Safe_ports
#http_access deny CONNECT !SSL_ports
http_access deny all


#authenticate_ttl 60 seconds

уведомлять о переполнении кэша
forwarded_for on                                                # Включать ли IP адресс клиента в заголовок Http запроса

#cachemgr_passwd pass all                                       # Разрешаем управлять кэшем с помощью cachemgr.cgi
cachemgr_passwd disable shutdown
cachemgr_passwd disable config
cachemgr_passwd none menu
cachemgr_passwd viewfd filedescriptors
cachemgr_passwd 1 all



client_db on                                                    # Включаем сбор статистики по каждому клиенту
error_directory /usr/local/etc/squid/errors/Russian-1251/       # Кодировка и язык ответов сервера
при этом все файлы на пробной странице удалось скачать без проблем, можетее подсказать де я прокосячил?

Добавлено: 2006-04-03 13:22:07
Alex Keda
в логах-то что? (при включенной отладке в messages сыплются логи когда по страничкам ходишь.)

Добавлено: 2006-04-03 13:30:29
Abigor
  • Apr 3 18:47:02 caviar c-icap: general, Setting parameter :Logger=sys_logger
    Apr 3 18:47:02 caviar c-icap: general, Setting parameter :ServicesDir=/usr/local/lib/c_icap
    Apr 3 18:47:02 caviar c-icap: general, Loading service :echo_module path srv_echo.so
    Apr 3 18:47:02 caviar c-icap: general, Found handler C_handler for service with extension:.so
    Apr 3 18:47:02 caviar c-icap: general, Loading service :squard_module path srv_sguard.so
    Apr 3 18:47:02 caviar c-icap: general, Found handler C_handler for service with extension:.so
    Apr 3 18:47:02 caviar c-icap: general, Loading service :antivirus_module path srv_clamav.so
    Apr 3 18:47:02 caviar c-icap: general, Found handler C_handler for service with extension:.so
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable ScanFileTypes in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable SendPercentData in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Setting parameter :SendPercentData=5
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable StartSendPercentDataAfter in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Setting parameter :StartSendPercentDataAfter=2097152
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable MaxObjectSize in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Setting parameter :MaxObjectSize=5242880
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable ClamAvMaxFilesInArchive in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Setting parameter :ClamAvMaxFilesInArchive=0
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable ClamAvMaxFileSizeInArchive in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Setting parameter :ClamAvMaxFileSizeInArchive=104857600
    Apr 3 18:47:05 caviar c-icap: general, Going to search variable ClamAvMaxRecLevel in table srv_clamav
    Apr 3 18:47:05 caviar c-icap: general, Setting parameter :ClamAvMaxRecLevel=5
    Apr 3 18:47:36 caviar squid[494]: Squid Parent: child process 497 exited due to signal 9
    Apr 3 18:47:39 caviar squid[68213]: Squid Parent: child process 68215 started
    Apr 3 19:06:39 caviar c-icap: general, Setting parameter :Logger=sys_logger
    Apr 3 19:06:39 caviar c-icap: general, Setting parameter :ServicesDir=/usr/local/lib/c_icap
    Apr 3 19:06:39 caviar c-icap: general, Loading service :echo_module path srv_echo.so
    Apr 3 19:06:39 caviar c-icap: general, Found handler C_handler for service with extension:.so
    Apr 3 19:06:39 caviar c-icap: general, Loading service :squard_module path srv_sguard.so
    Apr 3 19:06:39 caviar c-icap: general, Found handler C_handler for service with extension:.so
    Apr 3 19:06:39 caviar c-icap: general, Loading service :antivirus_module path srv_clamav.so
    Apr 3 19:06:39 caviar c-icap: general, Found handler C_handler for service with extension:.so
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable ScanFileTypes in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable SendPercentData in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Setting parameter :SendPercentData=5
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable StartSendPercentDataAfter in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Setting parameter :StartSendPercentDataAfter=2097152
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable MaxObjectSize in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Setting parameter :MaxObjectSize=5242880
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable ClamAvMaxFilesInArchive in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Setting parameter :ClamAvMaxFilesInArchive=0
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable ClamAvMaxFileSizeInArchive in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Setting parameter :ClamAvMaxFileSizeInArchive=104857600
    Apr 3 19:06:41 caviar c-icap: general, Going to search variable ClamAvMaxRecLevel in table srv_clamav
    Apr 3 19:06:41 caviar c-icap: general, Setting parameter :ClamAvMaxRecLevel=5
при этом
ServerLog /var/log/c_icap/server.log
AccessLog /var/log/c_icap/access.log
пустые

Добавлено: 2006-04-03 13:39:54
Alex Keda
а они всегда пустые :))))
===
и ещё, делал бы по статье, то не пропустил бы такую секцию в конфиге сквида:

Код: Выделить всё

icap_enable on
icap_preview_enable on
icap_preview_size 128
icap_send_client_ip on
:)))