Squid Тормоза и Странности



  • Всем добрый день.
    Уважаемые форумчане, очень бы пригодилась ваша помощь. 
    Собственно сабж:
    Есть pfsense 2.1 на нем установлен squid 2.7.9 pkg v.4.3.3 и lightsquid 1.8.0 pkg v.2.32
    Настройки практически дефолтные. Настройки делал через web интерфейс. Сама задача заключается лишь в блокировании определенных сайтов для доступа юзеров.
    Настройки минимальные : несколько сайтов заблокировано, несколько сайтов в обход прокси итд.
    Но есть проблема: Интернет жутко тормозит, а некоторые сайты(типа yandex карт) либо вообще не открывает, либо открывает как -то не весь. Перерыл форумы, но там зачастую ответ в форме: "А, не, все работает, спасибо", или "Нашел, спасибо"
    Если кто может помочь, то дайте плз. ссыль где почитать, или расскажите куда копать. Если можно, то поподробней.
    С pfsense столкнулся недавно, да и в nix системах я пока новичок

    .ПС. все логи которые нужны могу предоставить



  • Покажите скриншоты правил LAN, логи файрвола, логи squid.
    Проверьте обработку DNS с локальной машины на указанные сайты.
    Проверьте, что pfSense является шлюзом для локальных машин



  • @dvserg:

    Покажите скриншоты правил LAN, логи файрвола, логи squid.


    Какие логи показать /var/logs/squid : ? Вижу целый ворох Cache.log.* и не вижу ни одного лога за сегодня напрмер
    А в Status: System logs: Firewall  Ничего инетресного нет.
    @dvserg:

    Проверьте обработку DNS с локальной машины на указанные сайты.

    Извините за дилетантский вопрос, но как это сдлеать?
    @dvserg:

    Проверьте, что pfSense является шлюзом для локальных машин

    Тут все в порядке.

    Если удаляю squid то все работает нормально.



  • на каком железе собрано? краткий конфиг компа приведи.



  • Pfsense установлен на hyper V 1gb оперативки, 1 проц 1 ядро(6% от всей системы)
    Данные железного сервера: проц :Intel(R) Xeon(R) CPU E5640 @2.67GHz win2008r2S
    Причем в 2 других местах(тоже hyper V но железо помощней) все ОК



  • Конфигурация Squid /usr/local/etc/squid/squid.conf

    Do not edit manually !

    http_port 192.168.0.254:3128
    icp_port 0

    pid_filename /var/run/squid.pid
    cache_effective_user proxy
    cache_effective_group proxy
    error_directory /usr/local/etc/squid/errors/Russian-koi8-r
    icon_directory /usr/local/etc/squid/icons
    visible_hostname localhost
    cache_mgr admin@localhost
    access_log /var/squid/logs/access.log
    cache_log /var/squid/logs/cache.log
    cache_store_log none
    logfile_rotate 30
    shutdown_lifetime 3 seconds

    Allow local network(s) on interface(s)

    acl localnet src  192.168.0.0/255.255.255.0
    uri_whitespace strip

    cache_mem 8 MB
    maximum_object_size_in_memory 32 KB
    memory_replacement_policy heap GDSF
    cache_replacement_policy heap LFUDA
    cache_dir ufs /var/squid/cache 100 16 256
    minimum_object_size 0 KB
    maximum_object_size 10 KB
    offline_mode off

    No redirector configured

    Setup some default acls

    acl all src 0.0.0.0/0.0.0.0
    acl localhost src 127.0.0.1/255.255.255.255
    acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901  3128 1025-65535
    acl sslports port 443 563 
    acl manager proto cache_object
    acl purge method PURGE
    acl connect method CONNECT
    acl dynamic urlpath_regex cgi-bin ?
    acl allowed_subnets src 192.168.0.0/24 192.168.1.0/24 192.168.8.0/24 192.168.9.0/24
    acl blacklist dstdom_regex -i "/var/squid/acl/blacklist.acl"
    cache deny dynamic
    http_access allow manager localhost

    Allow external cache managers

    acl ext_manager_1 src 127.0.0.1
    http_access allow manager ext_manager_1
    acl ext_manager_2 src 192.168.0.254
    http_access allow manager ext_manager_2

    http_access deny manager
    http_access allow purge localhost
    http_access deny purge
    http_access deny !safeports
    http_access deny CONNECT !sslports

    Always allow localhost connections

    http_access allow localhost

    request_body_max_size 0 KB
    reply_body_max_size 0 deny all
    delay_pools 1
    delay_class 1 2
    delay_parameters 1 -1/-1 -1/-1
    delay_initial_bucket_level 100
    delay_access 1 allow all

    Custom options

    acl safeports port 9100

    Block access to blacklist domains

    http_access deny blacklist
    auth_param basic program /usr/local/libexec/squid/squid_ldap_auth -v 3 -b dc=,dc= -D cn=pfsense,cn=Users,dc=,dc=** -w 123456789 -f "sAMAccountName=%s" -u  -P 192.168.0.3:389
    auth_param basic children 5
    auth_param basic realm Please enter your credentials to access the proxy
    auth_param basic credentialsttl 60 minutes
    acl password proxy_auth REQUIRED
    http_access allow password localnet
    http_access allow password allowed_subnets

    Default block all to be sure

    http_access deny all



  • Походу сам наплодил пост вида: "Ничего не работает -помогите"…..."А, все работает спасибо"
    Чтобы так больше не делать - опишу более подробно что я сделал для решения проблемы. Возможно кому то и поможет :)

    Итак:
    Получив пару наводящих вопросов и ни одного дельного совета начал разбирать все подряд. Пару раз снес кальмара. Сношу - инеты летают. Ставлю - тормоза и сайты работают не правильно. Стал читать - чаще всего проблема в dns. Перво наперво открыл на lan интерфейсе 53 порт(dns). Но НЕТ - не помогло. (к слову: схема сети такая - Шлюз+proxy подключены к внутреннему серверу DNS(win2008r2))
    Много чего перепробовал крутить в настройках squid от логирования до кеширования - но, естественно, никаких результатов не получил.
    Далее я решил более подробно разобраться с dns - и вижу, что настройки в /etc/resolv.conf такие:
    domain "mydomain"
    nameserver 192.168.0.3 #Сервер внутренних DNS
    nameserver 8.8.8.8 #Великий Google
    Я выставил  DNSы прова - не помогло
    Оставив DNSы прова я включил DNS forwarding enable  в Services: DNS forwarder
    и все залетало.
    Но есть 1 нюанс - в dmz находится appache на котором сайт - так вот на этом сайте, при подключении изнутри, не отрабатывают некоторые скрипты.
    Чтобы все стало "Как надо" привел схему dns к следующему виду:
    1.На win dns в forwarders указал DNSы прова + dns гугла
    2.Проверил все пользовательские тачки - везде dns - виндовый сервер.
    3.На локальной сетевке (вторая сетевка уходит наружу через hyper v) в качестве dns указал петлю - 127.0.0.1
    4.На шлюзе в качестве dns - dns виндового сервака
    5.Еще раз убедился, что 53 порт на локальной сетевке на шдюзе открыт
    6.Открывать 53 порт на wan интерфейсах не нужно.

    ПС Кто ищет - тот всегда найдет. Спасибо тем, кто хотя бы отписался в теме и наводящими вопросами заставил задуматься:) С новичками всегда тяжело:)


Log in to reply