Автор Тема: squid + iptables, НЕ прозрачный прокси  (Прочитано 47404 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн layabout

  • Участник
  • **
  • Сообщений: 13
  • Karma: +0/-0
squid + iptables, НЕ прозрачный прокси
« : 20 Январь 2014, 10:44 »
Здравствуйте. имеется проблемка на которую у меня знаний не хватает, уже пару месяцев гуглю, решение как бы нашел , но оно не устраивает. Есть ли другие решения или только это - весь трафик 8080 через iptables на прозрачный прокси.
Имеется squid с вбитыми ip-пользователями (инет получают не все на предприятии).
Iptables - стандартные правила открытия и закрытия портов.
Шлюз настроен.
lan eth0 1.1.1.1
wan eth1 2.2.2.2

На клиентах прокси работает отлично, но вот по шлюзу ничего не идет, вернее идет, только с таким правилом -A POSTROUTING -s 1.1.1.0/24 -o eth1 -j MASQUERADE
как я понимаю, это я клиента 1,1,1,2 выпускаю в интернет через нат.
боюсь если дам всю сеть в нат, то не смогу следить за трафиком, ведь прокси даже прописывать не надо будет, Интернет будет работать через шлюз.
решение такое - завернуть в iptables весь трафик на прозрачный squid. Является ли это решение правильным ?
смогу ли я так отслеживать статистику посещение, будет ли блокирован торрент и подобные вредные кушалки трафика?

Хотелось бы так - Обычный прокси, с работающим шлюзом, где юзеры могут через него отправлять почту через этот шлюз, без НАТа.
а тут либо всю сеть в нат, либо еще пицот часов гугла :(

Подскажите. пишите, любой конфиг выложу, дедлайн сдачи сервера уже прошел (((((




Оффлайн Vicpo

  • Супер модераторы
  • Свой человек
  • ***
  • Сообщений: 2170
  • Karma: +5/-0
  • Jabber: vicpo@xmpp.kz
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #1 : 20 Январь 2014, 11:05 »
Хотелось бы так - Обычный прокси, с работающим шлюзом, где юзеры могут через него отправлять почту через этот шлюз, без НАТа.
Ну первое - почта через прокси сервер не пойдет (имеется ввиду SMTP, POP3, IMAP) тут нужен разрешенный доступ на шлюзе/firewall и тд.
Если нужен прозрачный прокси - то в сети куча документации по squid в режиме transparent.
Как вариант настроить port mapping для почты (если используется один внешний сервер для работы с почтой) и прокси сервер в обычном режиме.

Оффлайн B@F

  • Доброй души человек, если кого обижу то пишите мне, я не специально.
  • Administrator
  • Свой человек
  • *****
  • Сообщений: 1277
  • Karma: +7/-0
    • linuxforum.kz
  • Jabber: baf@xmpp.kz
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #2 : 20 Январь 2014, 11:34 »
Я думаю для начала выложите конфиг прокси и правила фаервола. Это один и тот же сервер?
Поправьте, если я ошибаюсь, буду тока рад.

Оффлайн layabout

  • Участник
  • **
  • Сообщений: 13
  • Karma: +0/-0
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #3 : 20 Январь 2014, 14:12 »
squid и iptables на 1 серdере, squid настроен просто, разрешить одним интернет, другим запретить. ничего лишнего.

iptables

-A POSTROUTING -p tcp -m tcp -m multiport -j MASQUERADE --dports 110,25

-A INPUT -p tcp -m tcp -i eth0 --dport 22 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp -i eth0 --dport 80 -j ACCEPT
-A INPUT -p udp -m multiport -i eth0 --ports 135,136,137,138,139,445 -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 443 -j ACCEPT

-A FORWARD -m state -i eth1 --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o eth1 -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 25 -j ACCEPT

-A FORWARD -p tcp -m tcp --dport 110 -j ACCEPT

-A FORWARD -p udp -m udp --dport 53 -j ACCEPT
-A FORWARD -p udp -m udp --sport 53 -j ACCEPT
-A FORWARD -p tcp -m tcp -s 1.1.1.0/24 --dport 25 -j ACCEPT

-A FORWARD -p tcp -m tcp -s 1.1.1.0/24 --dport 110 -j ACCEPT

-A OUTPUT -p udp -m udp --sport 53 -j ACCEPT
-A OUTPUT -p icmp -j ACCEPT

Цитировать (выделенное)
Ну первое - почта через прокси сервер не пойдет (имеется ввиду SMTP, POP3, IMAP) тут нужен разрешенный доступ на шлюзе/firewall и тд.
про это знаю, вот не получилось ниразу настроить проходить через шлюз почтового трафика, и интернет сайты не пингуются, шлюз на сервере включен.

Цитировать (выделенное)
Как вариант настроить port mapping для почты (если используется один внешний сервер для работы с почтой) и прокси сервер в обычном режиме.
вот тут поподробнее, копать надо тут, но не хватает знаний, сколько всего перепробовал, миллион разных правил с инета брал,  и никак (((

если весть трафик завернуть с iptables  на squid, и сделать правило -A POSTROUTING -s 1.1.1.0/24 -o eth1 -j MASQUERADE. то все работает, но есть ли это правильно???? не могу понять и получается что всем юзерам даем НАТ. а как быть с блокировками torrent, и прочих сетевых программ которые работают не по 8080 порту.



Оффлайн B@F

  • Доброй души человек, если кого обижу то пишите мне, я не специально.
  • Administrator
  • Свой человек
  • *****
  • Сообщений: 1277
  • Karma: +7/-0
    • linuxforum.kz
  • Jabber: baf@xmpp.kz
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #4 : 20 Январь 2014, 17:31 »
http://linuxforum.kz/index.php/topic,5489.0.html - отправка почты из локальной сети.

В нате нужно запретить все, а разрешить только нужные хосты и порты.

Прокси должен быть настроен как транспорент. У вас так? А у вас не прозрачный, ну тогда тем более запретить форвардинг и вырубить нат, а трафик заворачивать у клиента, путем прописывания ручками в каждой программе, что она должна работать через прокси.
Кстате в том же торрент клиенте есть настройка работать через прокси.
А вот как быть с другим трафиком то я бы в офисе его запретил, нефиг торрентами фильмы пиратские качать.

Что бы не парится и получить максимум пользы и удовольствия советую поставить Zentyal или любой другой аналогичный дистрибутив. Там и просто и скорость будет шейпить сразу по всем портам и программам.
Поправьте, если я ошибаюсь, буду тока рад.

Оффлайн layabout

  • Участник
  • **
  • Сообщений: 13
  • Karma: +0/-0
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #5 : 21 Январь 2014, 09:57 »
Цитировать (выделенное)
Прокси должен быть настроен как транспорент. У вас так?
у меня НЕТ. вот думаю это хорошая идея, подскажите? правильно ли так сделать. Это быстрое решение проблем. Сейчас везде прокси прописано ручками на клиентах.
в нете натолкнулся на "заворачивать трафик с 21,80,81,82,83,88,8080,443 портов на squid"  будут ли эти порты работать через squid,
такие правила прописать что бы завернуть трафик на squid по нужным портам?
в гугле полно всяких правил, вот примеры
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables добавил iptables -t nat -A PREROUTING -s 192.168.x.x -p tcp -m multiport --dport 80,81,82,83,88, 8080 -j DNAT --to 192.168.x.x:3128
iptables -t nat -A PREROUTING -i eth2 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.1:3128
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
iptables -t nat -A PREROUTING -i eth2 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.1.1:3128
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 8080 -j REDIRECT --to-ports 3128
запутали еще больше, мне ведь надо просто определенные порты перенаправить c eth0 (lan)  на eth1 (wan)
понял одно, надо ставить транспарент, заворачивать трафик на squid и не мучатся :)

з.ы
Цитировать (выделенное)
Что бы не парится и получить максимум пользы и удовольствия советую поставить Zentyal или любой другой аналогичный дистрибутив.
скачал как то его, но руки не дошли попробовать. не стал ставить аналогичные сервера по причине что компания на 300 пользователей, которых сейчас надо выпустить в нет, в будущем настроить днс сервер и почтовый сервер. сейчас ДНС и почта крутится на стареньком сервере novell netware 4. не думаю что зентиал и подобные подходят для такого сегмента, хотя возможно ошибаюсь

кстати скоро создам темку по настройке секондари днс ))))))

Оффлайн Yuriy_Y

  • Модераторы
  • Активный участник
  • *****
  • Сообщений: 483
  • Karma: +9/-0
  • Jabber: yuriy_y@xmpp.ru
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #6 : 21 Январь 2014, 10:14 »
Zentyal как раз для этого и предназначен. Я пробовал. Мне просто не подошел потому, что на шлюзах у меня стоит астериск, чтоб его запустить, пришлось бы слишком много перепахивать. А чисто для шлюза и почтового сервера этот дистр как нельзя лучше подходит. Я его щупал немного. Мне понравился. Я бы даже продонатил разработку немного, если б применял его где.
С уважением, Юрий

Оффлайн НаРазДва

  • Полноправный участник
  • ***
  • Сообщений: 136
  • Karma: +3/-0
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #7 : 21 Январь 2014, 22:35 »
При транспоренте SSL(HTTPS) не проходит. Нужно ручками у клиента прокси прописывать(в браузере или в скайпе).  Я на фряхе транспорент подымал и НАТил пакеты приходящие на 80 порт на порт сквида (к примеру 8080). Отлично работало.
« Последнее редактирование: 21 Январь 2014, 22:56 от НаРазДва »

Оффлайн Vicpo

  • Супер модераторы
  • Свой человек
  • ***
  • Сообщений: 2170
  • Karma: +5/-0
  • Jabber: vicpo@xmpp.kz
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #8 : 22 Январь 2014, 09:29 »
При транспоренте SSL(HTTPS) не проходит. Нужно ручками у клиента прокси прописывать(в браузере или в скайпе).  Я на фряхе транспорент подымал и НАТил пакеты приходящие на 80 порт на порт сквида (к примеру 8080). Отлично работало.
Кто мешает занатить таким же образом 443-й порт?

Оффлайн Yuriy_Y

  • Модераторы
  • Активный участник
  • *****
  • Сообщений: 483
  • Karma: +9/-0
  • Jabber: yuriy_y@xmpp.ru
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #9 : 22 Январь 2014, 10:32 »
А я чет везде читал, что кальмарчик не умеет проксить ssl. Мож потому, что никто не пробовал? :-)
С уважением, Юрий

Оффлайн Vicpo

  • Супер модераторы
  • Свой человек
  • ***
  • Сообщений: 2170
  • Karma: +5/-0
  • Jabber: vicpo@xmpp.kz
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #10 : 22 Январь 2014, 10:35 »
Он его не проксирует, а создает сквозь себя туннель через метод CONNECT - соответственно он не видит, что внутри SSL туннеля происходит

Оффлайн Yuriy_Y

  • Модераторы
  • Активный участник
  • *****
  • Сообщений: 483
  • Karma: +9/-0
  • Jabber: yuriy_y@xmpp.ru
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #11 : 22 Январь 2014, 11:38 »
А тада смысл заворачивать его на squid? Можно просто iptables'ами выпустить наружу. На моих шлюзах все запросы наружу разрешены по всем портам, строгих правил нет. И только 80-й порт на кальмара идет.
С уважением, Юрий

Оффлайн layabout

  • Участник
  • **
  • Сообщений: 13
  • Karma: +0/-0
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #12 : 22 Январь 2014, 16:46 »
спасибо за ответы, параллельно на другом компутере попробую поставить zentyal, подробности сообщу позже. :)

Оффлайн Yuriy_Y

  • Модераторы
  • Активный участник
  • *****
  • Сообщений: 483
  • Karma: +9/-0
  • Jabber: yuriy_y@xmpp.ru
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #13 : 22 Январь 2014, 17:08 »
Зачем на другом? Virtualbox никто не отменял. И проще, и проблем меньше.
С уважением, Юрий

Оффлайн НаРазДва

  • Полноправный участник
  • ***
  • Сообщений: 136
  • Karma: +3/-0
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #14 : 22 Январь 2014, 21:41 »
А я чет везде читал, что кальмарчик не умеет проксить ssl. Мож потому, что никто не пробовал? :-)

