The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Как правильно пробросить фтп"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Как правильно пробросить фтп"
Сообщение от BigElph emailИскать по авторуВ закладки on 12-Авг-04, 16:52  (MSK)
Пытаюсь пробросить через FreeBSD 4.10 внутрь фтп на винду. В ipfw сделал форвард пакетов с внешнего интерфейса порты 20,21 внутрь на локальные левые адреса и те же 20,21 порт. Результат: идет счетчик на ipfw, но фтп на винде напрочь не ловит никаких пакетов. Было дело стоял файрвол на винде, тот регистрировал, что пакеты приходят, но винда делает вид, что пакеты транзитные и никак их не обрабатывает.

Где я не прав и что можно сделать? :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Как правильно пробросить фтп"
Сообщение от Sergey emailИскать по авторуВ закладки(??) on 12-Авг-04, 23:47  (MSK)
Дело в том, что при форварде у пакетов не меняется dest-addr и поэтому винда думает, что этот пакет не предназначен ей. Для внутреннего прокидывания можно использовать опцию redirect_port в нате. Я сам сегодня столкнулся с подобной проблемой, но несколько посложнее... Мне надо прокидывать наоборот. Т.е. из insid'а в outside. Т.е. грубо говоря надо уметь менять dest-addr исходящего пакета. Как и чем это можно сделать?

>Пытаюсь пробросить через FreeBSD 4.10 внутрь фтп на винду. В ipfw сделал
>форвард пакетов с внешнего интерфейса порты 20,21 внутрь на локальные левые
>адреса и те же 20,21 порт. Результат: идет счетчик на ipfw,
>но фтп на винде напрочь не ловит никаких пакетов. Было дело
>стоял файрвол на винде, тот регистрировал, что пакеты приходят, но винда
>делает вид, что пакеты транзитные и никак их не обрабатывает.
>
>Где я не прав и что можно сделать? :)


  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Как правильно пробросить фтп"
Сообщение от beep Искать по авторуВ закладки on 13-Авг-04, 08:06  (MSK)
rinetd - делает форвардинг пакетов хоть куда
  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Как правильно пробросить фтп"
Сообщение от reticon emailИскать по авторуВ закладки(ok) on 13-Авг-04, 08:37  (MSK)
>rinetd - делает форвардинг пакетов хоть куда

он вроде не поддерживает форвардинг фтп

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Как правильно пробросить фтп"
Сообщение от beep Искать по авторуВ закладки on 13-Авг-04, 10:53  (MSK)
перекидывает всё по IP хоть куда, TCP точно работает - без разницы для какого сервиса. юзай на здоровье :)
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Как правильно пробросить фтп"
Сообщение от alk Искать по авторуВ закладки on 13-Авг-04, 11:11  (MSK)
Sergey прав если стои natd то надо
-redirect_port tcp IP_dst(WIN):20-21 20-21
а проблему  inside outside я не понял если у тебя стоит nat то
он и меняет dst_addr что ты хочешь объясни подробнее?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Как правильно пробросить фтп"
Сообщение от Sergey emailИскать по авторуВ закладки(??) on 13-Авг-04, 15:09  (MSK)
Объясняю... Есть два компа. Фрюха1 и Фрюха2. Пользователи подключены к Фрюхе2 и шлют пакеты к ней на ethernet. Фрюха1 находится в другой подсети и соединена с Фрюхой2. Я хочу, чтобы пользователи общались на самом деле с фрюхой1, но при этом думали, что общаются с фрюхой2. (т.е. они как бы посылают пакет на локальный адрес тачки Фрюха2, а он приходит на тачку Фрюха1 и эта тачка шлёт назад ответ). Если я делаю простой форвардинг с фрюхи2 на фрюху1, то фрюха1 игнорирует этот пакет, т.к. dest-ip остаётся локальным адресом фрюхи2. Т.е. проброс пакетов происходит без nat'а. Можно конечно сделать это используя nat, но тогда у пользователей подключенных к Фрюхе2 придётся писать gateway или добавлять строку роутинга (а этого бы не хотелось).

