Ciao a tutti.
Ho un server linux (Debian) che da la connessione ad un'altra macchina linux (CentOS).
Sul server Debian (192.168.1.31 (eht1)) ho due interfacce di rete, eth1(192.168.0.1/24) da la connessione alla seconda macchina.
Sul server sono attivi più servizi tra cui FTP.
IL MIO PROBLEMA:
Ho la necessità di aprire un FTP secondario sulla macchina CentOS(192.168.0.3).
Ho provato ad aprire una porta arbitraria (la 5000) sulla macchina Debian, e ho impostato iptables in questo modo:
iptables -t nat -A PREROUTING -p tcp --dport 5000 -d 192.168.1.31 -j DNAT --to-destination 192.168.0.3:21
iptables -A FORWARD -s 192.168.0.3 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Questo ovviamente funziona, ma non come dovrebbe, soprattutto pensando che il servizio FTP utilizza la modalità binaria per il trasferimento file.
Quindi nonostante la connessione sulla porta 5000 venga accettata e inoltrata alla macchina voluta, dopo l'autenticazione non è possibile eseguire comandi con output, mentre è possibile scaricare file e spostarsi fra le cartelle.
SOLUZIONI?? grazie in anticipo a tutti.
Forwarding FTP su altra macchina
Moderatore: Federico.Lagni
-
- Cisco fan
- Messaggi: 42
- Iscritto il: mar 06 ott , 2009 8:40 am
- Località: Roma
Ciao. Il problema dovrebbe essere correlato all' ftp attivo/passivo.
Nel caso ti servisse, dai un'occhiata qui
http://slacksite.com/other/ftp.html
Ma non capisco una cosa:
se il server debian fa routing verso il server centos, perchè vuoi che un client della subnet 192.168.1.0/24 apra una sessione ftp con 192.168.1.31 porta 5000 anziché direttamente con 192.168.0.3 porta 21?
Per esempio, togliendo la regola di nat, il server debian dovrebbe essere configurato in questo modo....
modprobe ip_conntrack
modprobe ip_conntrack_ftp
iptables -A FORWARD -p tcp --dport 21 -s 192.168.1.0/24 -d 192.168.0.1 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED, RELATED -j ACCEPT
ciao!
Nel caso ti servisse, dai un'occhiata qui
http://slacksite.com/other/ftp.html
Ma non capisco una cosa:
se il server debian fa routing verso il server centos, perchè vuoi che un client della subnet 192.168.1.0/24 apra una sessione ftp con 192.168.1.31 porta 5000 anziché direttamente con 192.168.0.3 porta 21?
Per esempio, togliendo la regola di nat, il server debian dovrebbe essere configurato in questo modo....
modprobe ip_conntrack
modprobe ip_conntrack_ftp
iptables -A FORWARD -p tcp --dport 21 -s 192.168.1.0/24 -d 192.168.0.1 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED, RELATED -j ACCEPT
ciao!