я это проверял, не умеет, но кто мешает прописывать кальмара у клиента, если ssl необходим.

Оффлайн B@F

  • Доброй души человек, если кого обижу то пишите мне, я не специально.
  • Administrator
  • Свой человек
  • *****
  • Сообщений: 1277
  • Karma: +7/-0
    • linuxforum.kz
  • Jabber: baf@xmpp.kz
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #15 : 22 Январь 2014, 21:51 »
Он его не проксирует, а создает сквозь себя туннель через метод CONNECT - соответственно он не видит, что внутри SSL туннеля происходит
А вот оно как работает!!!! Вот теперь многое что проясняется в работе кальмара.  А зачем? А затем что тогда кальмар будет вести статистику, резать скорость. Все делаю так.
Поправьте, если я ошибаюсь, буду тока рад.

Оффлайн Yuriy_Y

  • Модераторы
  • Активный участник
  • *****
  • Сообщений: 483
  • Karma: +9/-0
  • Jabber: yuriy_y@xmpp.ru
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #16 : 22 Январь 2014, 21:56 »
А зачем? А затем что тогда кальмар будет вести статистику, резать скорость.
Кстати да, об этом не подумал. Надо у себя попробовать.
С уважением, Юрий

Оффлайн layabout

  • Участник
  • **
  • Сообщений: 13
  • Karma: +0/-0
Re: squid + iptables, НЕ прозрачный прокси
« Ответ #17 : 29 Январь 2014, 11:47 »
squid перешел на второй план.
здох основной сервер, почта днс и шлюз, за полдня поставил zentyal, понравился, но пота ващпе ужасно ходит. но это в другую тему вопросы http://linuxforum.kz/index.php?topic=5920.0

 

Соц. сети

Вконтакте - linuxforum.kz Вконтакте - LinuxCenter.kZ

СПО в Казахстане

LinuxCenter.kZ Jabber сервер XMPP.kz Baurzhan.info

Прочее

nmgames.kz radio.north.kz