Прозрачный Squid с различными подсетями.

Просмотров: 165

Использование Squid transparent proxy с фильтрацией HTTPS с различными подсетями.
Article Image

Здарова. Мне тут один товарищ по имени Kirill Vashkevich прислал интересный материал, в частности статью, которую я собственно и выкладываю от его имени. Читаем!

Установив и настроив Squid transparent proxy, меня разочаровала трудность его использования с различными подсетями, ведь наш кальмар должен быть для клиентов шлюзом подсети, а это далеко не всегда соответствует реалиям в различных корпоративных сетях. Собственно установка дополнительных прокси серверов на разных сегментах сети не очень устраивает, что и сподвигло более детально рассмотреть вариант настройки прозрачного прокси для работы с любым из ее сегментов. 

Конфигурация: Debian 8 Jessie x64 (Virtual Machine), Squid Transparent Proxy, сеть более 500 персональных компьютеров и более 5 подсетей.

Предположим, что вы уже настроили по статье Кальмара с сетью 10.0/24, отладили конфигурацию и готовы к работе, но ваши клиенты находятся в различных подсетях: 10.0/24 и 20.0/24, что и даст о себе знать в первые же минуты работы. Решение не заставило себя долго ждать - Использование VLAN и 1 физического сетевого интерфейса на каждую клиентскую подсеть. 

Подключив дополнительные физические сетевые интерфейсы и поместив их в различные VLAN  (Для их адресации в различных сетях). 

Для примера:

cat /etc/network/interfaces

auto eth0
iface eth0 inet static
adress 192.168.10.253
netmask 255.255.255.0
gateway 192.168.10.254

auto eth1
iface eth1 inet static
adress 192.168.20.253
netmask 255.255.255.0
gateway 192.168.20.254

Каждый интерфейс находится в различных VLAN-ах (Отдельная настройка на сетевом оборудовании, опускаю настройку)

Обязательно должен быть включен ipv4 forward:

 echo 1 > /proc/sys/net/ipv4/ip_forward

Правила IPTABLES (заданы как from anywhere to anywhere) :
iptables -t nat -A PREROUTING -p tcp -m tcp  --dport 443 -j REDIRECT --to-ports 3129
iptables -t nat -A PREROUTING -p tcp -m tcp  --dport 80 -j REDIRECT --to-ports 3128

Поднимаем интерфейсы:
ifconfig eth0 up
ifconfig eth1 up

Предварительно в squid.conf в разделе настройки портов убираем dest ip и оставляем только порт.

http_port 3128 intercept options=NO_SSLv3:NO_SSLv2
http_port 3130 options=NO_SSLv3:NO_SSLv2 
https_port 3129 intercept ssl-bump options=ALL:NO_SSLv3:NO_SSLv2 connection-auth=off cert=/etc/squid/squidCA.pem

Проверяем:
ifconfig (Интерфейсы должны подняться с заданными нами адресами)
systemctl restart squid.service
tail -f /var/log/squid/access.log (Вывод логирования в реальном времени)

ping 192.168.10.253 (from client)
ping 192.168.20.253 (from client)


Настройка интерфейсов должна быть:
Для клиентов 20.0/24
ip address: 192.168.20.x/24
gateway: 192.168.20.253

Для клиентов 10.0/24
ip address: 192.168.10.x/24
gateway: 192.168.10.253

Вот собственно и все, настройка завершена, Squid уже начал принимать соединения и обрабатывать их.

 

Опубликовано 18 Января 2016 в категории Squid

comments powered by HyperComments
Поиск по сайту:

Теги:

Популярные статьи:

Новости IT:

^ Наверх