Radosław Sokół <rsokol@magsoft.com.pl> writes:
>> 227 Entering Passive Mode (192,168,1,2,21,162).
>
> No dobra, a masz otwarty port 21 * 256 + 162 w takim razie?
>
>> Jeśli dobrze rozumiem, to połączenie dotarło do serwera, ale z jakiś
>> powodów zostało odrzucone. Gdzie dalej szukać przyczyny?
>
> W otwarciu portów. W konfiguracji serwera FTP pewnie określa
> się pulę portów używanych przy połączeniach pasywnych. Pyta-
> nie czy masz otwarte i przekierowane dokładnie *te* porty.
To nie wystarczy.
Jak widac wyzej, klient dostal polecenie polaczenia sie na adres
192.168.1.2 - co jak latwo zgadnac jest adresem serwera w sieci
_lokalnej_ i zewnatrz nijak dotepne nie bedzie i zadne przekierowania
na routerze nie pomoga.
Stawianie serwera ftp do pracy w passive mode za NAT-em wymaga
wspomagania 'Application Level' przy przekazywaniu portow.
I tu sa dwie mozliwosci.
Pierwsza: router (o adresie zewnetrznym x.y.z.w) musi nie tylko przyjac
polaczenie na swoim porcie np. 5538 i przekazac do sieci wewnetrznej
na adres 192.168.1.2:5538, ale takze musi zagladac do _tresci
pakietow_ wysylanych przez serwer i zmienic
PORT 192,168,1,2,21,162
na
PORT x,y,z,w,21,162
zeby klient wiedzial, z czym sie polaczyc.
Taka ingerencja nie jest prosta (sama zmiana dlugosci pakietu to, oj,
klopot), co nie znaczy, ze jest niemozliwa. Ale ja bym nawet o tym nie
myslal.
Drugim rozwiazaniem jest nauczenie serwera ftp, zeby przy nawiazywaniu
polaczenie w trybie passive podawal klientom nie swoj adres, tylko
zewnetrzny adres routera. To juz jest prostsze, ale nie kazde
oprogramowanie serwera ftp ma taka opcje.
Zobacz: ftp://ftp.echogent.com/docs/FTP_and_Firewalls.pdf
case #7.
A w ogole to do takich zastosowan polecam http, nie ftp.
MJ
Received on Wed Oct 21 10:35:03 2009
To archiwum zostało wygenerowane przez hypermail 2.1.8 : Wed 21 Oct 2009 - 10:42:02 MET DST