LINUX.ORG.RU
ФорумAdmin

Не могу заставить SQUID работать как прозрачный прокси...


0

1

Добрый день! Имеется OS Fedora 17 и SQUID 3.2.0.16 установленный из репозитория. Все работает до тех пор, пока не указываю сквиду работать прозрачно:

http_port 3128 intercept
Служба запущена, ошибок не показывает, но доступа в интернет - нету, как с явно указанным проки в браузере, так и без него... просто не грузит страницы и все... Если указать:
http_port 3128
То работает нормально, интернет есть. Не могу понять в чем дело...



Последнее исправление: tazhate (всего исправлений: 1)

Еще вчера он у тебя слушал порт 8080 и все работало.
Ты его нарочно раз в день ломаешь?

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)

Не в тему, но чтобы не создавать отдельную тему: что такое прозрачный и непрозрачный прокси? Чем они отличаются?

cinyflo ★★★★★
()

Перенаправь на iptables 80-ый на 3128.

dada ★★★★★
()
Ответ на: комментарий от cinyflo

в одном случае надо браузеру показать прокси, во втором нет.

dada ★★★★★
()
Последнее исправление: dada (всего исправлений: 1)

Служба запущена, ошибок не показывает, но доступа в интернет - нету, как с явно указанным проки в браузере, так и без него...

Учи матчасть. Как трафик браузера должен попасть на прокси? варианты: любой nat или wccp

http://wiki.squid-cache.org/SquidFaq/InterceptionProxy

router ★★★★★
()

cat /etc/sysconfig/iptables в студию!

А еще у сквида есть волшебные строчки tcp_outgoing address

wheel
()
Ответ на: комментарий от v9lij
*nat
:PREROUTING ACCEPT [2:156]
:INPUT ACCEPT [2:156]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -s 10.106.100.0/24 ! -d 10.104.0.0/13 -p tcp -m multiport --dports 80 -j REDIRECT --to-ports 3128
COMMIT

*filter
:INPUT ACCEPT [14:810]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [16:2592]
-A INPUT -p tcp -m tcp --dport 3128 -m state --state NEW,ESTABLISHED -j ACCEPT
COMMIT
dj_lexa
() автор топика
Ответ на: комментарий от v9lij

Но, он же работает в режиме НЕпрозрачного прокси! Почему тогда не хочет работать в прозрачном режиме?

dj_lexa
() автор топика
Ответ на: комментарий от dj_lexa

Этот сервер имеет всего одну сетевуху, зачем ему NAT? В качестве шлюза указан маршрутизатор CISCO.

Вот потому и не работает.

Он ведь почему прозрачный? Потому что клиент (браузер) не подозревает о его существовании.

Как сделать, чтобы трафик клиента шёл через сервер с прозрачным сквидом? Правильно - указать этот сервер в качестве шлюза по-умолчанию.

А у вас клиенты прутся в интернет мимо сквида - через циску.

В Вашем случае следует почитать про WCCP.

MumiyTroll ★★★
()
Ответ на: комментарий от dj_lexa

Этот сервер имеет всего одну сетевуху

И на кой черт туда ставить проксю, если любой дурак сможет в обход нее в интернет выйти?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Имеется оборудование: Маршрутизатор cisco c IP адресом 10.106.100.1; Проски-сервер Fedora 17 + SQUID c IP адресом 10.106.100.2; доменный контроллер Win2003 c IP адресом 10.106.100.3.

Вот настройки сетевой карты в Fedora: # cat /etc/sysconfig/network-scripts/ifcfg-em1

DEVICE=em1
ONBOOT=yes
IPADDR=10.106.100.2
NETMASK=255.255.255.0
NETWORK=10.106.100.0
BROADCAST=10.106.100.255
BOOTPROTO=none

# cat /etc/resolv.conf

search localdomain
nameserver 10.106.100.3

# cat /etc/sysconfig/network

NETWORKING=yes
GATEWAY=10.106.100.1

У всех пользователей в настройках TCP/IP вот такие параметры:

IP-адрес: 10.106.100.X
Маска подсети: 255.255.255.0
Основной шлюз: 10.106.100.2
DHCP-сервер: 10.106.100.3
DNS-сервер: 10.106.100.3

На CISCO разрешено выходить в интернет только для IP: 10.106.100.2 и 10.106.100.3, для остальных - все закрыто!!!

Так вот, как только я включаю параметр intercept (transparent) в сквиде, инет прекращается даже если в настройках браузера явно указан прокси-сервер. А в логах сквида появляется вот это:

