Squid transparent http



  • Добрый дьнь!

    Есть проблемка такого характера.

    • ставлю чистый pfsense на машину делаю первоначальные настройки.
    • к Lan порту подключаю ноут по dhcp интернет работает и заходит на все сайты
    • устанавливаю Squid и как только включаю галочку Transparent HTTP Proxy то половина сайтов(в основном http) перестают работать пишет вот такое http://s019.radikal.ru/i616/1708/b1/125f2d48da72.jpg
      Галочку Transparent HTTP Proxy убираю все работает

    больше никаких настроек не делал(чистая система)

    версия
    2.3.4-RELEASE-p1 (amd64)
    built on Fri Jul 14 14:52:43 CDT 2017
    FreeBSD 10.3-RELEASE-p19

    куда копнуть ?



  • к Lan порту подключаю ноут
    На ноуте шлюзом pfsense ?
    выложи настройки сквида ( 1 страницу
    кроме сквида какие еще пакеты установлены?



  • настройки сети на ноуте http://s018.radikal.ru/i527/1708/ad/2163640c02d7.jpg

    первые две страници настройки Squid http://s61.radikal.ru/i174/1708/d7/eb2aa45f1a77.jpg и http://s019.radikal.ru/i612/1708/a5/522e4b53fa08.jpg

    больше никаких пакетов не установлено.

    Схема сети:
    общий офисный Pfsense по dhcp выдал новому Pfsense(на которомо не работает Squid) ip 192.168.1.19 дальше второй Pfsense по lan dhcp выдал ip ноуту 192.168.100.11

    Причем инет работает ! Пинги идут на любые сайты только вот в браузерах не все открываются сайты (с ошибкой которой я писал выше)



  • галки вроде все на месте.
    закладка Proxy Server: Access Control  ACLs Allowed Subnets
    впиши свою ЛАН типа 192.168.ххх.0/24
    (а у тебя на втором сенсе разрешены серые сети?
    это галки в самом низу  Interfaces: WAN



  • галки все убирал и так и так не хочет
    причем например на сайт https://habrahabr.ru заходить (судя по тому что он https), а на http://bmwfanatics.ru выдает ошибку
    Пробовал в настройках Squid поменать интерфейс с лан на wireless(у меня еще стоит wifi)
    Теперь с Lan нормально открываются сайты, судя по всему в обход сквида, а по Wifi не открываются

    Только что сделал общий сброс.  Ничего не помогло все так же ! ((



  • ipconfig /all
    с любого компа сетки со вторым пфсенсом - шлюз какой?



  • А у что у вас является DNS для pfSense?
    И никогда не прикладывайте к посту изображения со сторонних ресурсов - у некоторых они могут быть заблокированы.
    Форум позволяет приклеплять изображения.



  • Все добрый день , ситуация аналогичная  :)
    подскажите пожалуйста - как  решить эту проблему - голову сломал , все настройки перебрал .



  • Доброе.
    squidguard установлен? ssl-фильтрация включена?



  • @werter:

    Доброе.
    squidguard установлен? ssl-фильтрация включена?

    Нет - Ставил все с нуля , по идее squidguard  не обязателен ?  на корневом сервере , его нет  и все прекрасно работает

    Нет - ssl-фильтрация  , на корневом сервере , она выключена и все прекрасно работает



  • Сайты https - работают

    Сайты http  - пингуются , трассируются - но не открываются - Ошибка и все



  • Pfsense - реальная машина или вирт. ?



  • Машина  реальная .

    Схема такая .

    Провайдер –-- Первый прокси на pfsense 2.3.4 ----- довольные юзеры ----- один из них это  экспериментальный сервер на еще  одном pfsense 2.3.4 - за которым сижу я .

    Естественно по ip все  норм - конфликтов нет .

    Но вот такой  странный случай - http  не работает  -

    пс

    Отключаешь squid  все работает  нормально  , включаешь  squid  - http  не работает



  • Доброе.
    В настройках сквида выбран интерфейс, к-ый он слушает? Сети локальные в разрешения добавлены?



  • Настройки сквида

    http_port 192.168.7.1:3128
    http_port 127.0.0.1:3128 intercept
    icp_port 0
    digest_generation off
    dns_v4_first off
    pid_filename /var/run/squid/squid.pid
    cache_effective_user squid
    cache_effective_group proxy
    error_default_language en
    icon_directory /usr/local/etc/squid/icons
    visible_hostname localhost
    cache_mgr itadmin@xxx.ru
    access_log /var/squid/logs/access.log
    cache_log /var/squid/logs/cache.log
    cache_store_log none
    netdb_filename /var/squid/logs/netdb.state
    pinger_enable on
    pinger_program /usr/local/libexec/squid/pinger

    logfile_rotate 90
    debug_options rotate=90
    shutdown_lifetime 3 seconds

    Allow local network(s) on interface(s)

    acl localnet src  192.168.7.0/24
    forwarded_for on
    uri_whitespace strip

    acl dynamic urlpath_regex cgi-bin ?
    cache deny dynamic

    cache_mem 512 MB
    maximum_object_size_in_memory 256 KB
    memory_replacement_policy heap GDSF
    cache_replacement_policy heap LFUDA
    minimum_object_size 0 KB
    maximum_object_size 512 MB
    cache_dir ufs /var/squid/cache 10000 16 256
    offline_mode off
    cache_swap_low 90
    cache_swap_high 95
    cache allow all

    Add any of your own refresh_pattern entries above these.

    refresh_pattern ^ftp:    1440  20%  10080
    refresh_pattern ^gopher:  1440  0%  1440
    refresh_pattern -i (/cgi-bin/|?) 0  0%  0
    refresh_pattern .    0  20%  4320

    #Remote proxies

    Setup some default acls

    ACLs all, manager, localhost, and to_localhost are predefined.

    acl allsrc src all
    acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901  3128 3129 1025-65535
    acl sslports port 443 563

    acl purge method PURGE
    acl connect method CONNECT

    Define protocols used for redirects

    acl HTTP proto HTTP
    acl HTTPS proto HTTPS
    http_access allow manager localhost

    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
    delay_pools 1
    delay_class 1 2
    delay_parameters 1 -1/-1 -1/-1
    delay_initial_bucket_level 100
    delay_access 1 allow allsrc

    Reverse Proxy settings

    Custom options before auth

    Setup allowed ACLs

    Allow local network(s) on interface(s)

    http_access allow localnet

    Default block all to be sure

    http_access deny allsrc



  • ОПА - оказывается  ошибка вылетает  не от экспериментальной машины - а от  первой прокси
    значит , копать нужно там -

    может какой то конфликт




  • Конфиг Сквида  главной прокси

    This file is automatically generated by pfSense

    Do not edit manually !

    http_port 192.168.0.1:3128
    http_port 127.0.0.1:3128 intercept
    icp_port 0
    digest_generation off
    dns_v4_first off
    pid_filename /var/run/squid/squid.pid
    cache_effective_user squid
    cache_effective_group proxy
    error_default_language af
    icon_directory /usr/local/etc/squid/icons
    visible_hostname localhost
    cache_mgr admin@xxxxx01
    access_log /var/squid/logs/access.log
    cache_log /var/squid/logs/cache.log
    cache_store_log none
    netdb_filename /var/squid/logs/netdb.state
    pinger_enable on
    pinger_program /usr/local/libexec/squid/pinger

    logfile_rotate 90
    debug_options rotate=90
    shutdown_lifetime 3 seconds

    Allow local network(s) on interface(s)

    acl localnet src  192.168.0.0/24
    forwarded_for on
    uri_whitespace strip

    acl dynamic urlpath_regex cgi-bin ?
    cache deny dynamic

    cache_mem 64 MB
    maximum_object_size_in_memory 256 KB
    memory_replacement_policy heap GDSF
    cache_replacement_policy heap LFUDA
    minimum_object_size 0 KB
    maximum_object_size 4 MB
    cache_dir ufs /var/squid/cache 100 16 256
    offline_mode off
    cache_swap_low 90
    cache_swap_high 95
    cache allow all

    Add any of your own refresh_pattern entries above these.

    refresh_pattern ^ftp:    1440  20%  10080
    refresh_pattern ^gopher:  1440  0%  1440
    refresh_pattern -i (/cgi-bin/|?) 0  0%  0
    refresh_pattern .    0  20%  4320

    #Remote proxies

    Setup some default acls

    ACLs all, manager, localhost, and to_localhost are predefined.

    acl allsrc src all
    acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901  3128 3129 1025-65535
    acl sslports port 443 563

    acl purge method PURGE
    acl connect method CONNECT

    Define protocols used for redirects

    acl HTTP proto HTTP
    acl HTTPS proto HTTPS
    http_access allow manager localhost

    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
    delay_pools 1
    delay_class 1 2
    delay_parameters 1 -1/-1 -1/-1
    delay_initial_bucket_level 100
    delay_access 1 allow allsrc

    Reverse Proxy settings

    Custom options before auth

    Setup allowed ACLs

    Allow local network(s) on interface(s)

    http_access allow localnet

    Default block all to be sure

    http_access deny allsrc



  • Похожая, но другая ситуация.
    Кальмар работает всегда в режиме непрозрачного прокси.
    Но с галочкой Transparent, перестают грузиться http.

    Где собака порылась?
    В /tmp/rules.debug написано:

    Setup Squid proxy redirect

    no rdr on fxp0 proto tcp from { 192.168.0.0/24 } to any port 80
    rdr pass on fxp0 proto tcp from any to !(fxp0) port 80 -> 127.0.0.1 port 3128

    Setup squid pass rules for proxy

    pass in quick on fxp0 proto tcp from any to (fxp0) port {3128,3129} flags S/SA keep state

    Не очень силён, помогите!!!



  • Если у вас обоих сквид натравлен на фильтрацию только http, то на ЛАН в fw должно быть правило, разрешающее ходить вашей сети и по httpS.



  • Фаервол настроен по умолчанию  , пробовал на втором сервере , все разрешить  , все также работает .
    Сайты пингуються , трассируются , днс отвечает , но не открывается

    TCP_MISS/403 http://moskva.fm/



  • Тоесть получается , сайты https  у меня открываются , потому как  идут в обход сквида .

    Но я не понимаю , почему на запрос от меня вываливается  ошибка с первого прокси сервера .
    Первый прокси сервер работает  нормально .

    Вопрос - а сквид сервер  работает самостоятельно ,  или в обязательной связке c NAT  ?

    Если кому интересно - соберите  у себя тестовый стенд - будет  ли у вас  работать интернет у пользователей которые находятся за вторым pfsense



  • Блокирование серых сетей на ВАН откл ?



  • Доброго  времени суток  , спасибо  за внимание  к  моему эксперименту.

    На первом "главном" pfsense 2.3 все настройки по умолчанию , на  втором в фаерволе всё открыто .
    На втором  сервере переустановил  заново pfsense , результат  такойже  - страница ошибки прилетает  с первого pfsense.
    Отключаю на первом pfsense сквид - за вторым все начинает  адекватно  работать  .

    Не могу понять, что  не нравиться  первому  , почему не пропускает  трафик  по http



  • На первом есть сквид\гвард ?



  • На первом  есть сквид  , но  гарда  не стоит  на обоих
    В сети  нашел  инфу , мол  два сквида  в одной сети но в разных подсетях ,  не работают ???

    Запрос  идет через второй  на первый  по HTTP
    Вот думаю , может  , дело в портах



  • На первом сеть второго в разрешенные - внесена ?



  • На первом в фаерволе , сеть со стороны клиентов  , открыта полностью

    Или , что  вы имеете ввиду  ?  где  должно  стоять разрешение  ?
    Где то  на первом  сквиде  ?



  • Догадливый )



  • @werter:

    Если у вас обоих сквид натравлен на фильтрацию только http, то на ЛАН в fw должно быть правило, разрешающее ходить вашей сети и по httpS.

    У меня тока один pfsense .
    https не идут пока через прокси и они открываются без проблем.
    Не работает прозрачный режим. То есть перестают открываться http.
    Ошибки не даёт, в логах активности нет.
    Если в браузере поставить не прозрачный 3128, всё при этом работает.

    Я понимаю так, что не добавлено правило для заворачивания 80 порта на кальмара?
    Автоматом после установки галочки Transparent?
    Куда его воткнуть и как оно должно выглядеть?



  • @werter:

    Догадливый )

    Ок - делаю так  :  в главной прокси в пункте acl – Allowed Subnets -- пишу свою  подсеть 192.168.100.0/24

    В конфиге  автоматом  добавляется настройка  acl allowed_subnets src 192.168.100.0/24

    Сохраняю - перезагружаю - НЕ РАБОТАЕТ !!!



  • @Shumaher:

    @werter:

    Если у вас обоих сквид натравлен на фильтрацию только http, то на ЛАН в fw должно быть правило, разрешающее ходить вашей сети и по httpS.

    У меня тока один pfsense https не идут пока через прокси и они открываются без проблем.
    Не работает прозрачный режим. То есть перестают открываться http.
    Ошибки не даёт, в логах активности нет.
    Если в браузере поставить не прозрачный 3128, всё при этом работает.

    Я понимаю так, что не добавлено правило для заворачивания 80 порта на кальмара?
    Автоматом после установки галочки Transparent?
    Куда его воткнуть и как оно должно выглядеть?

    Тут такая сложность , нельзя на прямую править конфиги у pfsene , после перезагрузки он их перепишет
    в соответствии с вебмордой .
    Если  галка стоит  Transparent HTTP Proxy  , то должно работать ., если не работает - то дело не в этом
    Посмотрите , что в настройках сети вообще стоит , может тупо адрес шлюза не указан на котором ваш pfsense  крутиться .



  • Доброго времени суток  уважаемые специалисты , помогите , что я только не делал - мой эксперимент потерпел ФИАСКО

    Подскажите один сквид через другой  , вообще может работать  или  в сети наличие  двух сквидов невозможно в принципе ?



  • В  System-Advanced-Miscellaneous есть настройки вышестоящего прокси.
    Вдруг это то, что вам нужно?



  • @pigbrother:

    В  System-Advanced-Miscellaneous есть настройки вышестоящего прокси.
    Вдруг это то, что вам нужно?

    Спасибо большое , но это не то . Меня рубит первый сквид на первом прокси
    Все настройки на первом прокси делал , подсеть добавлял , но болт



  • @werter:

    Тут такая сложность , нельзя на прямую править конфиги у pfsene , после перезагрузки он их перепишет
    в соответствии с вебмордой .
    Если  галка стоит  Transparent HTTP Proxy  , то должно работать ., если не работает - то дело не в этом
    Посмотрите , что в настройках сети вообще стоит , может тупо адрес шлюза не указан на котором ваш pfsense  крутиться .

    А вот это поможет понять, что не так?
    /usr/local/etc/squid/squid.conf

    This file is automatically generated by pfSense

    Do not edit manually !

    http_port 192.168.0.3:3128
    http_port 127.0.0.1:3128 intercept
    icp_port 0
    digest_generation off
    dns_v4_first on
    pid_filename /var/run/squid/squid.pid
    cache_effective_user squid
    cache_effective_group proxy
    error_default_language ru
    icon_directory /usr/local/etc/squid/icons
    visible_hostname localhost
    cache_mgr it@ventatrans.ru
    access_log /var/squid/logs/access.log
    cache_log /var/squid/logs/cache.log
    cache_store_log none
    netdb_filename /var/squid/logs/netdb.state
    pinger_enable on
    pinger_program /usr/local/libexec/squid/pinger

    logfile_rotate 5
    debug_options rotate=5
    shutdown_lifetime 3 seconds

    Allow local network(s) on interface(s)

    acl localnet src  192.168.0.0/24
    forwarded_for on
    uri_whitespace strip

    acl dynamic urlpath_regex cgi-bin ?
    cache deny dynamic

    cache_mem 400 MB
    maximum_object_size_in_memory 256 KB
    memory_replacement_policy heap GDSF
    cache_replacement_policy heap LFUDA
    minimum_object_size 0 KB
    maximum_object_size 4 MB
    cache_dir ufs /var/squid/cache 3000 16 256
    offline_mode off
    cache_swap_low 90
    cache_swap_high 95
    cache allow all

    Add any of your own refresh_pattern entries above these.

    refresh_pattern ^ftp:    1440  20%  10080
    refresh_pattern ^gopher:  1440  0%  1440
    refresh_pattern -i (/cgi-bin/|?) 0  0%  0
    refresh_pattern .    0  20%  4320

    #Remote proxies

    Setup some default acls

    ACLs all, manager, localhost, and to_localhost are predefined.

    acl allsrc src all
    acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901  3128 3129 1025-65535
    acl sslports port 443 563

    acl purge method PURGE
    acl connect method CONNECT

    Define protocols used for redirects

    acl HTTP proto HTTP
    acl HTTPS proto HTTPS
    acl allowed_subnets src 192.168.0.54/32
    http_access allow manager localhost

    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
    delay_pools 1
    delay_class 1 2
    delay_parameters 1 -1/-1 -1/-1
    delay_initial_bucket_level 100
    delay_access 1 allow allsrc

    Reverse Proxy settings

    Custom options before auth

    Setup allowed ACLs

    Allow local network(s) on interface(s)

    http_access allow allowed_subnets
    http_access allow localnet

    Default block all to be sure

    http_access deny allsrc

    И 192.168.0.3 это собственно адрес шлюза.



  • Забросили тему. Памагите….



  • Если IP второго pfSense добавить в исключения SQUID в первом pfSense вы сможите проверить живут ли друг за другом два SQUID.



  • А у меня? У меня один то не работает. Вон конфиг выложил.