Автор Тема: Squid + Виртуальный хостинг  (Прочитано 6503 раз)

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Squid + Виртуальный хостинг
« : 02.07.2010 13:35:47 »
Добрый день. Столкнулся вот с такой проблемой. после установки и настройка Squid. Он (squid) перестал пускать локальные виртуальные сайты, пишет что
Цитировать
Во время доставки URL: http://edu.sokolskoe.org.ru/
Произошла следующая ошибка:
    * Не удалось установить соединение.
Был получен ответ:
    (111) Connection refused
Удалённый сервер либо сеть не отвечают. Пожалуйста, повторите запрос.
И так все виртуальные хосты кроме ftp
Прокси прозрачный, вот конфиг:
Цитировать
http_port 192.168.1.1:3128 transparent
ssl_unclean_shutdown on
icp_port 0
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 170 MB
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
cache_dir diskd /var/spool/squid 1250 16 256
access_log /var/log/squid/access.log squid
cache_store_log none
log_fqdn on
emulate_httpd_log off
error_directory /usr/share/squid/errors/Russian-1251
acl localnet src 192.168.1.0/255.255.255.0
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535 280 488 591 777
acl CONNECT method CONNECT
http_access allow localnet
http_access allow localhost
#http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny CONNECT
cache_mgr root@sokolskoe.org.ru
url_rewrite_program /usr/sbin/redirector /etc/squid/redirector/redirector.conf
cache_effective_user squid
cache_effective_group squid
logfile_rotate 0
log_icp_queries off
buffered_logs on
Подскажите в какую сторону копать.
Если нужна какято ещё дополнительная информация то предоставлю.
В дополнение раньше до установки сквида работало так: модем (шлюз)-> сеть, (в сети http-сервер), потом настроил так: модем-> сервер -> сетка
И после этого началась такая пляска с бубном
вот вывод команды iptables -L -t nat
Цитировать
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
DNAT       tcp  --  anywhere             anywhere            tcp dpt:http to:192.168.1.1:3128

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
MASQUERADE  all  --  anywhere             anywhere           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
« Последнее редактирование: 02.07.2010 13:49:29 от bolshakov »

MisHel64

  • Гость
Re: Squid + Виртуальный хостинг
« Ответ #1 : 04.07.2010 11:25:32 »
Добрый день. Столкнулся вот с такой проблемой. после установки и настройка Squid. Он (squid) перестал пускать локальные виртуальные сайты, пишет что
Кого и куда он перестал пускать?
Локальные сайты вообще ни куда не ходят.

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Re: Squid + Виртуальный хостинг
« Ответ #2 : 05.07.2010 07:59:57 »
Добрый день. Столкнулся вот с такой проблемой. после установки и настройка Squid. Он (squid) перестал пускать локальные виртуальные сайты, пишет что
Кого и куда он перестал пускать?
Локальные сайты вообще ни куда не ходят.
локальные сайты видны только по ip адресу в сети, в интернет не ходят
« Последнее редактирование: 05.07.2010 08:04:28 от bolshakov »

MisHel64

  • Гость
Re: Squid + Виртуальный хостинг
« Ответ #3 : 05.07.2010 08:56:30 »
Давай по порядку.
Есть локалка. В локалке есть веб сервер. На веб сервере виртуальные сайты.
1) Все я правильно понял?
2) С рабочей машины по имени сервер пингуется?
3) Виртуальный сайт по имени пингуется?
4) На виртуальный сайт без прокси по имени зайти зайти можешь?

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Re: Squid + Виртуальный хостинг
« Ответ #4 : 05.07.2010 09:10:17 »
Давай по порядку.
Есть локалка. В локалке есть веб сервер. На веб сервере виртуальные сайты.
1) Все я правильно понял?
2) С рабочей машины по имени сервер пингуется?
3) Виртуальный сайт по имени пингуется?
4) На виртуальный сайт без прокси по имени зайти зайти можешь?

1) сервер пингуется и по ip и по имени
2) да пингуется
3) на виртуальный сайт ни по имени ни по ip, при выключеном прокси, зайти не могу

