Newsgroup: it.comp.reti.locali
Titolo: FTP server in DMZ con IPCOP

Salve a tutti,
Utilizzo da tempo IPCOP come firewall sulla mia rete.
Ha installate tutte e 3 le schede di rete, rosso,dmz e verde e
funziona tutto perfettamente. Ho implementato da poco un server FTP
sulla dmz abilitando sia il port forwarding
TCP DEFAULT IP : 21(FTP)  10.0.1.2 : 21(FTP) Server Ftp 
che External access
TCP TUTTI DEFAULT IP 21
ma quando mi collego con un client funziona solamente abilitando il
protocollo PASV. E' possibile fare in modo che funzioni anche senza
abilitare tale protocollo sul client.
Grazie a tutti

ciao
Ho l'ultima versione con tutte le patch ed il server FTP e Filezilla
server.
Cos'altro ti posso dire .. non fo configurazioni particolari su IPCOP
Dimmi tu quali informazioni ti servono
Grazie Luigi
Posted from X-Privat Free NNTP server - 
www.x-privat.org

 Dimmi tu quali informazioni ti servono
Setta solo il port forwarding sulla 21, non serve altro. Se hai ancora 
casini, postami il log di una sessione ftp attiva che provo a vedere che 
succede...


ciao
Ok faccio qualche prova e ti so dire
Grazie Mille


 collegata alla DMZ, sulla macchina con IPCOP c'è solamente IPCOP
Beh, c'era anche una buona dose di ignoranza mia. :)
Cmq, allora tutto ok.
Già che ci sono preciso meglio:
La pagina external service access serve SOLO ad aprire porte a servizi 
sulla macchina su cui gira ipcop. Ad esempio, potresti voler aprire 
l'interfaccia web di ipcop all'esterno, in quel caso dovresti aprire la 
porta 445 proprio nella pagina external service access.
Per i port forward, la porta va settata SOLO nella pagina dedicata 
appunto al port forwarding. La cosa NON è affatto banale perchè nelle 
vecchie versioni, basate su ipchains, in effetti si RICHIEDEVA proprio 
di aprire la porta in entrambe le pagine. Il motivo risiede nel diverso 
modo di "ragionare" che hanno ipchains e iptables.


 abilitare tale protocollo sul client.
In Active Mode :
==
- Server CMD  Port TCP 21
- Server Data Port TCP 20
In PASV Mode :
==
- Server CMD  Port TCP 21
- Server Data Port TCP > 1024
Verifica pertanto di non avere filtri sulla porta TCP 20.
-- 
|Ż \/Ż | /Ż\ /Ż__/Ż__|-<|> 
http://planynet.hypermart.net/fastweb
 <|
