Медленная работа squid

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Reken
лейтенант
Сообщения: 611
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

Медленная работа squid

Непрочитанное сообщение Reken » 2020-08-21 11:36:07

Подскажите пожалуйста
Есть интернет шлюз FreeBSD 11.3 + squid 4.8_1

У пользователей которые используют прокси-сервер squid для выхода в интернет, иногда долго загружаются страницы, или вовсе зависают, нужно обновлять F5...
Обновление squid до последней версии, думаю не исправит проблему...

В логах squid иногда проскакивает:

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

NONE/000 0 NONE error:transaction-end-before-headers - HIER_NONE/- -
Не знаю, относится это к вышеуказанной проблеме или нет...

Если нужна дополнительная информация, спрашивайте, напишу.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Demis
старшина
Сообщения: 424
Зарегистрирован: 2015-05-25 14:36:32

Медленная работа squid

Непрочитанное сообщение Demis » 2020-08-21 12:46:47

Я-бы начал с "посмотреть, поправить, банальное":
1. Каков размер access.log? Если гиги, то усечь с потерей данных (truncate -t 0 access.log, да и что там с местом-то на диске...)
2. Почистить, пересоздать, кеш кальмара (/usr/local/etc/rc.d/squid stop, rm -r /usr/local/squid/cache/*, squid -z, /usr/local/etc/rc.d/squid start)
3. Перезапуск named или того, что отвечает за разрешение имен. С перепроверкой работоспособности.
4. Посмотреть, куда смотрит кальмар по днс (что-то вроде dns_nameservers в конфиге сквида).
5. Проверка локального сертификата, мне показалось, что у Вас там транспарент режим включен.
(Пути использовать свои)

Аватара пользователя
Reken
лейтенант
Сообщения: 611
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

Медленная работа squid

Непрочитанное сообщение Reken » 2020-08-21 14:55:08

1) access.log я удалил. Squid создал новый, так что он пока что относительно пустой, место минимально занимет
2) КЭШ пересоздал
3) BIND думаю не причем, он просто форвардит всё на DNS провайдера. Да и пользователи которые без прокси-сервера в ИНЕТ ходят, проблем не испытывают. Если бы BIND тормозил, то и пользователи без прокси-сервера бы тормозили...
4 и 5) Не понял как проверить...Я этот squid много лет назад собрал, и забыл про него. Вот сейчас пытаюсь понять что к чему...

Прикрепляю конфиг сквида. Может в нем что напутал?

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

request_header_access Pragma deny all #
request_header_access Cache-Control deny all
reply_header_access Pragma deny all
reply_header_access Cache-Control deny all
forwarded_for transparent

http_port 192.168.10.4:3128

acl localnet src 192.168.10.0/24        # RFC1918 possible internal network

acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
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
#never_direct allow all
acl bad_url dstdomain "/usr/local/etc/squid/bad_url.txt"


http_access deny bad_url
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports

# Only allow cachemgr access from localhost
http_access allow localhost manager
http_access deny manager

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
#http_access allow localnet
http_access allow localhost

acl good_ip src "/usr/local/etc/squid/good_ip.txt"
http_access deny !good_ip

acl good_vip_ip src "/usr/local/etc/squid/good_vip_ip.txt"
http_access allow good_vip_ip

acl good_url url_regex "/usr/local/etc/squid/good_url.txt"
http_access deny !good_url

http_access allow good_ip

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
http_port 3128

# Uncomment and adjust the following to add a disk cache directory.


# Leave coredumps in the first cache dir
#visible_hostname root
coredump_dir /var/squid/cache

#
# 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

shutdown_lifetime 3 seconds



Demis
старшина
Сообщения: 424
Зарегистрирован: 2015-05-25 14:36:32

Медленная работа squid

Непрочитанное сообщение Demis » 2020-08-21 16:17:08

Не помешает все-таки п.3

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

killall -HUP named && rndc flush
(бывает, но очень редко, что бинд поддуривает, лучше сразу убедиться, что он не причем).

Про транспарент я имел ввиду настройки типа таких:

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

https_port 192.168.1.1:3129 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/usr/local/etc/squid/ssl/squid.pem key=/usr/local/etc/squid/ssl/squid.key
http_port 192.168.1.1:3128 options=NO_SSLv3:NO_SSLv2
Но у Вас их не увидел.

Если с путями в системе все в порядке, то

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

squid -k parse
Покажет нам нутро настроек, включая те, что явным образом не заданы в конфиге:

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

2020/08/21 15:52:25| Startup: Initializing Authentication Schemes ...
2020/08/21 15:52:25| Startup: Initialized Authentication Scheme 'basic'
2020/08/21 15:52:25| Startup: Initialized Authentication Scheme 'digest'
2020/08/21 15:52:25| Startup: Initialized Authentication Scheme 'negotiate'
2020/08/21 15:52:25| Startup: Initialized Authentication Scheme 'ntlm'
2020/08/21 15:52:25| Startup: Initialized Authentication.
2020/08/21 15:52:25| Processing Configuration File: /usr/local/etc/squid/squid.conf (depth 0)
2020/08/21 15:52:25| Processing: acl localnet src 192.168.1.0/24
...
2020/08/21 15:52:25| Processing: dns_nameservers 127.0.0.1
...
2020/08/21 15:52:25| Processing: forwarded_for off
2020/08/21 15:52:25| Initializing https proxy context
2020/08/21 15:52:25| Initializing https_port 192.168.1.1:3129 SSL context
2020/08/21 15:52:25| Using certificate in /usr/local/etc/squid/ssl/squid.pem
Это правда для squid-3.5.20
Но лучше внимательно ознакомиться с каждой строчкой вывода на предмет ошибок...

Есть еще другие мысли:
а) Не протух-ли один из локальных сертификатов машины?
(можно перезалить с другой, более свежей установки)

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

ls /etc/ssl
total 12
lrwxr-xr-x  1 root  wheel     38  8 янв.   2018 cert.pem -> /usr/local/share/certs/ca-root-nss.crt
ls /usr/local/share/certs/ca-root-nss.crt
-rw-r--r--  1 root  wheel  821046  8 янв.   2018 /usr/local/share/certs/ca-root-nss.crt
б) Нет-ли проблемы с адтрастом на клиентских машинах (это с конца мая, кажется, началось) soft-f3/pro-sertifikat-addtrust-s-opens ... ml#p391952
в) Все-ли сайты тупят через прокси или есть с которыми проблем нет?
Хотя, наверное, эти последние два пункта можно и местами поменять...

Аватара пользователя
Reken
лейтенант
Сообщения: 611
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

Медленная работа squid

Непрочитанное сообщение Reken » 2020-08-21 16:46:50

Как я теперь понял, медленно загружаются только "тяжелые" странички...Где много всяких картинок или анимация какая нибудь есть.
Простые странички загружаются влет.При том если пользователя вывести из под прокси-сервера, проблем с загрузкой "тяжелых" страниц не будет.

Как будто бы squid медленно картинки фильтрует...

Аватара пользователя
skeletor
майор
Сообщения: 2537
Зарегистрирован: 2007-11-16 18:22:04
Откуда: Kiev
Контактная информация:

Медленная работа squid

Непрочитанное сообщение skeletor » 2020-08-21 17:59:58

Похоже, что у вас он однопоточный. Запустите несколько work'еров
"Винда съела дрова и резет здесь не фурычит."
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих фалов вообще нет!"

Аватара пользователя
Reken
лейтенант
Сообщения: 611
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

Медленная работа squid

Непрочитанное сообщение Reken » 2020-08-24 8:08:13

skeletor писал(а):
2020-08-21 17:59:58
Похоже, что у вас он однопоточный. Запустите несколько work'еров
Что то я не смог понять, а как сделать многопоточный squid?

Аватара пользователя
skeletor
майор
Сообщения: 2537
Зарегистрирован: 2007-11-16 18:22:04
Откуда: Kiev
Контактная информация:

Медленная работа squid

Непрочитанное сообщение skeletor » 2020-09-04 13:24:06

В конфиг добавляем опцию (количество воркеров)

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

workers 3
"Винда съела дрова и резет здесь не фурычит."
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих фалов вообще нет!"