>Sergey прав если стои natd то надо
> -redirect_port tcp IP_dst(WIN):20-21 20-21
>а проблему  inside outside я не понял если у тебя стоит
>nat то
>он и меняет dst_addr что ты хочешь объясни подробнее?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Как правильно пробросить фтп"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 13-Авг-04, 15:14  (MSK)
а запустить на внунтреннем интерфейсе FreeBSD2 natd и сделать при помощи него редирект на FreeBSD1 ?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Как правильно пробросить фтп"
Сообщение от Sergey emailИскать по авторуВ закладки(??) on 13-Авг-04, 15:18  (MSK)
Нат по сути меняет source-ip. Менять dest-ip он может только в случае, если пакет приходит на Фрюху2 и его надо перебросить на пользователя. Если же надо, чтобы пакет от пользователя ушёл на другой ip с подменой dest-addr, то я не знаю как это сделать средствами natd.

>а запустить на внунтреннем интерфейсе FreeBSD2 natd и сделать при помощи него
>редирект на FreeBSD1 ?


  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Как правильно пробросить фтп"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 13-Авг-04, 15:33  (MSK)
так над на внтуреннем интерфейсе
пользователь обращается к FreeBSВ2 на 21 порт, нат делает редирект 21 порта на FreeBSD1 (такие пакеты не должны натится на внешнем интерфейсе), FreeBSD1 получил пакет ip_src_клиента_ ip_dst_адрес FreeBSD1__со_стороны_FreeBSD2, отвечает пакет идет ip_src_адрес FreeBSD1__со_стороны_FreeBSD2, ip_dst_клиента, проходит через внешний интерфейс FreeBSD2 попадает на на внутреннией интерфейс и меняет ip_src на адрес внетренний адрес FreeBSD2.
Где то так, что хотел то и получил
  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "Как правильно пробросить фтп"
Сообщение от Sergey emailИскать по авторуВ закладки(??) on 13-Авг-04, 15:41  (MSK)
Да, всё правильно. Спасибо =) А то я уже начал мудрить с туннелями ))) Сегодня вечером попробую эту схему.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "Как правильно пробросить фтп"
Сообщение от BigElph Искать по авторуВ закладки on 17-Авг-04, 20:37  (MSK)
>rinetd - делает форвардинг пакетов хоть куда

Форвард - это конечно хорошо, вот только какую я наблюдаю картину.
Делаю пересылку с 192.168.0.1 20 и 21 на 192.168.0.50 20 и 21.
Фтп сервак на винде воспринимает внешние пакеты как будто они все с адреса 192.168.0.1, я так понимаю, что и ответы он шлет обратно...Потому как ни в прямом, ни в пассивном режиме фтп обратно не получить ни файлов ни даже команды ls. Просто таймаут какбудто ничего не возвращается. Думаю, что так и есть. По-этому еще жду советов :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "Как правильно пробросить фтп"
Сообщение от BigElph Искать по авторуВ закладки on 26-Авг-04, 20:13  (MSK)
Ни у кого нет вариантов? :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "Как правильно пробросить фтп"
Сообщение от Byr Искать по авторуВ закладки(??) on 01-Сен-04, 17:39  (MSK)
>Ни у кого нет вариантов? :)
попробуй ftp-proxy из состава ipf
  Рекомендовать в FAQ | Cообщить модератору | Наверх

14. "Как правильно пробросить фтп"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 01-Сен-04, 17:54  (MSK)
а почему не redirect_port?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

15. "Как правильно пробросить фтп"
Сообщение от alk Искать по авторуВ закладки on 02-Сен-04, 10:18  (MSK)
ipfw sh покажи


  Рекомендовать в FAQ | Cообщить модератору | Наверх

