The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Прозрачный прокси для VLAN-ов"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Настройка Squid и других прокси серверов (Прозрачный proxy)
Изначальное сообщение [ Отслеживать ]

"Прозрачный прокси для VLAN-ов"  +/
Сообщение от vladimirm email(ok) on 17-Авг-11, 13:10 
Не могу настроить прозрачный прокси для VLAN-ов.
На Cisco 2960 организовано 10  VLAN-ов.
Для организации доступа в Интернет стоит шлюз на ASP Linux V
eth0 подключен к trunk порту Cisco 2960, созданы виртуальные vlan-устройства eth0.1, eth0.2, ... eth0.10
Вопрос: как пробросить трафик с VLAN-ов через iptables на squid, достаточно ли стандартных настроек  squid.

Настройка прозрачного прокси без  VLAN-ов (eth0 (intranet) — eth1 (internet) затруднений не вызывает.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Прозрачный прокси для VLAN-ов"  +/
Сообщение от Zl0 (ok) on 17-Авг-11, 15:06 
> Не могу настроить прозрачный прокси для VLAN-ов.
> На Cisco 2960 организовано 10  VLAN-ов.
> Для организации доступа в Интернет стоит шлюз на ASP Linux V
> eth0 подключен к trunk порту Cisco 2960, созданы виртуальные vlan-устройства eth0.1, eth0.2,
> ... eth0.10
> Вопрос: как пробросить трафик с VLAN-ов через iptables на squid, достаточно ли
> стандартных настроек  squid.
> Настройка прозрачного прокси без  VLAN-ов (eth0 (intranet) — eth1 (internet) затруднений
> не вызывает.

Достаточно, а чем именно трафик из вланов отличается если он раскрывается на интерфесе, как у вас, делайте аналогичные правила redirect для интерфейсов eth0.1, eth0.2 ну может access list в прокси придется поправить если в влан подсети другие используются.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Прозрачный прокси для VLAN-ов"  +/
Сообщение от vladimirm (ok) on 17-Авг-11, 16:14 
>[оверквотинг удален]
>> eth0 подключен к trunk порту Cisco 2960, созданы виртуальные vlan-устройства eth0.1, eth0.2,
>> ... eth0.10
>> Вопрос: как пробросить трафик с VLAN-ов через iptables на squid, достаточно ли
>> стандартных настроек  squid.
>> Настройка прозрачного прокси без  VLAN-ов (eth0 (intranet) — eth1 (internet) затруднений
>> не вызывает.
> Достаточно, а чем именно трафик из вланов отличается если он раскрывается на
> интерфесе, как у вас, делайте аналогичные правила redirect для интерфейсов eth0.1,
> eth0.2 ну может access list в прокси придется поправить если в
> влан подсети другие используются.

vlan1 - 192.168.1.0/24
vlan2 - 192.168.2.0/24
.....................
и.т.д
В iptables прописан redirect для всех интерфейсов, а в access list прописаны все подсети. Чуть позже выложу конфигурациооные файлы.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Прозрачный прокси для VLAN-ов"  +/
Сообщение от vladimirm (ok) on 17-Авг-11, 17:24 
>[оверквотинг удален]
>> Достаточно, а чем именно трафик из вланов отличается если он раскрывается на
>> интерфесе, как у вас, делайте аналогичные правила redirect для интерфейсов eth0.1,
>> eth0.2 ну может access list в прокси придется поправить если в
>> влан подсети другие используются.
> vlan1 - 192.168.1.0/24
> vlan2 - 192.168.2.0/24
> .....................
> и.т.д
> В iptables прописан redirect для всех интерфейсов, а в access list прописаны
> все подсети. Чуть позже выложу конфигурациооные файлы.

eth0.1 - 192.168.1.253
eth0.2 - 192.168.2.253
......................
eth0.10 - 192.168.10.253

iptables

# Generated by iptables-save
*nat
:PREROUTING ACCEPT [37:3041]
:POSTROUTING ACCEPT [2:185]
:OUTPUT ACCEPT [17:1157]
-A PREROUTING -s 192.168.1.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.2.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.3.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.4.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.5.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.6.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.7.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.8.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.9.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -s 192.168.10.0/255.255.255.0 -i eth1 -j DROP
-A PREROUTING -i eth0.1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.253:3128
-A PREROUTING -i eth0.2 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.2.253:3128
-A PREROUTING -i eth0.3 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.3.253:3128
-A PREROUTING -i eth0.4 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.4.253:3128
-A PREROUTING -i eth0.5 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.5.253:3128
-A PREROUTING -i eth0.6 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.6.253:3128
-A PREROUTING -i eth0.7 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.7.253:3128
-A PREROUTING -i eth0.8 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.8.253:3128
-A PREROUTING -i eth0.9 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.9.253:3128
-A PREROUTING -i eth0.10 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.10.253:3128

-A POSTROUTING -o eth1 -j SNAT --to-source inet-ip
COMMIT
# Completed
# Generated by iptables-save
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [15:972]
-A INPUT -s 192.168.1.0/255.255.255.0 -i eth0.1 -j ACCEPT
-A INPUT -s 192.168.2.0/255.255.255.0 -i eth0.2 -j ACCEPT
-A INPUT -s 192.168.3.0/255.255.255.0 -i eth0.3 -j ACCEPT
-A INPUT -s 192.168.4.0/255.255.255.0 -i eth0.4 -j ACCEPT
-A INPUT -s 192.168.5.0/255.255.255.0 -i eth0.5 -j ACCEPT
-A INPUT -s 192.168.6.0/255.255.255.0 -i eth0.6 -j ACCEPT
-A INPUT -s 192.168.7.0/255.255.255.0 -i eth0.7 -j ACCEPT
-A INPUT -s 192.168.8.0/255.255.255.0 -i eth0.8 -j ACCEPT
-A INPUT -s 192.168.9.0/255.255.255.0 -i eth0.9 -j ACCEPT
-A INPUT -s 192.168.10.0/255.255.255.0 -i eth0.10 -j ACCEPT

-A INPUT -d 127.0.0.1 -j ACCEPT
-A INPUT -d 192.168.1.253 -j ACCEPT
-A INPUT -d 192.168.2.253 -j ACCEPT
-A INPUT -d 192.168.3.253 -j ACCEPT
-A INPUT -d 192.168.4.253 -j ACCEPT
-A INPUT -d 192.168.5.253 -j ACCEPT
-A INPUT -d 192.168.6.253 -j ACCEPT
-A INPUT -d 192.168.7.253 -j ACCEPT
-A INPUT -d 192.168.8.253 -j ACCEPT
-A INPUT -d 192.168.9.253 -j ACCEPT
-A INPUT -d 192.168.10.253 -j ACCEPT

-A INPUT -p udp -m udp --sport 53 -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 5 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT

-A FORWARD -i eth0.1 -j ACCEPT
-A FORWARD -i eth0.2 -j ACCEPT
-A FORWARD -i eth0.3 -j ACCEPT
-A FORWARD -i eth0.4 -j ACCEPT
-A FORWARD -i eth0.5 -j ACCEPT
-A FORWARD -i eth0.6 -j ACCEPT
-A FORWARD -i eth0.7 -j ACCEPT
-A FORWARD -i eth0.8 -j ACCEPT
-A FORWARD -i eth0.9 -j ACCEPT
-A FORWARD -i eth0.10 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

-A OUTPUT -s 127.0.0.1 -j ACCEPT
-A OUTPUT -s 192.168.1.253 -j ACCEPT
-A OUTPUT -s 192.168.2.253 -j ACCEPT
-A OUTPUT -s 192.168.3.253 -j ACCEPT
-A OUTPUT -s 192.168.4.253 -j ACCEPT
-A OUTPUT -s 192.168.5.253 -j ACCEPT
-A OUTPUT -s 192.168.6.253 -j ACCEPT
-A OUTPUT -s 192.168.7.253 -j ACCEPT
-A OUTPUT -s 192.168.8.253 -j ACCEPT
-A OUTPUT -s 192.168.9.253 -j ACCEPT
-A OUTPUT -s 192.168.10.253 -j ACCEPT
-A OUTPUT -s inet-ip -j ACCEPT
COMMIT
# Completed on Thu Mar 17 17:40:25 2011

squid.conf

#Recommended minimum configuration:
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 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
#Recommended minimum configuration:
acl inet src inet-ip
acl vlan_1 src 192.168.1.1-192.168.1.253
acl vlan_2 src 192.168.2.1-192.168.2.253
acl vlan_3 src 192.168.3.1-192.168.3.253
acl vlan_4 src 192.168.4.1-192.168.4.253
acl vlan_5 src 192.168.5.1-192.168.5.253
acl vlan_6 src 192.168.6.1-192.168.6.253
acl vlan_7 src 192.168.7.1-192.168.7.253
acl vlan_8 src 192.168.8.1-192.168.8.253
acl vlan_9 src 192.168.9.1-192.168.9.253
acl vlan_10 src 192.168.10.1-192.168.10.253

delay_pools 1
delay_class 1 2
delay_parameters 1 -1/-1 20000/400000
delay_access 1 allow vlan_3
delay_access 1 deny all

#acl sites_porn dstdom_regex "/etc/squid/porno_ban"
#http_access deny vlan_3 sites_porn


# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
# Deny requests to unknown ports
http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports


http_access allow localhost
http_access allow vlan_3
http_access allow inet
http_access deny all

icp_access allow all

http_port 3128 transparent
server_persistent_connections off

access_log /var/log/squid/access.log squid

acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY

#Suggested default:
refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern .        0    20%    4320

coredump_dir /var/spool/squid

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Прозрачный прокси для VLAN-ов"  +/
Сообщение от Zl0 (ok) on 17-Авг-11, 19:01 
>[оверквотинг удален]
> -A PREROUTING -i eth0.6 -p tcp -m tcp --dport 80 -j DNAT
> --to-destination 192.168.6.253:3128
> -A PREROUTING -i eth0.7 -p tcp -m tcp --dport 80 -j DNAT
> --to-destination 192.168.7.253:3128
> -A PREROUTING -i eth0.8 -p tcp -m tcp --dport 80 -j DNAT
> --to-destination 192.168.8.253:3128
> -A PREROUTING -i eth0.9 -p tcp -m tcp --dport 80 -j DNAT
> --to-destination 192.168.9.253:3128
> -A PREROUTING -i eth0.10 -p tcp -m tcp --dport 80 -j DNAT
> --to-destination 192.168.10.253:3128

Я чего то не понимаю или зачем dnat?
По мне так правило должно выглядеть

iptables -t nat -A PREROUTING -i eth0.10 -p tcp --dport 80 -j REDIRECT --to-port 3128
или даже так
iptables -t nat -A PREROUTING -i eth0.+ -p tcp  ! -d 192.168.0.0/16 --dport 80 -j REDIRECT --to-port 3128

или у вас сквид стоит на третьей удаленной машинке?

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Прозрачный прокси для VLAN-ов"  +/
Сообщение от vladimirm (ok) on 18-Авг-11, 11:44 
>[оверквотинг удален]
>> -A PREROUTING -i eth0.10 -p tcp -m tcp --dport 80 -j DNAT
>> --to-destination 192.168.10.253:3128
> Я чего то не понимаю или зачем dnat?
> По мне так правило должно выглядеть
> iptables -t nat -A PREROUTING -i eth0.10 -p tcp --dport 80 -j
> REDIRECT --to-port 3128
> или даже так
> iptables -t nat -A PREROUTING -i eth0.+ -p tcp  ! -d
> 192.168.0.0/16 --dport 80 -j REDIRECT --to-port 3128
> или у вас сквид стоит на третьей удаленной машинке?

Сквит стоит не на третей машине, а это один из многих вариантов, который пробовал в настройках iptables. Ваш вариант опробывал первым - та же картина.
Попробую поднять шлюз на другом Linuxe, может ASP кривой, мы его преобрели акурат перед его смертью.
Главное, что Вы подтвердили мои предположения, что виртуальные интерфейсы ничем не отличаются от обычных и то что мне нужно сделать - реально.  

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Прозрачный прокси для VLAN-ов"  +/
Сообщение от Zl0 (ok) on 18-Авг-11, 12:39 
Смотрите логи squid если там совсем ничего нет после того как настроили редирект на 3128, то проблема в правилах iptables
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру