PDA

Показать полную графическую версию : [решено] опять Squid


merc_yar
16-06-2010, 10:46
Доброго времени суток. Проблема вот в чем, необходимо запустить кеширующий прокси (с так называемым акселератором), но сквид при запуске ругается благим матом: ERROR: could not send signal 12 to process 1066: (3) No such process... Исходный конфиг: eth2-интернет(по дхцп) eth1-ланка (10.0.0.1)
конфиг squida:

http_port 3128 transparent
maximum_object_size 16384 KB
negative_ttl 1 minutes
positive_dns_ttl 10 hours
negative_dns_ttl 5 minutes
acl BANNER url_regex banner reklama linkexch banpics us\.yimg\.com[\./]ad[s]?[\./]
http_access deny BANNER
acl lan src 10.0.0.0/24
http_access allow
localhost http_access allow
lan redirect_program /etc/squid/redirector

правила iptables:

iptables -t nat -A PREROUTING -i eth1 -p tcp dport 80 -j DNAT to 10.0.0.1:3128
iptables -t nat -A PREROUTING -i eth2 -p tcp dport 80 -j REDIRECT to-port 3128

Версия squida 2.7 STABLE, ось ubuntu server 10.04.. Объясните пожалуйста в чем может быть причина ошибки, и как поправить данные конфиги для получения желаемого...Уже перерыл горы инфы, но либо я совсем не понимаю, либо она не для моей конфы..

BuGfiX
16-06-2010, 13:18
Убедитесь что к файлу, в котором squid сохраняет свой PID есть права на чтение у пользователя, от которого сам squid работает. И у директории, в которой лежит PID-файл тоже.

merc_yar
16-06-2010, 13:25
BuGfiX, спасибо что откликнулся, но можно поподробнее.. я еще не особо силен в терминале и собственно в самой терминологии.
P.S. сквид ругается на присутствие в конфе строк типа httpd_... хотя как я понимаю это стандартные команды?!

BuGfiX
17-06-2010, 14:35
Что именно поподробнее?
Многие программы при запуске создают файл, к который пишут номер процесса. В Вашем случае, похоже, пользователь, из-под которого запускается squid не имеет доступа к месту хранения этого файла.

merc_yar
17-06-2010, 16:32
поподробнее было по поводу прав доступа, сквид должен запускаться от рута(либо от пользователя с правами).. Но сегодня просмотрел процессы, сквид все таки не запускается, хотя после некоторой правки конфигов на ошибки уже не ругается.. Можно написать пошагово как запустить этого зверя? Имею ввиду если учитывать что он только что был установлен. +добавилась еще одна непонятная мне проблема прописываю правило iptables чтобы оно прокидывало 80 порт на 3180 и сеть отваливается вообще начиная от поддержки подсети, заканчивая интернетом.. Вообще ничего не понимаю. Если есть возможность, можете предоставить конфиг рабочего сквида и папки которым нужно дать права?

P.S.
1. При запуске squida в процессах он не появляется, ps -A|grep squid не выводит ничего.
2. .pid файл создан в /var/run/
3. service squid start выдает squid start/running, process 1533 но netstat ничего не показывает...

мистика?

BuGfiX
17-06-2010, 21:30
Если sqiud уже при запуске не ругается, но не слушает заданный порт... а что в логах ?

merc_yar
18-06-2010, 14:49
В частности последние записи лога:

