Не подскажите как научить сквид пропускать https? Мне нужно не для прозрачного прокси.
Squid + ssl
Я тут тоже видел. Тему можно закрыть. Все сделал. smile
Правда как работает не нравится.
Соединение сбрасывается почему то. Приходится обновлять страницу.
Весь траф пустил через прокси, а SSL напрямую
iptables -t nat -A PREROUTING -i vlan5 -s 192.168.2.100 -p tcp --sport 1024:65535 --dport 443 -j REDIRECT --to-port 3129
Фигня короче.
Кто знает как траф по 443 порту сделать в обход squid?
Кто знает как траф по 443 порту сделать в обход squid?
А обычный маскарад только 443 порта,. не?
iptables -t nat -A PREROUTING -i vlan5 -s 192.168.2.100 -p tcp --dport 443 -j MASQUERADEЯ впендюрил такое правило и у меня упал сервер. Завтра ехать на работу :( ХЗ, может из-за этого?
Конечно из-за этого. Только он не упал, он работает как н ив чём не бывало. Просто Вы до него достучаться не можете.
И да. если он раздавал инет в локалку, то раздача прекратилась. А так всё как в песне - "всё хорошо, прекрасная маркиза...", сервер работает.
Работает, но толку от него нет. Такое состояние я называю "упал" :D Тем паче он не только инет раздавал, но на нем и DHCP стоит.
В чем моя ошибка? Мне нужно траф 192.168.2.0/24 (vlan5) запустить на прокси 3128, но без 443 порта. Т.к. прокси не хочет работать с https.
А обычный маскарад только 443 порта,. не?
Пытался это сделать :D
--=XliN=--, забавная ситуёвина, у тебя squid на шлюзе? (напряумю в интернет)?
И вообще не понятно.. Траф завернулся только с 5 влана и конкретного IP. Почему тогда оно отрабатывает? Я даже не могу приконектиться по VPN на другой сервер. Шлюз меня не пропускает.
--=XliN=--, забавная ситуёвина, у тебя squid на шлюзе? (напряумю в интернет)?
Да. Сквид на шлюзе. А как по другому? Я бы при желании перенес бы на другой, например на Citrix. Там хоть откатиться можно.
А вот это how2 видел, может с настройками transparent что не так http://www.cyberciti.biz/tips/linux-setup-transparent-proxy-squid-howto.html
Да. Сквид на шлюзе. А как по другому? Я бы при желании перенес бы на другой, например на Citrix. Там хоть откатиться можно.
Ну nat' или redirect на машину со squid'ом никто не отменял, и пусть клиенты туда цепляются.
newzenon, Хавтушку почитал. Довольно занимательная. Сделано все почти так же, но ехать придется все равно. :( Исправлю и попробую сделать по этой инструкции и на другой тачке. Что бы не было таких касяков. Тем более это нужно для домена и пусть там и сквид будет.
Странно, сервак начал отвечать на пинги, но по ssh все равно не пускает.
--=XliN=--, забавная ситуёвина, у тебя squid на шлюзе? (напряумю в интернет)?
И что тут такого криминального? Какая разница где стоит прокся? Тут главное каие правила на фаерволе.
А ТС с правилом конечно загнул.
--=XliN=--
Ваши правила (под Вашу задачу) должы бы выглядеть так:
[console]
iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 443 -j DNAT –to 192.168.1.1:3128
iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 443 -j REDIRECT –to-port 3128[/console]
Но https кешировать и пускать на сквид нету смысла, так как шифровка.
Правильно в этом случае просто сделать форвард для 443 порта, без велосипедов.
А DHCP работает, куда ж он денется. Он со сквидом вообще ни каким боком не связан.
Странно, сервак начал отвечать на пинги, но по ssh все равно не пускает.
Ничего странног, я ж говорю - СЕРВЕР РАБОТАЕТ!
А вот выставлять пинг наружу - не есть тру.
Не подскажите как научить сквид пропускать https? Мне нужно не для прозрачного прокси.
Ни как. Тоесть сделать конечно можно, имеются разные велосипеды, на основе того же сквида, но это фигня полная.
HTTPS - шифрованный трафик. Джае если Вам и удастся его закешировать, то воспользоваться им сможет только этот же клиент и только во время этого сеанса. больше никто.
ИМХО пустая трата времени и ресурсов. Правильнее сделать форвад для 443 порта и всё.
По крайней мере я отказался от кеширования https и пропустил его напрямую ибо смыла нету так как нету разницы.
Подведем итоги.
eth1 - XXX.XXX.XXX.XXX - смотрит в инет
vlan5 - 192.168.2.0/24 - все делается для этой подсети.
192.168.1.77 - шлюз со squid.
Конфиг squid. Верный ли он? Взята с выше данной хавту. Обратите внимания на выделенный текст.
Показать
Связка сквида с AD
############################
auth_param basic program /usr/lib/squid/squid_ldap_auth -b "dc=smb,dc=mgkb1,dc=local" -D sel_ldap@smb.mgkb1.local -w XXXXX -f "(&(objectClass=person)(sAMAccountName=%s))" -u sAMAccountName -h 192.168.2.82 -p 389
external_acl_type ldap_users %LOGIN /usr/lib/squid/squid_ldap_group -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf=CN=ia,CN=Builtin,DC=smb,DC=mgkb1,DC=local))" -R -b "CN=Users,DC=smb,DC=mgkb1,DC=local" -D "sel_ldap@smb.mgkb1.local" -w "XXXXXX" -h 192.168.2.82 -v 3 -p 389
auth_param basic children 20
auth_param basic realm Internet Access MGKB1
auth_param basic credentialsttl 1 minutes
############################
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
hosts_file /etc/hosts
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
Создаем ACL правила
############################
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl inetusers external ldap_users ia Это те, кому можно. Туда я ее впихнул?
acl purge method PURGE
acl CONNECT method CONNECT
############################
cache_mem 512 MB
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl lan src 192.168.1.77 192.168.2.0/24
http_access allow localhost
http_access allow lan
http_access allow inetusers
http_access deny all
http_reply_access allow all
icp_access allow all
visible_hostname blabla.ru
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
coredump_dir /var/spool/squid
Далее идем в iptables и после всех натов добавляю
iptables -t nat -A PREROUTING -i vlan5 -p tcp --dport 80 -j DNAT --to 192.168.1.77:3128
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
Эти правила актуальны только для второй сети?
Правильнее сделать форвад для 443 порта и всё.
По крайней мере я отказался от кеширования https и пропустил его напрямую ибо смыла нету так как нету разницы.
Я в общем-то с самого начала и имел ввиду. Немного недовник в правила просто.
Первое что бросается в глаза это acl lan src 192.168.1.77 192.168.2.0/24
Нужно acl lan src 127.0.0.1 192.168.2.0/24
Второе cache_mem 512 MB я бы увеличил, если RAM позволяет. Если не позволяет, то добавил бы RAM, а затем увеличил cache_mem
Третье добавлять правила в iptables следует по такому принципу - читается сверху вниз. Если в самом начале стоят какие лобо запрещающие правила, под определения которых попадает то, что Вы разрешаете позже этими двумя своими, то они просто не отработаются, так как до них не дойдёт. Я бы на вашем месте эти два правила переставил в начало.
Четвёртое. Правила в конфиге сквида читаются так же и там действует тот же метод. Провертье ещё раз всё.
Пятое. В итое Вы получили прозрачный прокси, хотя старт темы
Мне нужно не для прозрачного прокси.
Что бы этого добится, Вам как раз не нужны эти два правила.
Ну вообщем Вам решать, чего Вы конкретно хотите.
Третье добавлять правила в iptables следует по такому принципу - читается сверху вниз. Если в самом начале стоят какие лобо запрещающие правила, под определения которых попадает то, что Вы разрешаете позже этими двумя своими, то они просто не отработаются, так как до них не дойдёт. Я бы на вашем месте эти два правила переставил в начало.
Ой! Как раз отработают, в скрипт кидаю всегда сначала политики, потом правила. Или мы о разном?