URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 5048
[ Назад ]

Исходное сообщение
"fwd на виртуальную машину (ftp)"

Отправлено Wagner , 20-Июн-12 16:32 
Доброго времени суток. О сабже: в джейле сидит proftpd. Не выходит получить доступ к нему из внешнего мира:
#ipfw show
00010      0        0 fwd 192.168.0.10,20 ip from any to me dst-port 20
00020     26     1491 fwd 192.168.0.10,21 ip from any to me dst-port 21
00030      0        0 fwd 192.168.0.10 ip from any to me dst-port 49200-49300
00100    101     9220 fwd 192.168.0.8 ip from any to me dst-port 80
$ ftp 46.98.187.165
Connected to 46.98.187.165.
220 ProFTPD 1.3.4a Server (BASIN) [46.98.187.165]
Name (46.98.187.165:wagner): files
331 Password required for files
Password:
230 User files logged in
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful
421 Service not available, remote server has closed connection
Как видим авторизация проходит, а вот данные - фиг, в то-же время обращение с хост машины на айпишник джейла вполне нормально прокатывает, так-что фтп сервер живой. Диапазон портов указал в proftpd.conf, так-что тут тоже все ок. Вопрос: куда копать? А гугле копался, ничего конкретного на тему форварда не нашел. natd не подходит по той простой причине, что не юзаю его. Правило 100 (для веб сервера, находящегося в другом джейле) отрабатывает на отлично (сервер легко и непринужденно отдает странички)

Содержание

Сообщения в этом обсуждении
"fwd на виртуальную машину (ftp)"
Отправлено PavelR , 21-Июн-12 03:59 

> Диапазон портов указал в proftpd.conf, так-что тут тоже
> все ок.

Этого не достаточно. профтпд когда отдает ответ на команду PORT, указывает в ней свой айпи, а вам надо чтобы он указывал адрес хост-машины.

счетчик по нулям:

00030      0        0 fwd 192.168.0.10 ip from any to me dst-port 49200-49300

соответственно до проброса портов дело не дошло.. Кстати, достаточно пробрасывать только TCP-порты =)

Там в профтпд есть какая-то опция, которая позволяет этот адрес задать, на память не помню.

> Правило 100 (для веб сервера, находящегося в
> другом джейле) отрабатывает на отлично (сервер легко и непринужденно отдает странички)

=) кто бы сомневался.



"fwd на виртуальную машину (ftp)"
Отправлено Wagner , 22-Июн-12 13:53 
DefaultAddress зовут. Поменял на адрес хост-машины, результат - как не работало, так и не работает. Может какие-нибудь другие идеи есть?



"fwd на виртуальную машину (ftp)"
Отправлено PavelR , 22-Июн-12 14:22 
> DefaultAddress зовут. Поменял на адрес хост-машины, результат - как не работало, так
> и не работает. Может какие-нибудь другие идеи есть?

дебажить tcpdump-ом содержимое пакетов


"fwd на виртуальную машину (ftp)"
Отправлено Andrey Mitrofanov , 22-Июн-12 17:20 
> DefaultAddress зовут. Поменял на адрес хост-машины, результат - как не работало, так
> и не работает. Может какие-нибудь другие идеи есть?

* Поискать в серьёзной ОС fbsd conntrack helper для ftp NAT-а (в пионэрском линуксе, вроде так называется).

* Сказать клиентам, чтоб пользовали только пассивный ftp, если это таки поможет беде -- проверить для начала.


"fwd на виртуальную машину (ftp)"
Отправлено Andrey Mitrofanov , 22-Июн-12 17:23 
>Может какие-нибудь другие идеи есть?

* Поставить вместо NAT-а app.level proxy на хост. (Из головы помню только delegate, но, надо полагать, миллионы их. гугль:// ftp+proxy ftp+frontend ftp+relay итп)