2010/06/17 16:51:43| Starting Squid Cache version 2.7.STABLE7 for i386-debian-linux-gnu...
2010/06/17 16:51:43| Process ID 1125
2010/06/17 16:51:43| With 1024 file descriptors available
2010/06/17 16:51:43| Using epoll for the IO loop
2010/06/17 16:51:43| Performing DNS Tests...
2010/06/17 16:51:43| Successful DNS name lookup tests...
2010/06/17 16:51:43| DNS Socket created at 0.0.0.0, port 46172, FD 6
2010/06/17 16:51:43| Adding nameserver 192.168.0.1 from /etc/resolv.conf
2010/06/17 16:51:43| User-Agent logging is disabled.
2010/06/17 16:51:43| Referer logging is disabled.
2010/06/17 16:51:43| logfileOpen: opening log /var/log/squid/access.log
2010/06/17 16:51:43| Unlinkd pipe opened on FD 12
2010/06/17 16:51:43| Swap maxSize 102400 + 8192 KB, estimated 8507 objects
2010/06/17 16:51:43| Target number of buckets: 425
2010/06/17 16:51:43| Using 8192 Store buckets
2010/06/17 16:51:43| Max Mem size: 8192 KB
2010/06/17 16:51:43| Max Swap size: 102400 KB
2010/06/17 16:51:43| Local cache digest enabled; rebuild/rewrite every 3600/3600 sec
2010/06/17 16:51:43| logfileOpen: opening log /var/log/squid/store.log
2010/06/17 16:51:43| Rebuilding storage in /var/spool/squid (DIRTY)
2010/06/17 16:51:43| Using Least Load store dir selection
2010/06/17 16:51:43| Set Current Directory to /var/spool/squid
2010/06/17 16:51:43| Loaded Icons.
2010/06/17 16:51:44| Accepting proxy HTTP connections at 0.0.0.0, port 3128, FD 13.
2010/06/17 16:51:44| Accepting ICP messages at 0.0.0.0, port 3130, FD 14.
2010/06/17 16:51:44| HTCP Disabled.
2010/06/17 16:51:44| WCCP Disabled.
2010/06/17 16:51:44| Ready to serve requests.
2010/06/17 16:51:44| Done scanning /var/spool/squid (0 entries)
2010/06/17 16:51:44| Finished rebuilding storage from disk.
2010/06/17 16:51:44| 0 Entries scanned
2010/06/17 16:51:44| 0 Invalid entries.
2010/06/17 16:51:44| 0 With invalid flags.
2010/06/17 16:51:44| 0 Objects loaded.
2010/06/17 16:51:44| 0 Objects expired.
2010/06/17 16:51:44| 0 Objects cancelled.
2010/06/17 16:51:44| 0 Duplicate URLs purged.
2010/06/17 16:51:44| 0 Swapfile clashes avoided.
2010/06/17 16:51:44| Took 0.4 seconds ( 0.0 objects/sec).
2010/06/17 16:51:44| Beginning Validation Procedure
2010/06/17 16:51:44| Completed Validation Procedure
2010/06/17 16:51:44| Validated 0 Entries
2010/06/17 16:51:44| store_swap_size = 0k
2010/06/17 16:51:44| storeLateRelease: released 0 objects
2010/06/17 17:07:25| Reconfiguring Squid Cache (version 2.7.STABLE7)...
2010/06/17 17:07:25| FD 13 Closing HTTP connection
2010/06/17 17:07:25| FD 14 Closing ICP connection
2010/06/17 17:07:25| Closing unlinkd pipe on FD 12
2010/06/17 17:07:25| logfileClose: closing log /var/log/squid/store.log
2010/06/17 17:07:25| logfileClose: closing log /var/log/squid/access.log
2010/06/17 17:07:25| Including Configuration File: /etc/squid/squid.conf (depth 0)
2010/06/17 17:07:25| Squid is not safe to run as root! If you must
2010/06/17 17:07:25| start Squid as root, then you must configure
2010/06/17 17:07:25| it to run as a non-priveledged user with the
2010/06/17 17:07:25| 'cache_effective_user' option in the config file.
2010/06/17 17:07:25| storeDirWriteCleanLogs: Starting...
2010/06/17 17:07:25| Finished. Wrote 0 entries.
2010/06/17 17:07:25| Took 0.0 seconds ( 0.0 entries/sec).
FATAL: Don't run Squid as root, set 'cache_effective_user'!
Squid Cache (Version 2.7.STABLE7): Terminated abnormally.
Неужели вся проблема в том что я пускаю сквида под рутом? Сейчас попробую запустить от non-priveleged юзера и отпишусь

merc_yar
18-06-2010, 15:17
Постовил запуск от имени юзера, запуска сквид - 0 реакции. При указании форвардинга на выводе сообщение Failed to save port forwarding : Apply Squid failed :
squid: ERROR: No running copy