16. "Как правильно пробросить фтп"
Сообщение от Arifolth Искать по авторуВ закладки(ok) on 02-Сен-04, 11:35  (MSK)
>>rinetd - делает форвардинг пакетов хоть куда
>
>Форвард - это конечно хорошо, вот только какую я наблюдаю картину.
>Делаю пересылку с 192.168.0.1 20 и 21 на 192.168.0.50 20 и 21.
>
>Фтп сервак на винде воспринимает внешние пакеты как будто они все с
>адреса 192.168.0.1, я так понимаю, что и ответы он шлет обратно...Потому
>как ни в прямом, ни в пассивном режиме фтп обратно не
>получить ни файлов ни даже команды ls. Просто таймаут какбудто ничего
>не возвращается. Думаю, что так и есть. По-этому еще жду советов
>:)
есть такая прога супер-пупер демон - xinetd =)))
может применяться для пересылки пакета тисипи с хоста/порта на другой хост/порт
могу пример конфига дать
это нужно или я чего-то не понял?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

17. "Как правильно пробросить фтп"
Сообщение от BigElph emailИскать по авторуВ закладки on 02-Сен-04, 13:16  (MSK)
>есть такая прога супер-пупер демон - xinetd =)))
>может применяться для пересылки пакета тисипи с хоста/порта на другой хост/порт
>могу пример конфига дать
>это нужно или я чего-то не понял?

Нужно просто - чтоб снаружи из интернета можно было войти в фтп, коий находится во внутренней сети с левыми адресами.
Пользуюсь rinetd
81.x.x.x 21 10.0.0.50 21
81.x.x.x 20 10.0.0.50 20
81.x.x.x 2048-2096 10.0.0.50 2048-2096
в настройках фтп то же самое указано.

в файрволе разрешено
01900  8952744 1228918252 allow ip from me to any
02000  3881047 3867827387 allow ip from any to me

  Рекомендовать в FAQ | Cообщить модератору | Наверх

18. "Как правильно пробросить фтп"
Сообщение от Arifolth Искать по авторуВ закладки(ok) on 09-Сен-04, 15:34  (MSK)
>>есть такая прога супер-пупер демон - xinetd =)))
>>может применяться для пересылки пакета тисипи с хоста/порта на другой хост/порт
>>могу пример конфига дать
>>это нужно или я чего-то не понял?
>
>Нужно просто - чтоб снаружи из интернета можно было войти в фтп,
>коий находится во внутренней сети с левыми адресами.
>Пользуюсь rinetd
>81.x.x.x 21 10.0.0.50 21
>81.x.x.x 20 10.0.0.50 20
>81.x.x.x 2048-2096 10.0.0.50 2048-2096
>в настройках фтп то же самое указано.
>
>в файрволе разрешено
>01900  8952744 1228918252 allow ip from me to any
>02000  3881047 3867827387 allow ip from any to me

значит так:
во-первых:я так и не понял чё те нада
во-вторых:
для того чтобы пробросить входящие соединения с внешнего интерфейса во внутреннюю сеть на другой хост(внутренняя сеть са мо са бой на др интерфейсе):
фаерволом ipfw разрешить соединения с портом на внешнем интерфейсе брэндмауэра(хе-хе);
поставить xinetd и заставить слушать его на этом порту:
его конфиг:

defaults
{
instances = 25
log_type = FILE /var/log/servicelog
log_on_success = HOST PID
log_on_failure = HOST
per_source = 5
}
service mredir
{
disable = no
port = 1035              #порт на котором слушаем
bind = 195.131.2.6       #куда вешаемся
socket_type = stream     #tcp
protocol = tcp           #tcp
user = root
redirect = 192.168.255.200 1033 #куда перенаправляем хост/порт
type = UNLISTED
wait = no
}

подробнее - man xinetd, man xinetd.conf
вообщем примерно так

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру