Newsgroup: it.comp.reti.locali
Titolo: Connessione FTP tramite Telnet

Ho bisogno, per studiare meglio il protocollo, di collegarmi ad un server
FTP tramite Telnet. FTP, per come e' progettato, crea una connessione di
controllo per inviare i comandi al server FTP sulla porta 21 (questa
connessione viene creata automaticamente con il comando connetti del client
Telnet di Windows 95 che io sto usando), ha poi bisogno di creare una
seconda connessione (chiamata connessione dati) su una porta specificata dal
client, per ricevere dal server l'elenco dei file e delle directory, inviare
file dal server e ricevere file dal server; tra l'altro questa connessione
viene chiusa ogni volta che termina il trasferimento dei file. Per
specificare la porta uso il comando [PORT ip_address, port_number], ma fatto
questo non riesco a visualizzare sul client telnet l'elenco delle directory
dopo aver inviato il comando LIST.
E' possibile gestire entrambe le connessioni con una sessione Telnet? Esiste
qualche tutorial in rete che spieghi come fare?
Grazie
Omar Venturi

qualche tutorial in rete che spieghi come fare?
Apri due console (prompt di MS-DOS in win95, Command Prompt in winNT).
Indico con [console 1] la prima e con [console 2] la seconda.
Fai caso al comando PORT e nota che 8*256+174=2222.
[console 1]
G:\>nc -L -p 2222
[console 2]
G:\IN>nc 
ftp.flashnet.it
 21
220-Welcome to FlashNet S.p.A. FTP server.
...
user anonymous
331 Guest login ok, send your complete e-mail address as password.
pass i...@casa.mia
230-Date and time (Rome, Italy): Wed Jul 21 12:57:08 1999.
...
pwd
257 "/" is current directory.
type A
200 Type set to A.
port 212,216,34,23,8,174
200 PORT command successful.
list
150 Opening ASCII mode data connection for /bin/ls.
[console 1]
total 51201
drwxr-xr-x   7 root     root         1024 Jul 21 09:04 .
drwxr-xr-x   7 root     root         1024 Jul 21 09:04 ..
-rw-r--r--   1 root     root          177 Oct 13  1997 README.mirrors
-rw-r--r--   1 root     root          788 Mar 12 17:15 banner.msg
drwxr-xr-x   2 root     root         1024 Jul  1  1997 bin
drwxr-xr-x   2 root     root         1024 Jul  1  1997 etc
drwxr-x---   6 root     flashnet     1024 Apr 29 15:20 flashnet
-rw-r--r--   1 root     root     41520174 Jul 21 09:03 ls-lR
-rw-r--r--   1 root     root      5344226 Jul 21 09:03 ls-lR.gz
-rw-r--r--   1 root     root      5344341 Jul 21 09:04 ls-lR.zip
drwxr-xr-x  10 root     root         1024 Mar 12 13:20 mirror
drwxr-xr-x   2 root     root         1024 May 28 13:48 pub
-rw-r--r--   1 root     root          499 Oct 13  1997 welcome.msg
--
---------------------------------------------------------------------
Marco Coletti
Network Admin, Webmaster, Tuttologo :)
PGP public key:
http://www.trustcenter.de:11371/pks/lookup?search=0x96A79061&op=index
Fingerprint: 9F E5 80 61 F6 9F 05 2D  EA 53 6F 2D 82 8B C7 C2
Certificate: 
http://www.trustcenter.de/cgi-bin/SearchCert.cgi
---------------------------------------------------------------------


ftp://ftp.technotronic.com/microsoft/nc11nt.zip
Pero' se vuoi puoi anche aggirare il problema senza Netcat, ma usando solo il
telnet client.  In tal caso in FTP devi fare uso del comando PASV anziche'
PORT.
PASV
227 Entering Passive Mode (151,99,220,135,9,38)
LIST
150 Opening ASCII NO-PRINT mode data connection for ls -l.
Dopodiche' *tu* ti connetti al remoto (e non viceversa) sulla porta
9*256+38=2342 utilizzando un'altra sessione telnet; appena connesso, il remoto
ti spara i dati in questione (in questo caso la lista della directory) e poi
chiude la connessione.