|Ż|\/|Ż|/Ż_Ż\|(__\__ \-<|> * FAQ 1.5 ITGF it.tlc.gestori.fastweb <|
|_|  |_/_/ \_\___|___/-<|> * SITO: 
http://planynet.hypermart.net
 <|
|>Togli/Remove .INVALID<|> * NEWS: free.it.ingegneria.meccanica _<|

 Verifica pertanto di non avere filtri sulla porta TCP 20.
Esatto, oppure basta abilitare un mapping dalla DMZ
con source port=20 e la cosa dovrebbe funzionare

Verifica pertanto di non avere filtri sulla porta TCP 20.
Ciao, non ho alcun filtro settato sulla porta 20 TCP.
Ho anche abilitato il port forwarding in questo modo
TCP DEFAULT IP : 21(FTP)  10.0.1.2 : 21(FTP) Server Ftp
TCP DEFAULT IP : 20(FTP-DATA)  10.0.1.2 : 20(FTP-DATA)     
ma nulla continua ad accettare solamente accessi in PASV mode


ciao
Nulla ad fare sembra che accetti solamente chiamate in PASV Mode.
Questo è quello che compare nel log del client FTP in PAS mode ( e
tutto funziona)
Connecting to: duo
Connection Established
220-DUO New Media - 
www.duo.it
220-------------------------------------------------
220 Benvenuti nel servizio FTP
Connected to: duo
USER duo
331 Password required for duo
PASS
230 Logged on
SYST
215 UNIX emulated by FileZilla
PWD
257 "/" is current directory.
TYPE A
200 Type set to A
PASV
227 Entering Passive Mode (212,103,193,254,5,78)
LIST
150 Connection accepted
226 Transfer OK
e questo quando tento di accedere in active mode
Connecting to: duo
Connection Established
220-DUO New Media - 
www.duo.it
220-------------------------------------------------
220 Benvenuti nel servizio FTP
Connected to: duo
USER duo
331 Password required for duo
PASS
230 Logged on
SYST
215 UNIX emulated by FileZilla
PWD
257 "/" is current directory.
TYPE A
200 Type set to A
PORT 194,244,27,3,9,12
200 Port command successful
LIST
150 Opening data channel for directory list.
e rimane li bloccato senza mostrare nulla


 Verifica pertanto di non avere filtri sulla porta TCP 20.
La 20 dovrebbe far parte della RELATED del modulo state di iptables se
si usa il modulo  ip_conntrack_ftp di iptables, quindi basterebbe dire
a ipcop di fare entrare solo  traffico destinato alla 21 oltre a tutto
il traffico ESTABLISHED e RELATED.
Detto con le regole di iptables
iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT \
	--to-destination $ftp_server:21
iptables -A FORWARD -p tcp -i $ext_if -o $int_if --dport 21 -j ACCEPT
iptables -A FORWARD -p tcp -i $int_if -o $ext_if -m state --state \
	ESTABLISHED,RELATED -j ACCEPT
Purtoppo  non ho  ancora avuto  a che  fare con  ipcop ma  presumo sia
compilato col modulo state di iptables, no?
-- 
Sono un servitore del Fuoco Segreto, e reggo la fiamma di Anor.
A nulla ti servira' il fuoco oscuro, fiamma di Udun.
Torna nell'Ombra! Non puoi passare.

 nulla continua ad accettare solamente accessi in PASV mode
Ripartiamo da zero = dando per verificata l'assenza di blocchi/filtri
nella configurazione iptables (dato che dovresti avere l'ultima versione
di IPCOP), a questo punto mi chiedo se non vi sia un problema nella
comunicazione server -> client.
Dai Log che hai postato, risulta infatti in hang durante l'apertura del
canale DATA -> tale fase richiede che il server FTP (in Active Mode) si
colleghi dalla sua porta TCP 20 alla porta N+1 del client, dove N e' la
porta > 1024 dalla quale il client si e' connesso alla porta TCP 21 del
server FTP.
Quando il client e' dietro NAT/firewall la connessione dalla porta TCP
20 del server alla porta N+1 del client puo' essere bloccata dalle 
opzioni/regole previste per il client -> cio' comporta che il server non
riceva mai l'ACK e quindi la connessione FTP fallisca.
Analogamente deve essere consentita al server la connessione dalla porta
TCP 20 a porte > 1024 dei client in caso di Active Mode. 
Nel caso del PASV Mode il client invia un comando PASV dalla sua porta
locale N alla porta TCP 21 del server -> il server risponde indicando la
porta remota per il flusso dati (> 1024) tramite un comando PORT. A quel
punto e' il client ad aprire la connessione dalla sua porta locale N+1
verso la porta remota dati del server FTP.


 ma nulla continua ad accettare solamente accessi in PASV mode
Allora
Client (Any port) ----> 21/TCP Server
Client (Any port) <---- 20/TCP Server
spero sia chiaro, il server FTP accetta connessioni in ingresso
sulla porta 21/TCP (canale comandi) ma quando si tratta di inviare
dati la source port (lato server) è sempre 20/TCP (canale dati)

 il traffico ESTABLISHED e RELATED.
[..]
Infatti... il mio funziona in active forwardando solo la 21.
Ho il sospetto (ma č quasi una certezza) che il suo problema sia lato 
client.


 e rimane li bloccato senza mostrare nulla
Secondo me hai un problema lato _client_. Non č che sei dietro un 
firewall che blocca le connessioni entranti ?
A me funziona in active forwardando solo la 21, senza toccare nient'altro.


ciao
Boh ...
Č un problema che hanno i miei clienti.
Io dalla lan lo vedo normalmente sia in active mode che PASV mode.
Dovrei provare da una connessione esterna pulita
Comunque grazie per l'aiuto


ciao
Risolto, effettivamente era un problema lato Client con connession
FullBusiness di Telecom
Grazie a tutti
