The OpenNET Project / Index page

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

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

"FTP на FreeBSD"  
Сообщение от Koshak (ok) on 06-Ноя-07, 18:12 
Доброго времени суток всем.
Ситуация такая: есть локальная сеть, она закрыта роутером Dl-604. В локалке есть машина:
IP 192.168.0.20
ОС FreeBSD 6.2
на ней поднят ProFTPD 1.3.1
фаервол опущен

На роутере данная машина выставлена в DMZ. При попытке подключится к ней по фтп с сервера, имеющего статический IP возникает следующая картина:

ftp> open XXX.XXX.XXX.XXX
Connected to XXX.XXX.XXX.XXX.
220 ProFTPD 1.3.1 Server (ProFTPd) [192.168.0.20]
500 AUTH not understood
500 AUTH not understood
KERBEROS_V4 rejected as an authentication type
Name (XXX.XXX.XXX.XXX:root): ftp
331 Password required for ftp
Password:
230 User ftp logged in
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192,168,0,20,237,25).
ftp: connect: Connection timed out

При попытке подключиться из Интернета из-за NAT используя пассивный режим, клиент виснет на
<- 257 "/" is the current directory
-> PASV

Пытался убирать машину из DMZ, поднимать на роутере Virtual Servers на порты 20 и 21, попутно открыв на фаерволе  роутера диапазон портов 1024-65535 для IP ftp сервера- ничего не получается, картина та же самая (и на сервере со статическим IP, и на рабочей станции, сидящей за NAT)

Пытался менять в proftpd.conf параметр DefaultAddress. Ставил и в локальный адрес, и во внешний IP роутера - не помогло......

В выше приведённом логе утилиты ftp смущает строка:
227 Entering Passive Mode (192,168,0,20,237,25)
при чём тут внутренний IP сервера? Или это так и надо?


Поможите, плиз, может, кто сталкивался с подобным?

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

  • FTP на FreeBSD, DN, 19:05 , 06-Ноя-07, (1)  
    • FTP на FreeBSD, Koshak, 19:47 , 06-Ноя-07, (2)  
      • FTP на FreeBSD, DN, 02:23 , 07-Ноя-07, (3)  
        • FTP на FreeBSD, Koshak, 20:49 , 19-Ноя-07, (4)  
          • FTP на FreeBSD, DN, 00:40 , 20-Ноя-07, (5)  
            • FTP на FreeBSD, Koshak, 15:02 , 20-Ноя-07, (6)  
              • FTP на FreeBSD, DN, 18:23 , 20-Ноя-07, (7)  

Сообщения по теме [Сортировка по времени | RSS]


1. "FTP на FreeBSD"  
Сообщение от DN (ok) on 06-Ноя-07, 19:05 
>В выше приведённом логе утилиты ftp смущает строка:
>227 Entering Passive Mode (192,168,0,20,237,25)
>при чём тут внутренний IP сервера? Или это так и надо?
>
>
>Поможите, плиз, может, кто сталкивался с подобным?

Ваш NAT должен уметь транслировать внутренний контент пакета ( payload - опция
у IOS cisco ) .
То есть менять не только заголовки ip пакета, но его содержимое.
Поддержиает ли Dl-604 этот функционал ?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "FTP на FreeBSD"  
Сообщение от Koshak (ok) on 06-Ноя-07, 19:47 
>Ваш NAT должен уметь транслировать внутренний контент пакета ( payload - опция
>у IOS cisco ) .
>То есть менять не только заголовки ip пакета, но его содержимое.
>Поддержиает ли Dl-604 этот функционал ?

Ничего подобного в нём не нашёл.... Наверное, не поддерживает.

Но, если машина выставлена в DMZ, то, по идее, всё что приходит на внешний IP роутера должно отправляться прямиком на эту машину. Т.е. если к ней кто-то коннектится в пассивном режиме, то ftp сервер, выставленный в DMZ должен принять 2 коннекта: по 21му порту (этот коннект принимается), а по порту с данными коннект не принимается...

вот tcpdump попытки соединения:

19:44:02.043186 IP 192.168.0.20.ssh > 192.168.0.117.1331: P 3315684598:3315684794(196) ack 403806815 win 65535
19:44:02.043314 IP 192.168.0.117.1331 > 192.168.0.20.ssh: . ack 196 win 65219
19:44:03.043107 IP 192.168.0.20.61990 > ns.rusmedia.net.domain:  15650+ PTR? 117.0.168.192.in-addr.arpa. (44)
19:44:03.046894 IP ns.rusmedia.net.domain > 192.168.0.20.61990:  15650 NXDomain 0/1/0 (115)
19:44:03.047050 IP 192.168.0.20.50096 > ns.rusmedia.net.domain:  15651+ PTR? 20.0.168.192.in-addr.arpa. (43)
19:44:03.050973 IP ns.rusmedia.net.domain > 192.168.0.20.50096:  15651 NXDomain 0/1/0 (114)
19:44:03.162545 IP 194.154.66.162.5571 > 192.168.0.20.ftp: S 450042027:450042027(0) win 65535 <mss 1460,nop,nop,sackOK>
19:44:03.162574 IP 192.168.0.20.ftp > 194.154.66.162.5571: S 4242555784:4242555784(0) ack 450042028 win 65535 <mss 1460,sackOK,eol>
19:44:03.250404 IP 194.154.66.162.5571 > 192.168.0.20.ftp: . ack 1 win 65535
19:44:03.252561 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 1:56(55) ack 1 win 65535
19:44:03.338918 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 1:14(13) ack 56 win 65480
19:44:03.339905 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 56:90(34) ack 14 win 65535
19:44:03.498853 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 14:35(21) ack 90 win 65446
19:44:03.504457 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 90:117(27) ack 35 win 65535
19:44:03.650965 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 35:41(6) ack 117 win 65419
19:44:03.651127 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 117:136(19) ack 41 win 65535
19:44:03.802933 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 41:46(5) ack 136 win 65400
19:44:03.803106 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 136:170(34) ack 46 win 65535
19:44:03.962368 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 46:54(8) ack 170 win 65366
19:44:03.962522 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 170:236(66) ack 54 win 65535
19:44:04.050343 IP 192.168.0.20.50291 > ns.rusmedia.net.domain:  15652+ PTR? 13.64.230.195.in-addr.arpa. (44)
19:44:04.053907 IP ns.rusmedia.net.domain > 192.168.0.20.50291:  15652* 1/2/2 (137)
19:44:04.054112 IP 192.168.0.20.60465 > ns.rusmedia.net.domain:  15653+ PTR? 162.66.154.194.in-addr.arpa. (45)
19:44:04.084827 IP ns.rusmedia.net.domain > 192.168.0.20.60465:  15653 NXDomain* 0/1/0 (116)
19:44:04.126499 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 54:60(6) ack 236 win 65300
19:44:04.126763 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 236:287(51) ack 60 win 65535
19:44:04.647189 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 236:287(51) ack 60 win 65535

