Newsgroup: it.comp.reti.locali
Titolo: FTP mi ammazza la connessione

La mia rete casalinga é composta da un router adsl office connect 3com, 
un computer desktop ed un laptop. Ho montato sul laptop (connesso via 
wireless) un serverino ftp (Cerberus), il tutto ovviamente con windows 
xp e dyndns per aiutare a trovare il server da fuori... ho diretto una 
marea di porte verso il portatile tra cui la 20 e la 21 in modo da dare 
libero sfogo al server, ho fatto alcune prove da remoto per vedere se 
funziona ma quando tento l'accesso il server si accorge della chiamata e 
poi la connessione si bomba. Il router adsl rimane acceso, ma non riesco 
piú a connettermi ad internet, e non solo quel servizio muore ma anche 
skype e tutto quello che posso avere connesso in quel momento.
Che prove posso fare per capire dove sta il problema?


La cosa mi suona molto strana; prima di tutto ti suggerirei di resettare
le regole di portforwarding che hai creato sul router, a questo punto
verifica (usando un qualsiasi portscanner online) se la porta 21 risulti
aperta (stato open o closed) o filtrata (stato stealth) nel primo caso è
possibile che il router già esponga "di suo" la porta 21 (ad esempio
per l'aggiornamento del firmware o altro); in tal caso dovresti verificare
nel manuale del router se/come pubblicare un server FTP
detto questo; per la pubblicazione di un server FTP basta aprire la
porta 21 in ingresso e creare un forward verso la macchina sulla quale
è in esecuzione il server FTP ed assicurarsi che le connessioni in
USCITA dalla porta 20/tcp del server FTP siano accettate; non c'è
bisogno di aprire altre porte (sempre che non si voglia attivare la
modalità "passiva" per FTP)

 modalità "passiva" per FTP)
la seconda che hai detto. La configurazione é ok, quello che succede 
secondo me é che il router si "confonde" per le troppe connessioni (uso 
anche bittorrent allo stesso tempo) e si blocca, visto che quando 
succede non riesco neanche a collegarmi all'interfaccia web del suddetto 
ma le lucette "sostengono" che lui sia ancora connesso ad internet.
Mi chiedevo se qualcuno avesse esperienze di quel tipo, io a rigor di 
logica dovrei essere a posto visto che ho disattivato il firewall del 
router e ho attivato il dmz, ma a quanto pare il router da 
quell'orecchio non ci sente molto bene.
Suggerimenti?

 modalità "passiva" per FTP)
Sempre ovviamente che il router abbia adeguato connection tracking
delle sessioni ftp (ok, e' una precisazione, pur se di solito la
risposta e' si'), altrimenti si e' costretti ad aprire anche la 20,
e il passive mode mi sa che non funge.  :-)
bye G.L.
-- 
Renaissance, aka Gian Luca Sole
Per rispondere, togli nospam al contrario, e cambia nazione
"E' assolutamente evidente che l'arte del cinema si ispira
alla vita, mentre la vita si ispira alla TV" - Woody Allen

 ma le lucette "sostengono" che lui sia ancora connesso ad internet.
Provato ad aggiornare il firmware, che magari e' buggato? Oppure e'
possibile che col p2p "nun ce la faccia proprio", cosa abbastanza
comune in molti router adsl broadband.


 comune in molti router adsl broadband.
c'é l'ultimo installato, e qui comunque non si parla di p2p perché 
succede anche quando lo stacco.

 e il passive mode mi sa che non funge.  :-)
Uh .. perchè aprire la 20 (in ingresso) ?!? Magari sarò ancora
addormentato ma se non vado errato..
in modalità "attiva" un server FTP accetta connessioni in
ingresso sulla 21/tcp poi, dopo la ricezione del comando
"PORT" dal client e di un comando di trasferimento dati
il server avvia una connessione in uscita dalla porta 20
locale verso la porta del client specificata dal comando
"PORT"; mi sembra evidente che in tale modalità basta
che sul lato server sia aperta la porta 21 in ingresso e che
le connessioni in uscita provenienti dalla porta 20 e destinate
a porte "dinamiche" vengano anch'esse accettate
in modalità passiva invece il server non avvia connessioni
verso l'esterno; ascolta sempre sulla 21 ma, alla ricezione
del comando "PASV" risponde con un codice che contiene
la porta locale sulla quale il server stesso si metterà in
ascolto per la ricezione dei dati; in questo caso è necessario
che il firewall "capisca" il prototollo FTP e crei "al volo" un
port forward per la porta "dati"
uh .. magari mi sbaglio.. :) !

 uh .. magari mi sbaglio.. :) !
Decisamente piu' probabile che mi sbagli io: dovrei dare una
ripassatina al protocollo, senz'altro.  :-)
.... qualche minuto trascorre sulla tastiera prima di
      di pigiare l'invio ....
Mentre scrivevo, pero', ho voluto provare un trasferimento ftp in
modalita' attiva, durante il quale ho dato netstat:
Proto  Indirizzo locale          Indirizzo remoto       Stato
TCP    
192.168.168.1:2881
        64.x.y.z:21            ESTABLISHED
TCP    
192.168.168.1:2885
        64.x.y.z:20            ESTABLISHED
Mi sembra che la 20 stia sul server come porta destinazione, o no?  :-\
Ho capito male e/o devo ripassare comunque?
bye G.L.
-- 
Renaissance, aka Gian Luca Sole
Per rispondere, togli nospam letto al contrario, e cambia nazione.


 Ho capito male e/o devo ripassare comunque?
Devo ripassare decisamente: la connessione potrebbe partire comunque dal
server (si e' abituati a considerare le porte privilegiate di solito in
listen, vabbe'...).


 in listen, vabbe'...).
Hehe.. si la connessione parte dal server; come ho già scritto
e tanto per chiarire; in modalità FTP "attiva" è il client che mette
in LISTEN una porta ed il server che si connette a tale porta
creando un socket che ha come source port sempre la porta
20 e come destination port quella specificata dal client nel
comando PORT inviato prima della richiesta; per chiarire
client: PORT h,l,i1,i2,i3,i4
dove h ed l sono gli ottetti (alto e basso) che rappresentano
il numero della porta (dinamica) sulla quale il client si metterà
in ascolto mentre i1..4 sono gli ottetti dell'indirizzo IP del client
ad esempio
PORT 24,51,82,112,48,9
ossia.. il client è ad IP 82.112.48.9 e si metterà in LISTEN sulla
porta 9297 (se non ho fatto male i conti.. a mente) a questo punto
il client invia (es.) un
GET prova.txt
alla ricezione del comando GET il server crea un socket con
porta origine 20, porta destinazione 9297 ed avvia una connessione
usando tale socket verso l'IP 82.112.48.9 a connessione avvenuta
il server procede ad inviare su tale socket il contenuto del file
"prova.txt" e quindi chiude la connessione
non so se sono stato chiaro o se ho fatto anche più confusione...
ciao


Se anche il client è dietro un router, compromette qualcosa?
Funziona solo modalità passiva?

 non so se sono stato chiaro o se ho fatto anche più confusione...
Chiarissimo, TNX.  :-)
