Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Есть инет через прокси, как сделать его прозрачным  (Прочитано 4434 раз)

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

Оффлайн savy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Всем Привет!
Сегодня дали доступ к инету через прокси. Зашёл в System - Preferences - Network proxy, указал параметры. Потом настроил NAT, хотел чтобы другие компы выходили в инет через этот комп с прокси-инетом. NAT, по идее, работает, но инета на сторонних компах нет! Я то думал, что Ubuntu с помощью настроек Network proxy делает прокси прозрачным, но, похоже, это лишь рекомендованные настройки, которые умеют читать некоторые программы (к примеру, Synaptic или Опера).
Подскажите, плиз, как сделать прокси прозрачным (если я правильно выражаюсь).

Оффлайн nops

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Вся реализация прозрачного прокси лежит на плечах сервера. На то он и прозрачный - клиенты его не видят. Для клиентов есть только NAT и никаких настроек прокси на клиенте делать не нужно. Сервер, в свою очередь, ловит пакеты, которые отсылают клиенты для доступа во внешний мир, и сервер их перенаправляет на свой локальный прокси.

На счёт настроек прокси в Gnome: конечно они не глобальные, а только для программ, которые о этих настройках знают и они в них нуждаются. Не все программы смогут работать через прокси из-за особенностей протоколов.

Оффлайн sht0rm

  • Старожил
  • *
  • Сообщений: 3397
    • Просмотр профиля
savy
у вас же получается каскад. Попробуйте squid с cache_peer myproxy parent 8080 no-query

Оффлайн savy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Сервер, в свою очередь, ловит пакеты, которые отсылают клиенты для доступа во внешний мир, и сервер их перенаправляет на свой локальный прокси.

Да, я как раз и хочу, чтобы сервак пихал все клиентские пакеты в прокси, но сделать так не получается ((

у вас же получается каскад. Попробуйте squid с cache_peer myproxy parent 8080 no-query

Пробую сейчас такой вариант, хоть и не понимаю, что такое каскад ))

Оффлайн Silver Ghost

  • Участник
  • *
  • Сообщений: 107
    • Просмотр профиля
Принудительное проксирование через iptables реализуйте и будет вам счастье. :)

Оффлайн savy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Принудительное проксирование через iptables реализуйте и будет вам счастье. :)

А как это? :О

Я попробовал вот так:
*nat
-A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 172.16.0.1:3128
-A POSTROUTING -p tcp --dst 172.16.0.1 -j SNAT --to-source 172.16.0.2
, где:
172.16.0.1 - прокси-сервер;
172.16.0.2 - комп, которому дали инет и через который я хочу раздать инет другим.

В результате, получил ошибку от прокси-сервера о том, что запрос составлен неверно. Т.е., как я понимаю, на прокси-сервер нужно отправлять специально сформированный запрос и фокус с iptables не прошёл, пора подключать squid ))

Оффлайн Silver Ghost

  • Участник
  • *
  • Сообщений: 107
    • Просмотр профиля
Немного не так. Ставить у себя проксик, у него настраивать, что он прозрачный и отправлять все запросы на каскадный (вышестоящий) прокси.

Прозрачность:
http_port 3128 transparent

Каскадный прокси:
cache_peer    proxy.provider.net    parent     3128   

А в iptables делать REDIRECT на свой прокси.

/sbin/iptables -t nat -A PREROUTING -s 172.20.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128

Как-то так. Точно всего не помню по Сквиду. Может кто-то поправит, если я не прав.

Оффлайн savy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
2 sht0rm, Silver Ghost:

Да, так получилось, спасибо!

*nat
-A PREROUTING -p tcp -j REDIRECT --to-port 3128
-A POSTROUTING -p tcp --source-port 3128 -j SNAT --to-source 172.16.0.2

squid:
http_port 3128 transparent
cache_peer 172.16.0.1 parent 3128 3130 no-query

Конечно, задуманное не осуществилось (в вов не поиграть, агент не подключается), но вновь разобрался с iptables и со squid'ом ))
Но по страничкам лазиет, уже что-то! =b

Всем спасибо за обсуждение! :)

Оффлайн Silver Ghost

  • Участник
  • *
  • Сообщений: 107
    • Просмотр профиля
В ВОВ так не поиграешь, ему только NAT нужен...

Оффлайн vol4

  • Любитель
  • *
  • Сообщений: 59
    • Просмотр профиля
2 sht0rm, Silver Ghost:

*nat
-A PREROUTING -p tcp -j REDIRECT --to-port 3128
-A POSTROUTING -p tcp --source-port 3128 -j SNAT --to-source 172.16.0.2

Конечно, задуманное не осуществилось (в вов не поиграть, агент не подключается), но вновь разобрался с iptables и со squid'ом ))
Но по страничкам лазиет, уже что-то! =b

Редиректи просто только то, что идет на порт 80/8080/и т.п. Тогда все остальное будет идти через nat, и твой вов тоже.

Оффлайн Silver Ghost

  • Участник
  • *
  • Сообщений: 107
    • Просмотр профиля
Ну если инет через проксю, то ната нет... иначе бы не стоял вопрос о каскаде...

Оффлайн vol4

  • Любитель
  • *
  • Сообщений: 59
    • Просмотр профиля
Потом настроил NAT
А это тогда что у автора?
Другой вопрос в том, что он не сделал ip forward, поэтому:
NAT, по идее, работает, но инета на сторонних компах нет!

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28515
    • Просмотр профиля
Пусть автор нормально опишет топологию сети. Чего гадать на кофейной гуще?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн savy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Сорри за создании путаницы, просто я не так углублённо разбираюсь в этом вопросе ))

Инет есть только через прокси на одном компе (на прокси доступ по MAC'у прописан). Плюс этого компа физически нет, просто известен MAC. Отсюда и начались все пляски с бубном - создал виртуальную машину, развернул там Ubuntu и хотел с виртуалки раздавать двум компам инет. В принципе, так и сделал, но обрабатываются только http-запросы - лазием по сайтам и ничего больше (почту не проверяем и т.д. и т.п.). В любом случае и это что-то (экономлю на сотовом) ))

Ещё раз всем Спасибо ))

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28515
    • Просмотр профиля
Если компа нет но MAC известен (и все остальные настройки), всегда можно прописать этот MAC на существующей системе.
Для Linuxа - hwaddress в /etc/network/interfaces
Для винды - в дополнительных свойствах сетевого адаптера - строка со словом "адрес" и переключателем "отсутствует либо ввести вручную".
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.021 секунд. Запросов: 19.