Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Вопрос по SQUID (делаю прозрачный прокси на хотспоте) / 12 сообщений из 12, страница 1 из 1
04.07.2013, 12:26
    #38320267
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Есть сервер с FreeBSD 8.2 x64, используется пакетный фильтр pf.
Установлен из портов Squid 3.3.
Конфигурация сквида:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
acl MGMT proto cache_object
http_access allow MGMT localhost
http_access deny MGMT

acl IP_LOCAL       src 127.0.0.1/32
acl IP_LOCAL       src 10.10.0.250/32
acl IP_NETWORK     src 10.10.0.0/24
acl IP_NETWORK     src 10.10.1.0-10.10.9.255/32
acl IP_NETWORK     src 10.10.10.0/24
acl IP_CLIENTS     src 10.10.200.0/24
acl IP_USERS       src 10.10.100.0-10.10.199.255/32
acl IP_RESTRICTED  src 10.10.255.0/24
acl ACL_BLOCKED    arp 11:12:13:14:15:16

acl PORT_WEB port 80
acl PORT_WEB port 443
acl PORT_WEB port 8080
acl PORT_WEB port 8443
acl PORT_WEB port 1025-65535
acl PORT_SSL port 443

acl METHOD_CONNECT method CONNECT
acl METHOD_ALLOW method GET
acl METHOD_ALLOW method POST
acl METHOD_ALLOW method HEAD

deny_info    http://hotspot.localdomain/errors/restricted.html IP_RESTRICTED
deny_info    http://hotspot.localdomain/errors/blocked.html IP_BLOCKED
deny_info    ERR_ACCESS_DENIED all

http_access  deny   ACL_BLOCKED
http_access  deny   !PORT_WEB
http_access  allow  METHOD_CONNECT PORT_SSL
http_access  deny   METHOD_CONNECT !PORT_SSL
http_access  deny   !METHOD_ALLOW
http_access  deny   IP_RESTRICTED
http_access  allow  IP_LOCAL
http_access  allow  IP_CLIENTS
http_access  allow  IP_USERS
http_access  deny   all

#cache_dir ufs /var/squid/cache/squid 100 16 256
coredump_dir /var/squid/cache/squid

refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

http_port 10.10.0.250:8080
http_port 10.10.0.250:3128 transparent



Сквид собран с поддержкой прозрачного прокси для PF, на PF пока что перенаправление трафика не включено (поэтому и конфигурацию pf.conf не привожу).
Прозрачное проксирование пока не использую, хочу отладить сам прокси.

Адресация хотспота — 10.10.0.0/16. 10.10.0.250 — это сервер, он же прокси-сервер, 10.10.100.0/24 — пользователи, остальные подсети пока не важны.

Если я подключаюсь к хотспоту, на устройстве (планшет, ноутбук) вручную задаю прокси-сервер 10.10.0.250:8080 — все работает.
Если задаю прокси-сервер 10.10.0.250:3128 — при попытке открыть любую страницу получаю сообщение "Пустой ответ (нулевой длины)", в логах прокси сообщения TCP_MISS/502, если использовать tcpdump, то видно что прокси получает отлуп "502 Bad Gateway".

Отчего так?

________________________
Мы смотрим с оптимизмом...
...в оптический прицел.
...
Рейтинг: 0 / 0
04.07.2013, 12:37
    #38320295
bga83
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Alibek B.Если задаю прокси-сервер 10.10.0.250:3128 — при попытке открыть любую страницу получаю сообщение "Пустой ответ (нулевой длины)", в логах прокси сообщения TCP_MISS/502, если использовать tcpdump, то видно что прокси получает отлуп "502 Bad Gateway".

Отчего так?
потому что на порту 3128 он работает в прозрачном режиме, то есть по сути по другому протоколу. Если на порту 8080 работает корректно, то заворачивай Pf-ом трафик на порт 3128 и не прописывая прокси смотри результат.

Но имей ввиду не весь трафик прозрачно проксируется, тот же https не выйдет так завернуть
...
Рейтинг: 0 / 0
04.07.2013, 12:45
    #38320319
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
На HTTPS я и не рассчитываю. Я либо его просто заблокирую, либо разрешу метод CONNECT.