тут также ещё и dns запросы присутствуют, но, я думаю, они мешать не должны.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "FTP на FreeBSD"  
Сообщение от DN (ok) on 07-Ноя-07, 02:23 
>[оверквотинг удален]
>выставленный в DMZ должен принять 2 коннекта: по 21му порту (этот
>коннект принимается), а по порту с данными коннект не принимается...
>
>вот tcpdump попытки соединения:
>19:44:04.126499 IP 194.154.66.162.5571 > 192.168.0.20.ftp: P 54:60(6) ack 236 win 65300
>19:44:04.126763 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 236:287(51) ack 60 win 65535
>19:44:04.647189 IP 192.168.0.20.ftp > 194.154.66.162.5571: P 236:287(51) ack 60 win 65535
>
>тут также ещё и dns запросы присутствуют, но, я думаю, они мешать
>не должны.

Да, Вы, содержание пакетов тоже в через tcpdump получите.
И поймете, что заголовки правильные , так как nat работает, а контент не тот .

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "FTP на FreeBSD"  
Сообщение от Koshak (ok) on 19-Ноя-07, 20:49 
>Да, Вы, содержание пакетов тоже в через tcpdump получите.
>И поймете, что заголовки правильные , так как nat работает, а контент
>не тот .
>

Содержимое tcp пакетов получил, в них действительно содержаться строки вида:
227 Entering Passive Mode (192,168,0,20,21\xe4\xf2AG.........

в локальной сети и пассивный и активный режимы работают.

Вопрос: можно ли настроить NAT (или какой-то другой механизм) на самом сервере ФТП, таким образом, чтобы tcp пакеты, предназначенные для пользователей, подключившихся в пассивном режиме к ФТП получали внешний IP (т.е. внешний IP роутера)?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "FTP на FreeBSD"  
Сообщение от DN (ok) on 20-Ноя-07, 00:40 
>[оверквотинг удален]
>>
>
>Содержимое tcp пакетов получил, в них действительно содержаться строки вида:
>227 Entering Passive Mode (192,168,0,20,21\xe4\xf2AG.........
>
>в локальной сети и пассивный и активный режимы работают.
>
>Вопрос: можно ли настроить NAT (или какой-то другой механизм) на самом сервере
>ФТП, таким образом, чтобы tcp пакеты, предназначенные для пользователей, подключившихся в
>пассивном режиме к ФТП получали внешний IP (т.е. внешний IP роутера)?

NAT на DL-604 Вам вряд ли что-либо даст. Хотя смотрите документацию на
DL-604 , может у него есть функционал замены контента пакета (payload) , а не только
замены заголовков IP адресов.

В /usr/ports/security/zebedee есть скрипт ftpgw.tcl , вот на его основе
можно попробовать добиться желаемого результата.
Может Вам удаться его подправить под свои нужды.

Точно знаю, что этот скрипт не отслеживает все состояния пассивного ftp соединения.
Как следствие, утечка tcp портов, выделяемых под пассивное соединение из указанного
вами диапазона ( -p <port-range> ).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "FTP на FreeBSD"  
Сообщение от Koshak (ok) on 20-Ноя-07, 15:02 
>В /usr/ports/security/zebedee есть скрипт ftpgw.tcl , вот на его основе
>можно попробовать добиться желаемого результата.
>Может Вам удаться его подправить под свои нужды.
>
>Точно знаю, что этот скрипт не отслеживает все состояния пассивного ftp соединения.
>
>Как следствие, утечка tcp портов, выделяемых под пассивное соединение из указанного
>вами диапазона ( -p <port-range> ).

Спасибо, посмотрел ftpgw.tcl, но пока как его прикрутить для своих нужд - ума не приложу.... Видно в такой конфигурации сети пассивный режим фтп останется недоступным. Про "payload" на dl-604 ничего не нашёл (да и вряд ли там такое будет - сам роутер $50 год назад стоил).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "FTP на FreeBSD"  
Сообщение от DN (ok) on 20-Ноя-07, 18:23 
>Спасибо, посмотрел ftpgw.tcl, но пока как его прикрутить для своих нужд -
>ума не приложу.... Видно в такой конфигурации сети пассивный режим фтп
>останется недоступным.

Этот ftpgw.tcl , как раз переписывает контент отдельных пакетов пассивного ftp соединения
должным образом. Надо просто разбрать, как он работает.

>Про "payload" на dl-604 ничего не нашёл (да и
>вряд ли там такое будет - сам роутер $50 год назад
>стоил).

Что от него можно требовать за 50$?


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




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

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