LINUX.ORG.RU
ФорумAdmin

Squid + маршруты CentOS 7

 , ,


0

1

Доброго воемени суток!

Возникла необходимость в настройке прокси сервера для маршрутизации сети в интернет и защищенную сеть.

Дано:

Сеть пользователей 192.168.100.0/24, в этой же сети находится тп-линк, раздающий интернет. Squid на CentOS 7 с ip адресом 192.168.100.50 и шлюзом 192.168.100.1 (кушает интернет от роутера и раздает на пк). Второй интерфейс: 192.168.1.60 с шлюзом 192.168.1.1 через который идет вход в защищенную сеть.

Проблема: При выставлении маршрута до необходимого ip через шлюз на втором интерфейсе, ПК видят защищенную сеть, но не видят интернет. Убираем маршрут, пропадает сеть, появляется интернет. iptables отключен, selinux отключен. А помимо хождения в браузере компам нужно еще и напрямую ходить в защищенную сеть. Доступ к циске для настройки закрыт.

Буду благодарен любой вминяемой идее т.к. мозг уже отказывается что-либо придумать.

Как понял я. Вам надо раздать маршрут клиентам до сети (какой?) через 192.168.100.50. Это решается или через dhcp (что лучше), или через роутер 192.168.100.1 который будет отдавать редиректы, или статиком на компах пользователей. Если сеть за 192.168.1.1 ничего не знает о 192.168.100.0/24 и нет возможности сообщить ей об этом, то можно замаскарадить.
Но лучше чуть больше подробностей.

anc ★★★★★ ()
Ответ на: комментарий от anc

Надо раздать маршрут клиентам до сети 10.10.10.0/24(сеть ничего не знает о 192.168.100.1), роутер 192.168.100.1 не знает эту сеть. На cisco поднят порт и выделен один ip адрес(192.168.1.60), который может ходить в эту сеть.

На прокси 2 сетевые, eth0 смотрит в 192.168.100.0/24(оттуда цепляет пользователей и перенаправляет на 10.10.10.0/24), eth1 смотрит (он же наш 192.168.1.60) имеет доступ к 10.10.10.0/24.

Сейчас это работает так:

В одном браузере пользователя забит прокси, если ввести в нем нужный адрес(10.10.10.10) то пакет пойдет: ПК -> 192.168.100.1(роутер)->192.168.100.50(eth0)->192.168.1.1(шлюз на eth1)->VPN канал -> 10.10.10.10.

Я так предполагаю что если просто на ПК выставить основным шлюзом прокси сервер или добавить прокси в глобальные конфиги ПК, то маршрут пойдет таким путем и из программы(толстого клиента). Но фишка в том что при таком раскладе прокси не раздает интернет(да и на самом прокси в браузере интернета нет, но yum работает).

Seiferot ()
Ответ на: комментарий от Seiferot

Приложуха у клиента не умеет работать с прокси? Тогда как я описал выше
1. у клиента должен быть роут до 10.10.10.0/24 через 192.168.100.50
2. на 192.168.100.50 должен быть включен форвардинг
3. на 192.168.100.50 замаскарадить адреса уходящие через eth1

anc ★★★★★ ()
Ответ на: комментарий от anc

С прокси к сожалению не умеет работать.

На клиенте прописывал route add -p 10.10.10.10 MASK 255.255.255.0 192.168.100.50

форвардинг включен, через прокси в браузере на вебморду проскакивает

С маскардингом увы не дружу

Seiferot ()
Ответ на: комментарий от Seiferot

Учитывая что у вас " iptables отключен" достаточно этого правила

iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth1 -j MASQUERADE

anc ★★★★★ ()
Ответ на: комментарий от Seiferot

Ну вот, теперь вам еще это надо и для варианта перезагрузки.
ВАЖНО делаете на свой страх и риск Все ниже описанное только для варианта «выключен iptables и выключен firewalld» «и мы никогда ими не пользовались»
Для этого надо поправить файл /etc/sysconfig/iptables
На всякий случай сделайте бэкап предыдущего, а то вдруг там у вас там какие-то еще правила были
1. Приводим файл /etc/sysconfig/iptables к виду

*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.100.0/24 -o eth1 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT

2. Разрешаем запуск iptables
systemctl enable iptables.service

3.Проверяем после ребута (если такое возможно) что все работает

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.