Но по поводу работы прозрачного прокси мне непонятно, почему сам прокси-сервер получает ошибку 502?
...
Рейтинг: 0 / 0
04.07.2013, 13:12
    #38320380
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
bga83Если на порту 8080 работает корректно, то заворачивай Pf-ом трафик на порт 3128 и не прописывая прокси смотри результат.
Хм... А почему может не заворачиваться?
Конфигурация pf.conf такая:
Код: plaintext
1.
2.
3.
4.
if_wifi = "vlan900" #интерфейс прокси-сервера, 10.10.0.250/16
port_www = "{ 80 443 1025:65535 }"
table <hotspot> { 10.10.100.0/24 }
rdr on $if_wifi proto tcp from <hotspot> to { any } port $port_www -> $if_wifi port 3128

Запросы на прокси даже не приходят.
...
Рейтинг: 0 / 0
04.07.2013, 13:21
    #38320403
k-nike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Alibek B.,
Потому что, как минимум, не указан сервер на который заворачивать трафик.

Пример правильного редиректа:
Код: powershell
1.
rdr on em1 proto tcp from 192.168.X/24 to any port 80 -> 127.0.0.1 port 3128
...
Рейтинг: 0 / 0
04.07.2013, 14:07
    #38320510
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Вообще-то указан, pf позволяет использовать интерфейс, подставляя вместо него адрес.
Код: plaintext
1.
2.
3.
4.
#pfctl -sn
rdr on vlan900 inet proto tcp from <hotspot> to any port = http -> 10.10.0.250 port 8080
rdr on vlan900 inet proto tcp from <hotspot> to any port = https -> 10.10.0.250 port 8080
rdr on vlan900 inet proto tcp from <hotspot> to any port 1025:65535 -> 10.10.0.250 port 8080
...
Рейтинг: 0 / 0
04.07.2013, 14:09
    #38320511
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
В предыдущем сообщении порт 3128, а не 8080.
...
Рейтинг: 0 / 0
04.07.2013, 14:18
    #38320539
bga83
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Alibek B.,
Не исключено, что фаервольные правила режут

таблицу маршрутизации покажи с этого сервера. Конкретно интересует не находится ли дефолтный шлюз в адресном пространстве 10.10.0.250/16?
...
Рейтинг: 0 / 0
04.07.2013, 14:49
    #38320594
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Я пробовал делать skip для этого интерфейса и pass quick.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
# netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            10.1.128.1         UGS       426 78823619 vlan20
10.1.127.0/24      link#2             U           0        0    em1
10.1.127.200       link#2             UHS         0        0    lo0
10.1.128.0/24      link#6             U           0      390 vlan20
10.1.128.10        link#6             UHS         0     3319    lo0
10.10.0.0/16       link#8             U          17    27660 vlan900
10.10.0.250        link#8             UHS         0     1169    lo0
127.0.0.1          link#4             UH          0   203262    lo0
195.209.124.0/25   link#7             U           0        0 vlan100
195.209.124.100    link#7             UHS         0        0    lo0
239.0.0.0/8        10.1.127.200       US        432 221868283    em1

Можно ли как-то отследить трафик? В rdr почему-то нельзя сделать log.
...
Рейтинг: 0 / 0
04.07.2013, 18:06
    #38321014
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Включил роутинг, в pf.conf указал строку "nat on $if_int from <hotspot> -> ($if_int:0)" — так работает.
Через обычный прокси-сервер (если его указывать в настройках) — тоже работает.
А через прозрачный прокси-сервер не хочет.
...
Рейтинг: 0 / 0
07.07.2013, 01:14
    #38323073
gumeniuc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Alibek B.,

Код: plaintext
squid -v
...
Рейтинг: 0 / 0
10.07.2013, 00:12
    #38326158
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по SQUID (делаю прозрачный прокси на хотспоте)
Забыл написать.
С конфигурацией прокси все было нормально.
Забыл в pf разрешить DNS-запросы от клиентов.
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Вопрос по SQUID (делаю прозрачный прокси на хотспоте) / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]