MisHel64

  • Гость
Re: Squid + Виртуальный хостинг
« Ответ #5 : 05.07.2010 09:47:56 »
1) При выключенном прокси сервере
или
2) при указании клиенту не использовать прокси сервер.

Полный текст ошибки в добавок.

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Re: Squid + Виртуальный хостинг
« Ответ #6 : 05.07.2010 10:06:45 »
1) При выключенном прокси сервере
или
2) при указании клиенту не использовать прокси сервер.

Полный текст ошибки в добавок.
1 При выключеном прокси сервере выдаёт: "не возможно отобразить стараницу", соответственно ни какйо сайт не открывается
2 при указании клиенту "не использовать прокси" выдаёт ошибку
Цитировать
ОШИБКА
Запрошенный URL не может быть доставлен.

Во время доставки URL: http://edu.sokolskoe.org.ru/

Произошла следующая ошибка:

    * Не удалось установить соединение.

Был получен ответ:

    (111) Connection refused

Удалённый сервер либо сеть не отвечают. Пожалуйста, повторите запрос.

MisHel64

  • Гость
Re: Squid + Виртуальный хостинг
« Ответ #7 : 05.07.2010 10:12:41 »
А теперь посмотреть, что в этот момент в логах аппача появляется.
И скинуть сюда.

И мои соболезнования по поводу ВТ и PPoE.
« Последнее редактирование: 05.07.2010 10:16:23 от MisHel64 »

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Re: Squid + Виртуальный хостинг
« Ответ #8 : 05.07.2010 10:31:56 »
А теперь посмотреть, что в этот момент в логах аппача появляется.
И скинуть сюда.

И мои соболезнования по поводу ВТ и PPoE.
В логах ни чего не пишеться... :(

MisHel64

  • Гость
Re: Squid + Виртуальный хостинг
« Ответ #9 : 05.07.2010 10:56:49 »
В логах ни чего не пишеться... :(

А пока не было виртуальных хостов на сервер зайти могли?

Если да, то начинать курить от сюда.

Если нет, то курить в сторону пакетника, и отслеживать пакеты в нем.
« Последнее редактирование: 05.07.2010 10:59:58 от MisHel64 »

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 984
    • Пошаговые инструкции
Re: Squid + Виртуальный хостинг
« Ответ #10 : 05.07.2010 12:10:55 »
Столкнулся вот с такой проблемой. после установки и настройка Squid. Он (squid) перестал пускать локальные виртуальные сайты

Не надо ничего курить.

Вы включили ПРОЗРАЧНЫЙ прокси и перенаправляете 80 порт на 3128.
Поэтому все стало так происходить.
Правилом:
acl localnet src 192.168.1.0/255.255.255.0
http_access allow localnet
прокси притаскивает локальным компьютерам странички интернет и внутри работает нормально.
Так как снаружи у модема проброшен 80 порт на сервер, а приходят запросы с других сетей ( не 192...)
сервер перенаправляет тоже с 80 на 3128, а там разрешения обслуживать другие адреса нет.
Разрешите 0.0.0.0/0.0.0.0  и все заработает.
acl nolocalnet src 0.0.0.0/0.0.0.0
http_access allow nolocalnet
Так неправильно, но для теста пойдет, чтобы убедится.
Лучше не перенаправлять входящие снаружи запросы с 80 порта на 3128, а чтобы отвечал как и раньше.
Хотя развернуть squid наружу, чтобы он обслуживал предварительно ваш apache , идея не такая уж плохая.
 :)
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Re: Squid + Виртуальный хостинг
« Ответ #11 : 05.07.2010 13:54:07 »
Столкнулся вот с такой проблемой. после установки и настройка Squid. Он (squid) перестал пускать локальные виртуальные сайты

Не надо ничего курить.

Вы включили ПРОЗРАЧНЫЙ прокси и перенаправляете 80 порт на 3128.
Поэтому все стало так происходить.
Правилом:
acl localnet src 192.168.1.0/255.255.255.0
http_access allow localnet
прокси притаскивает локальным компьютерам странички интернет и внутри работает нормально.
Так как снаружи у модема проброшен 80 порт на сервер, а приходят запросы с других сетей ( не 192...)
сервер перенаправляет тоже с 80 на 3128, а там разрешения обслуживать другие адреса нет.
Разрешите 0.0.0.0/0.0.0.0  и все заработает.
acl nolocalnet src 0.0.0.0/0.0.0.0
http_access allow nolocalnet
Так неправильно, но для теста пойдет, чтобы убедится.
Лучше не перенаправлять входящие снаружи запросы с 80 порта на 3128, а чтобы отвечал как и раньше.
Хотя развернуть squid наружу, чтобы он обслуживал предварительно ваш apache , идея не такая уж плохая.
 :)

