Belső hálón levő FTP szerver elérés Internetről

Fórumok

Szaisztok

Van egy belső hálózaton lévő pure-ftp (passziv modban) szerverem amit szeretnék elérni internet irányból a probléma a következő a nem Router (nem nat) mögött lévő kliensek elérik akik akik natolnak azok nem.

hibaüzenet a következő: 500 I won't open a connection to 192.168.yyy.yyy(Belső háló címen) (only to xxx.xxx.xxx.xxx(InetIPCím))

az átjáró tűzfalába a következő sorok vannak ide vonatkozóan felvéve:

forward láncba
FORWARD -p tcp --dport 2121 -j ACCEPT
FORWARD -p tcp --dport 32010:32020 -j ACCEPT
#ideglenes

PREROUTING-ra pedig
nat -i eth0 -p tcp --dport 2121 -j DNAT --to 192.168.244.2:2121
nat -i eth0 -p tcp --dport 32010:32020 -j DNAT --to 192.168.244.2

pure.ftp az alábbi modon van elindítva:
/usr/sbin/pure-ftpd -l puredb:/etc/pure-ftpd/pureftpd.pdb -Y 1 -O clf:/var/log/pure-ftpd/transfer.log -S 192.168.244.2,2121 -u 1001 -N -p 32010:32020 -d -E -B

minden segítséget szivesen fogadok.

P.Zoli

Hozzászólások

Senki nem tapasztalt ilyen problémát, vagy nem is lehet megoldani?

Ha jol ertem a belso halorol elered es kivulrol nem?

Mi a helyzet az ip_nat_ftp es ip_conntrack_ftp modulokkal? Be vannak toltve?

A FTP szerver előtti tűzfal gépen ezek a modulok be vannak töltve

ip_nat_ftp 2944 0
ip_conntrack_ftp 6256 1 ip_nat_ftp
xt_state 2048 2
ipt_MASQUERADE 2944 1
xt_tcpudp 3328 24
iptable_mangle 2560 0
iptable_nat 6148 1
ip_nat 13612 3 ip_nat_ftp,ipt_MASQUERADE,iptable_nat
ip_conntrack 40244 6 ip_nat_ftp,ip_conntrack_ftp,xt_state,ipt_MASQUERADE,iptable_nat,ip_nat
iptable_filter 2560 1
ip_tables 10456 3 iptable_mangle,iptable_nat,iptable_filter
x_tables 10116 5 xt_state,ipt_MASQUERADE,xt_tcpudp,iptable_nat,ip_tables

A kliensek is passziv modban probalkoznak?

Lehet, hogy amit irok az szamodra is tok trivialis, akkor bocs, csak az irasod alapjan nem volt egyertelmu.
Szoval amikor idegen NAT-rol probalod elerni a szervert, akkor ugye nem a NAT-olt 192.168* ip-vel teszed?
==
`Have some wine,' the March Hare said in an encouraging tone.
Alice looked all round the table, but there was nothing on it but tea.

2 passziv peer sosem fog tudni kapcsolodni egymashoz szerintem.
Szoval ha a kliens is passziv, meg a szerver is, akkor buko van.
a szervert aktivva kene tenned.

Tyrael

Nem ez lesz a gond, activ FTP-vel a kliens oldali NAT-nal fog a dolog elbukni, mikor a server a 20-as portrol probal a klienshez csatlakozni...
Mint fent irtak, a problema nem az on keszulekeben van.

==
`Have some wine,' the March Hare said in an encouraging tone.
Alice looked all round the table, but there was nothing on it but tea.

Ha ez így lenne, akkor pl. egyetlen ftp szerverhez sem tudna kapcsolódni, aki routert (natot) használ, nem?

Hat ja, amenyire en tudom nem tud csatlakozni, kiveve ha a routere eleg inteligens ahhoz hogy az ftp-data-t forwadolja a megfelelo klienshez. Marmint pont ezt a problemat oldja meg a passive FTP.

Wikipedia : It is hard to filter active mode FTP traffic on the client side by using a firewall, since the client must open an arbitrary port in order to receive the connection. This problem is largely resolved by using passive mode FTP.
==
`Have some wine,' the March Hare said in an encouraging tone.
Alice looked all round the table, but there was nothing on it but tea.

Mindenkinek köszi a segítséget megoldott probléma, felraktam egy ftp-proxy-t és így mükszik a dolog.

Nálam a következő lett a megoldás:

szerver: proftpd 1.3.0, iptables v1.3.3

proftpd beállítva a manualok szerint:
ServerType standalone
PassivePorts 60000 65534
MasqueradeAddress $WLANIP (internet felőli címe az átjárónak)

iptable és modulok:
modprobe ip_conntrack
modprobe ip_conntrack_ftp port=21, 60000:65534
modprobe ip_nat_ftp

$IPT -t nat -A PREROUTING -p tcp -i $WANIFACE --dport 20 -j DNAT --to $FTP:20
$IPT -t nat -A PREROUTING -p tcp -i $WANIFACE --dport 21 -j DNAT --to $FTP:21
$IPT -t nat -A PREROUTING -p tcp -i $WANIFACE --dport 60000:65534 -j DNAT --to $FTP
$IPT -A FORWARD -p tcp -i $WANIFACE -d $FTP --dport 20 -j ACCEPT
$IPT -A FORWARD -p tcp -i $WANIFACE -d $FTP --dport 21 -j ACCEPT
$IPT -A FORWARD -p tcp -i $WANIFACE -d $FTP --dport 60000:65534 -j ACCEPT

$WANIFACE = ppp0 az átjárón és $FTP a lokális hálón levő ftp (belső)címe

Hátha megspórolok 1 nap keresgélést másoknak. A téma szempontjából lényegtelen beállítási részeket nem írtam (mer' minek).