1354817243.352  19468 10.106.100.7 NONE_ABORTED/000 0 GET http://browser.yandex.ru/ - HIER_NONE/- -
1354817273.712  20954 10.106.100.7 NONE_ABORTED/000 0 GET http://www.ya.ru/ - HIER_NONE/- -
1354817288.627  10715 10.106.100.7 NONE_ABORTED/000 0 GET http://www.nigma.ru/ - HIER_NONE/- -

Стоит только отключить параметр transparent и в логах все отлично:

1354817369.344    960 10.106.100.7 TCP_MISS/200 6331 GET http://www.nigma.ru/ admin HIER_DIRECT/195.239.16.17 text/html

Не понимаю почему такая фигня?

dj_lexa
() автор топика
Ответ на: комментарий от dj_lexa

На CISCO разрешено выходить в интернет только для IP: 10.106.100.2 и 10.106.100.3, для остальных - все закрыто!!!

Любой малолетний «кулхацкер» выйдет в твоей системе в интернет!

Поставь на проксю вторую сетевуху и сделай ее шлюзом!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Выход в интернет напрямую разрешен только для 2 IP адресов, для всех остальных этот маршрутизатор даже не виден (не пингуется). Ну поменяют они IP адрес на тот что у доменного контроллера, ну и будет конфликт IP адресов в сети....

dj_lexa
() автор топика
Ответ на: комментарий от dj_lexa

Ну поменяют они IP адрес на тот что у доменного контроллера, ну и будет конфликт IP адресов в сети....

Но у них все будет ОК. Думаешь, я не проверял, что происходит, когда в сети появляется два одинаковых IP/MAC?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от dj_lexa

Маршрутизатор cisco c IP адресом 10.106.100.1; Проски-сервер Fedora 17 + SQUID c IP адресом 10.106.100.2;

Основной шлюз: 10.106.100.2

В такой конфигурации линукс по-умолчанию трафик не маршрутизирует, а отдает ICMP-redirect с адресом своего шлюза по-умолчанию, т.е. циски.

Можно попробовать запретить редиректы:

sysctl -w net.ipv4.conf.all.send_redirects=0

MumiyTroll ★★★
()
Ответ на: комментарий от dj_lexa

Обновил сквид до версии 3.2.3

[root@proxy ~]# squid -v
Squid Cache: Version 3.2.3
configure options:  '--build=i686-pc-linux-gnu' '--host=i686-pc-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' 'CXXFLAGS= -L/usr/lib' '--disable-strict-error-checking' '--exec_prefix=/usr' '--libexecdir=/usr/lib/squid' '--localstatedir=/var' '--datadir=/usr/share/squid' '--sysconfdir=/etc/squid' '--with-logdir=$(localstatedir)/log/squid' '--with-pidfile=$(localstatedir)/run/squid.pid' '--disable-dependency-tracking' '--enable-arp-acl' '--enable-follow-x-forwarded-for' '--enable-auth' '--enable-auth-basic=DB,LDAP,MSNT,MSNT-multi-domain,NCSA,NIS,PAM,POP3,RADIUS,SASL,SMB,getpwnam' '--enable-auth-ntlm=smb_lm,fake' '--enable-auth-digest=file,LDAP,eDirectory' '--enable-auth-negotiate=kerberos' '--enable-external-acl-helpers=ip_user,ldap_group,session,unix_group,wbinfo_group' '--enable-cache-digests' '--enable-cachemgr-hostname=localhost' '--enable-delay-pools' '--enable-epoll' '--enable-icap-client' '--enable-ident-lookups' '--with-large-files' '--enable-linux-netfilter' '--enable-referer-log' '--enable-removal-policies=heap,lru' '--enable-snmp' '--enable-ssl' '--enable-storeio=aufs,diskd,ufs' '--enable-useragent-log' '--enable-wccpv2' '--enable-esi' '--enable-ecap' '--with-aio' '--with-default-user=squid' '--with-filedescriptors=16384' '--with-dl' '--with-openssl' '--with-pthreads' '--disable-ipv6' 'build_alias=i686-pc-linux-gnu' 'host_alias=i686-pc-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4  -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -fpie' 'LDFLAGS=-Wl,-z,relro  -pie' 'PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig'
Теперь при включении параметра intercept, вводим в браузере адрес любого сайта и получает в ответ - ДОСТУП ЗАПРЕЩЕН. Убираем intercept - все работает... Пробовал включать intercept на дефолтном конфиге - такая же фигня, пишет что доступ запрещен... ЧТО ЗА ФИГНЯ?

dj_lexa
() автор топика
Ответ на: комментарий от dj_lexa

Вскрылись некоторые подробности! После включения параметра intercept сквид работает только в режиме прозрачного прокси, если прокси указан в браузере явно, то он тупо не пускает. Как сделать так, что бы он принимал запросы как с явно установленным прокси в браузере так и без указания прокси?

dj_lexa
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.