Нет не хочет даже так....
Цитировать
учше не перенаправлять входящие снаружи запросы с 80 порта на 3128, а чтобы отвечал как и раньше.
Хотя развернуть squid наружу, чтобы он обслуживал предварительно ваш apache , идея не такая уж плохая.
 :)
как такое реализовать можно?


Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 984
    • Пошаговые инструкции
Re: Squid + Виртуальный хостинг
« Ответ #12 : 05.07.2010 15:21:30 »
как такое реализовать можно?
Достаточно просто, но пока мало информации о вашем сервере, о подключении к локальной сети и к интернету.

Пришлите вывод команд:
#ip a s
#ip r s
« Последнее редактирование: 05.07.2010 15:23:43 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн bolshakov

  • Участник
  • *
  • Сообщений: 22
Re: Squid + Виртуальный хостинг
« Ответ #13 : 05.07.2010 15:35:25 »
как такое реализовать можно?
Достаточно просто, но пока мало информации о вашем сервере, о подключении к локальной сети и к интернету.

Пришлите вывод команд:
#ip a s
#ip r s
Цитировать
[root@server ~]# ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:25:11:c1:1b:24 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:e0:4c:bf:68:6a brd ff:ff:ff:ff:ff:ff
4: eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 00:c0:df:0f:cf:2b brd ff:ff:ff:ff:ff:ff
5: breth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether 00:25:11:c1:1b:24 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.2/24 scope global breth0
6: breth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether 00:e0:4c:bf:68:6a brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 scope global breth1
7: breth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether 00:c0:df:0f:cf:2b brd ff:ff:ff:ff:ff:ff
8: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/void
[root@server ~]# ip r s
192.168.1.0/24 dev breth1  proto kernel  scope link  src 192.168.1.1
192.168.10.0/24 dev breth0  proto kernel  scope link  src 192.168.10.2
default via 192.168.10.1 dev breth0
default via 192.168.1.1 dev breth1

breth0 - Интернет
breth1 - сеть
breth2 - лишняя сетевая карточка (надо бы вытащить да некогда...)
 в модеме идёт проброс порта 80 с внешнего ip на внутренний ip 192.168.10.2:80
теперь выдаёт ошибку
Цитировать
ОШИБКА
Запрошенный URL не может быть доставлен
Во время доставки URL: http://______/
Произошла следующая ошибка:
    * Доступ запрещён.
      Настройка контроля доступа не даёт возможности выполнить Ваш запрос в настоящее время. Пожалуйста, свяжитесь с Вашим поставщиком услуг Интернет, если Вы считаете это неправильным.
хотя в конфиге дан доступ всем
Цитировать
acl localnet src 0.0.0.0/0.0.0.0
http_access allow localnet
« Последнее редактирование: 05.07.2010 15:55:49 от bolshakov »

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 984
    • Пошаговые инструкции
Re: Squid + Виртуальный хостинг
« Ответ #14 : 05.07.2010 16:07:42 »
У вас два шлюза
default via 192.168.10.1 dev breth0
default via 192.168.1.1 dev breth1
Сервер снаружи не виден. Пакет пришел, а через какой он обратно пойдет?
Уберите второй, команда  от рута:
ip ro del default  via 192.168.1.1
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"