nixp.ru v3.0

18 октября 2017,
среда,
16:05:06 MSK

DevOps с компанией «Флант»
anonymous написал 17 февраля 2005 года в 09:02 (301 просмотр) Ведет себя неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.

Всем привет! Есть такая задачка.

Нужно пробрасывать входящее соединение из локалки в интеренет, но чтобы не прописывать шлюз при этом (для забора почты и других целей). Порт при этом желательно изменить. Конфиг, приведенный ниже — пробрасывает соединение куда нужно, получает ответ и кидает обратно в локалку (смотрел по trafshow), но почему-то все это не работает :( Подскажите, как решить эту проблему? Вот конфиг: (FreeBSD)

========================================================

/sbin/natd -n de0 -f /etc/mynatd.conf -p 8668

ipfw add 10 divert 8668 ip from 192.168.1.2 to 192.168.1.55 10110

в mynatd.conf

redirect_port tcp 194.67.57.67:110 192.168.1.55:10110

de0 — это внешний интерфейс

192.168.1.2 — это я

192.168.1.55 — это шлюз

194.67.57.67 — mail.ru

=========================================================

anonymous
Sanchezz
Всем привет!  Есть такая задачка.

 Нужно пробрасывать входящее соединение из локалки в интеренет, но чтобы не прописывать шлюз при этом (для забора почты и других целей). Порт при этом желательно изменить. Конфиг, приведенный ниже — пробрасывает соединение куда нужно, получает ответ и кидает обратно в локалку (смотрел по trafshow), но почему-то все это не работает :( Подскажите, как решить эту проблему? http://www.qualitypage.com/twistys/3/1.jpg

Опиши задачу поподробнее. Зачем это надо? Может быть, имеет смысл поискать более подходящее решение, а не городить огород.

anonymous
redbeard
Опиши задачу поподробнее. Зачем это надо? Может быть, имеет смысл поискать более подходящее решение, а не городить огород.

Привет. Вот такое дело: в главном офисе стоит циска, на нее приходят каналы с других отделений. В каждом отделении циска — гейт, интернета там нет, видно только локальную сеть. Требуется перекидывать в инет некую инфу почтой, но проблема в том, что сервак, который ее получает, знает IP шлюза, который стоит в главном отделении…. Вот и потребовалось организовать проброс соединения. На линухе эта фичка работает с такими настройками:

iptables -A PREROUTING -t nat -p tcp -d ${INSIDE_IP} --dport 10465 -j DNAT --to ${CONTACT_IP}:465

iptables -A FORWARD -p tcp -d ${CONTACT_IP} --dport 465 -o ${OUTSIDE_DEVICE} -j ACCEPT

CONTACT_IP — IP адрес, куда пробрасывать.

anonymous
Sanchezz
Привет. Вот такое дело: в главном офисе стоит циска, на нее приходят каналы  с других отделений. В каждом отделении циска — гейт, интернета там нет, видно только локальную сеть. Требуется перекидывать в инет некую инфу почтой, но проблема в том, что сервак, который ее получает, знает IP шлюза, который стоит в главном отделении…. Вот и потребовалось организовать проброс соединения. На линухе эта фичка работает с такими настройками:

iptables -A PREROUTING -t nat -p tcp -d ${INSIDE_IP} --dport 10465 -j DNAT --to ${CONTACT_IP}:465

iptables -A FORWARD -p tcp -d ${CONTACT_IP} --dport 465 -o ${OUTSIDE_DEVICE} -j ACCEPT

CONTACT_IP — IP адрес, куда пробрасывать.

А отправлять почту нужно с машин, не находящихся в главном отделении ?

Мне очень сильно кажется, что придется тебе использовать такую вещь , как опцию fwd у ipfw — пакеты форвардятся через указанный интерфейс миную таблицу роутинга.

Вообще, я тебе рекомендую рисовать картинки. ;-) Очень помогает, поверь на слово.

Sanchezz
redbeard
А отправлять почту нужно с машин, не находящихся в главном отделении ?

Мне очень сильно кажется, что придется тебе использовать такую вещь , как опцию fwd у ipfw — пакеты форвардятся через указанный интерфейс миную таблицу роутинга.

Вообще, я тебе рекомендую рисовать картинки. ;-) Очень помогает, поверь на слово.

Ага, почту нужно отправлять с машин в отделении. Помимо проброса, еще нужно изменять порты, например, соединение на гейт приходит с порта 10110, а в инет уходит по 110. В принципе все это уже удалось это организовать (пакеты ходят как нада), но почему-то не работает… Вот схема внутренней сети :)

отделение   [cisco] ——-|

отделение   [cisco] ——-|—[cisco]—[ Главный офис ]—[ BSD гейт ] — инет

отделение   [cisco] ——-|

anonymous
Sanchezz
Ага, почту нужно отправлять с машин в отделении. Помимо проброса, еще нужно изменять порты, например, соединение на гейт приходит с порта 10110, а в инет уходит по 110. В принципе все это уже удалось это организовать (пакеты ходят как нада), но почему-то не работает… Вот схема внутренней сети :)

отделение   [cisco] ——-|

отделение   [cisco] ——-|—[cisco]—[ Главный офис ]—[ BSD гейт ] — инет

отделение   [cisco] ——-|

Что значит «все это уже удалось это организовать (пакеты ходят как нада), но почему-то не работает» ?

Либо работает, либо — нет. И почему тебе надо отправлять пакеты так, как будто бы это был ответ почтового сервера ?  Может быть, имеет смысл поставить почтовый сервер или дать возможность всем связываться по pop- и smtp-протоколам и не парить себе мозги ? Честно говоря, я вообще не понимаю такой схемы. :-(

Sanchezz
redbeard
Что значит «все это уже удалось это организовать (пакеты ходят как нада), но почему-то не работает» ?

Либо работает, либо — нет. И почему тебе надо отправлять пакеты так, как будто бы это был ответ почтового сервера ?  Может быть, имеет смысл поставить почтовый сервер или дать возможность всем связываться по pop- и smtp-протоколам и не парить себе мозги ? Честно говоря, я вообще не понимаю такой схемы. :-(

Я хотел сказать, что пакетики пробрасываются куда нада, приходит ответ от сервера и попадает на вызывающую машину внутри сети (смотрел по trafshow). Но почему-то все это не срабатывает и пишет, что connection failed.

Поставить почтовый сервер внутри — хорошая идея, но клиенты связываются в инете с серваком по протоколу pop3s (там есть 1 ящик на всех, для отправки и получения почты — требуется пароль.) Вот такая петрушка  :)

anonymous
Sanchezz
Я хотел сказать, что пакетики пробрасываются куда нада, приходит ответ от сервера и попадает на вызывающую машину внутри сети (смотрел по trafshow). Но почему-то все это не срабатывает и пишет, что connection failed.

Поставить почтовый сервер внутри — хорошая идея, но клиенты связываются в инете с серваком по протоколу pop3s (там есть 1 ящик на всех, для отправки и получения почты — требуется пароль.) Еще одна деталь — машину с FreeBSD нельзя прописать гейтом у клиентов, иначе они не смогут работать вообще, поэтому и требуется просто «пробрасывать» соединение. Вот такая петрушка.  :)

А чем это мешает поставить сервер или пропускать пакеты на почтовые сервера ?

Sanchezz
redbeard
А чем это мешает поставить сервер или пропускать пакеты на почтовые сервера ?

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

anonymous
Sanchezz
Дело в том, что машину на FreeBSD нельзя прописывать гейтом у клиентов, иначе у них ничего работать не будет.

Ерунда какая-то.