Alan85
20-06-2010, 00:07
попробуй добавить в конфиг
cache_effective_user nobody
или создай пользователя для сквида и замени nobody на него.. а вообще если ставил с репозиторий убунты то по идее все само должно было настроится.

merc_yar
20-06-2010, 02:18
Добавлял, реакции 0... Попробую поискать поглубже. В понедельник отпишусь о результатах, спасибо вам за то что уделяете моей проблеме свое время..

merc_yar
25-06-2010, 12:21
Наконец то проблема решилась... Путем сноса пакета сквида и установки по новой.. Not Linux Way =D

merc_yar
25-06-2010, 13:54
Практически сразу возникает другой вопрос: как настроить squid в режиме прозрачного кеширования и одновременно акселерацию? Подскажите пожалуйста, инфы по одновременному запуску не нашел, а мне нужно сделать..

dmitryst
25-06-2010, 15:14
как настроить squid в режиме прозрачного кеширования »
добавить в фаерволл перенапрвление запросов на http порты к вашему сквиду

# forward http from internet to my local apache - форвардим запросы извне на локальный апач
#${FW} add 90 fwd 10.0.1.2,80 tcp from any to any 80 in via vr0

# forward to SQUID - форвардим запросы из локалки на наш сквид, прозрачно
#${FW} add 100 fwd 127.0.0.1,3128 all from 192.168.1.0/8 to any 80,8080,3128 via rl0

merc_yar
26-06-2010, 09:53
dmitryst, спасибо, но я может неправильно выразился... Прозрачное кэширование я настроил, но наткнулся в конфиге сквида на аттрибут accel, почитал.. И теперь вопрос: можно ли настроить одновременное включение transparent и accel? Да и есть ли в этом смысл?

dmitryst
26-06-2010, 14:20
Да и есть ли в этом смысл? »
When to use Accelerator Mode

Accelerator mode should not be enabled unless you need it. There are a limited set of circumstances in which it is needed, so if one of the following setups applies to you, you should have a look at the remainder of this chapter.cc
Acceleration of a slow server

Squid can sit in front of a slow server, caching the server's results and passing the data on to clients. This is very useful when the origin server (the server that is actually serving the original data) is very slow, or is across a slow line). If the origin server is across a slow line, you could just move the origin server closer to the clients, but this may not be possible for administrative reasons. Don't use Squid to cache web server on the same machine for speed up, since modern web server (e.g. httpd) is faster than Squid in serving static contents in most cases. цитатко отсюда (http://webcache.googleusercontent.com/search?q=cache:_VsA2PuspMwJ:www.deckle.co.za/squid-users-guide/Accelerator_Mode+squid+accel+mode&cd=1&hl=ru&ct=clnk&client=firefox) .

Перевод в двух словах - акселератор можно включить только тогда, когда он реально необходим. Сквид может работать акселератором у слабого веб-сервера (актуально в случае действительно медленного сервера или если он подключен по медленной линии). Не используйте сквид и нормальный сервер на одной машине, ибо нормальные серверы (апач, к примеру) реально быстрее сквида в отдаче статичного контента. Вот теперь и решайте, надо но вам или не надо :)

merc_yar
28-06-2010, 13:51
dmitryst, спасибо, читал подобный опус =) просто в реальных условиях хотел узнать действительно ли он так эффективен.. Просто да, на самом деле нецелесообразно ставить на офис с 3 мегабитами и 20 юзерами с доступом только к почте и текстовому контенту... Всем спасибо за помощь, считаю тему вполне решенной))

dmitryst
28-06-2010, 14:20
нецелесообразно ставить на офис с 3 мегабитами и 20 юзерами с доступом только к почте и текстовому контенту »
да у вас, батенька, и сервера-то нету... А так я игрался с серверами и акселерациями - при нашей линии на 100 кб/с - явный изврат, так как сам апач успевает обработать и выдать даже навороченный скрипт, а далее - простой, ожидание, пока поток данных "рассосется" ))).
ЗЫ. отметьте тему решенной ;)

merc_yar
28-06-2010, 15:33
Сервер вот как раз и настраивается дабы ставить незащищенный вход считаю извратом)))




© OSzone.net 2001-2012