очередной вопрос по squid

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

Аватара пользователя
demsl
Сообщения: 201
Статус: sl

очередной вопрос по squid

Сообщение demsl » 10.07.2013 11:00

поставил на шлюз сквида, конфиг минимальный:

Код:

http_port 127.0.0.1:3128 transparent http_port 192.168.1.1:3128 transparent cache_dir ufs /var/spool/squid 512 16 256 cache_mem 64 MB maximum_object_size 5 MB hierarchy_stoplist cgi-bin ? acl localnet src 192.168.1.0/24 acl localhost src 127.0.0.0/8 acl all src 0.0.0.0/0.0.0.0 http_access allow localnet http_access allow localhost http_access allow all memory_pools on memory_pools_limit 50 MB error_directory /usr/share/squid/errors/Russian-koi8-r visible_hostname seet


завернул запросы на 3128: -t nat -A PREROUTING -i eth1 ! -d 192.168.1.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 192.168.1.1:3128

перезапуск сети - и юзеры получают ERR_ACCESS_DENIED

в какую сторону копать?
PS: понимаю, что http_access allow all оставлять нельзя и потом сменю на deny, просто пытался разобраться, где проблема
Спасибо сказали:

Аватара пользователя
skeletor
Сообщения: 1224
Статус: Диффурщик
ОС: FreeBSD

Re: очередной вопрос по squid

Сообщение skeletor » 10.07.2013 14:00

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

Аватара пользователя
kisil
Сообщения: 204
ОС: Slackware 13,37-14

Re: очередной вопрос по squid

Сообщение kisil » 11.07.2013 01:04

Может правило заворачивания не верное.
Попробуйте вот такое:

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

-t nat -A PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 192.168.1.1:3128
Спасибо сказали:

Аватара пользователя
demsl
Сообщения: 201
Статус: sl

Re: очередной вопрос по squid

Сообщение demsl » 11.07.2013 09:40

kisil, спасибо, но думаю, что дело не в правиле, тк выдаёт уже сквидовскую страницу ошибки, т.е. на сквид заворачитвает

skeletor, спасибо, попробую
Спасибо сказали:

vlad001
Сообщения: 31

Re: очередной вопрос по squid

Сообщение vlad001 » 26.07.2019 23:15

Здравствуйте! Вопрос, squid в прозрачном режиме (в том числе https), хочу часть сайтов перенаправлять (redirect) с http на https (те что могут и так и так открываться, но чтоб было только одно). Для этого добавил к конфигу часть:

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

acl PORT80 localport 80
acl MYSITE dstdomain "/etc/squid/redirect"
http_access deny PORT80 MYSITE
deny_info 301:https://%H%R MYSITE
Полный конфиг:
Spoiler

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

acl localnet src 192.168.0.0/16
acl localnet src fc00::/7
acl localnet src fe80::/64
acl globalIPv6 src ipv6
acl PORT80 localport 80
acl MYSITE dstdomain "/etc/squid/redirect"
http_access deny PORT80 MYSITE
deny_info 301:https://%H%R MYSITE
acl ftp proto FTP
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
acl directlist url_regex -i "/etc/squid/directlist"
negative_ttl 0 seconds
dns_nameservers 192.168.2.1
max_filedescriptors 8192
via off
forwarded_for off
follow_x_forwarded_for deny all
request_header_access cache-control deny all
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow globalIPv6
http_access allow localnet
http_access allow localhost
http_access deny all
http_access allow directlist
always_direct allow directlist
http_port 3128
http_port 3129 intercept
https_port 3130 intercept ssl-bump connection-auth=off options=ALL cert=/etc/squid/squidCA.pem
sslproxy_flags DONT_VERIFY_PEER
sslproxy_cert_error allow all
acl step1 at_step SslBump1
ssl_bump peek step1
coredump_dir /var/spool/squid
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
cache_mem 4096 MB
maximum_object_size_in_memory 4096 KB
cache_dir ufs /var/spool/squid 2048 16 256
maximum_object_size 4 MB
access_log daemon:/var/log/squid/access.log squid
logfile_rotate 10
debug_options ALL,1 #85,0
netdb_filename none
error_directory /usr/share/squid/errors/ru
cache_peer 127.0.0.1 parent 8118 0 no-query no-digest
cache_peer_access 127.0.0.1 deny CONNECT
cache_peer 127.0.0.2 parent 8079 0 no-query
cache_peer_access 127.0.0.2 allow CONNECT
always_direct allow ftp
always_direct deny all
never_direct allow all
cache_effective_user proxy
cache_effective_group proxy

Стал выполняться редирект, но только если squid работает в прозрачном режиме (в браузере не прописан). Если прописать в браузере прокси (192.168.2.1:3128), то редирект перестаёт работать.
Спасибо сказали:

Аватара пользователя
McSim
Сообщения: 419
Статус: Экспериментатор
ОС: заGNU/Linux Debian

Re: очередной вопрос по squid

Сообщение McSim » 29.07.2019 10:39

Боюсь, что squid видит в intercept режиме, что клиент подключается к порту 80, а в обычном режиме - к порту 3128.
Могу ошибаться, но мне кажется именно поэтому не срабатывает правило acl PORT80 localport 80
Добавлено (10:43):
Можно попробовать заменить

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

acl PORT80 localport 80
на

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

acl PORT80 port 80
Добавлено (10:45):
А еще мне кажется, что в intercept режиме - это не будет работать из-за проблем с SSL. Squid в данном случае - это man-in-the-middle attack (MITM).
Спасибо сказали:

vlad001
Сообщения: 31

Re: очередной вопрос по squid

Сообщение vlad001 » 02.08.2019 19:18

McSim писал:
29.07.2019 10:39
Можно попробовать заменить

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

acl PORT80 localport 80

на

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

acl PORT80 port 80
Да так и есть, именно это и помогло. К сожалению ваше сообщение я увидел уже позже. В начале искал что такое localport, нигде толком не описано, только вскользь. Потом просто поменял его на port, просто исходя из того что в конфиге он встречается. Сейчас фрагмент выглядит вот так:

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

acl PORT80 port 80
acl MYSITE dstdomain "/etc/squid/redirect"
http_access deny PORT80 MYSITE
deny_info https://%H%R MYSITE
Не понял, для чего конкретно добавлялся код 301, но и так редиректит с кодом 302.
McSim писал:
29.07.2019 10:39
А еще мне кажется, что в intercept режиме - это не будет работать из-за проблем с SSL. Squid в данном случае - это man-in-the-middle attack (MITM).
Не совсем так, я пытаюсь выполнить редирект с http на https, то что это mitm, согласен, но это не имеет значения и к ошибкам не приводит.
Спасибо сказали: