FTP Server achter iptables firewall

Pagina: 1
Acties:
  • 105 views sinds 30-01-2008
  • Reageer

  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Hai Tweakers,

Ik ben bezig met het opzetten van een ftp server achter m'n op iptables gebasseerde firewall. De bedoeling is dat mensen van buitenaf (het internet) via de firewall op mijn ftp server kunnen inloggen. Om dit mogelijk te maken heb ik de ftp control port (21) en de ftp data poort (control port-1 = 20) opgezet voor zowel ingaand als uitgaand verkeer.

Als ik nu een verbinding maak met m'n externe ip via m'n ftp client (leechftp) dan kan ik gewoon inloggen, maar een data connectie wordt niet opgebouwd, een stukje uit de ftp client log:
code:
1
2
3
PORT 192,168,0,2,4,46
500: Illegal PORT command
Could not recieve directory listing for "/"

In de log van m'n ftp server (proftpd) staat:
code:
1
2
Aug 20 12:10:06 testbak.localtweakz.net proftpd[463]: [ID 567783 auth.notice] testbak.localtweakz.net (ns1.localtweakz.net[192.168.0.1]) - USER laurens: Login successful.
Aug 20 12:10:06 testbak.localtweakz.net proftpd[463]: [ID 567783 daemon.warning] testbak.localtweakz.net (ns1.localtweakz.net[192.168.0.1]) - Refused PORT 192,168,0,2,4,49 (address mismatch).

Na wat te hebben gezocht op de proftpd website kwam ik hetvolgende linkje tegen: http://rad.geology.washington.edu/~tj/proftpd/doc/contrib/ProFTPD-mini-HOWTO-NAT.txt . Deze stapjes heb ik keurig doorgelopen, en heb van de ipchains rules die ze daar geven iptables rules gemaakt:
code:
1
2
iptables -A PREROUTING -t nat -p tcp -d 213.84.209.41 --dport 60000:65535 -j DNAT --to 192.168.0.5:60000-65535
iptables -A INPUT -p tcp -s 213.84.209.41 -d 192.168.0.5 --dport 60000:65535 -j ACCEPT

Vol frisse moet stel ik m'n ftp client in op het gebruik van PASV en probeer weer te connecten. Dit keer krijg ik geen PORT error meer maar blijft de connectie hangen op het commando LIST en timed enige tijd later uit. In de logs van proftpd staat ook niks behalve dat de verbinding wordt verbroken omdat ik zit te idle-n. Het inloggen via het lokale netwerk gaat gewoon goed, dus aan de settings van proftpd zal het volgens mij niet liggen.

Iemand een idee wat ik nog fout doe? Volgens mij is het maar een klein dingetje, maar ik kan het zelf niet vinden.

edit:
excuses voor het vern**ken van de layout

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


Verwijderd

ik heb gewoon mijn port 21 geforward naar mijn eigen bak
lekker makkelijk

  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Op maandag 20 augustus 2001 12:26 schreef Tijn_3d het volgende:
ik heb gewoon mijn port 21 geforward naar mijn eigen bak
lekker makkelijk
Ehmz, laat me raden, jij draait geen firewall?

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


Verwijderd

Op maandag 20 augustus 2001 13:11 schreef Counter-Strike het volgende:

[..]

Ehmz, laat me raden, jij draait geen firewall?
jawel draai ook een firewall

Verwijderd

btw je moet je client in passive mode laten connecten

  • 0siris
  • Registratie: Augustus 2000
  • Laatst online: 22-08 17:19
Op maandag 20 augustus 2001 13:14 schreef Tijn_3d het volgende:
btw je moet je client in passive mode laten connecten
ja hallo, lees es ff goed:
Vol frisse moet stel ik m'n ftp in op het gebruik van PASV en probeer weer te connecten

ach...in een volgend leven lach je er om!


  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Op maandag 20 augustus 2001 13:13 schreef Tijn_3d het volgende:

[..]

jawel draai ook een firewall
Huh? Vaag dan?
Dat doe je dus alleen maar door poort 21 naar je eigen pc te sturen en verder nothing?
Op maandag 20 augustus 2001 13:14 schreef Tijn_3d het volgende:
btw je moet je client in passive mode laten connecten
Dat doe ik ook:
Vol frisse moet stel ik m'n ftp in op het gebruik van PASV en probeer weer te connecten.
beetje onduidelijk, ik zal er ff ftp client van maken

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


Verwijderd

Op maandag 20 augustus 2001 13:19 schreef Counter-Strike het volgende:
Huh? Vaag dan?
Dat doe je dus alleen maar door poort 21 naar je eigen pc te sturen en verder nothing?
ja das het enige wat ik gedaan heb en natuurlijk mijn poort 21 van me server niet laten blocken

  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Op maandag 20 augustus 2001 13:22 schreef Tijn_3d het volgende:

[..]

ja das het enige wat ik gedaan heb en natuurlijk mijn poort 21 van me server niet laten blocken
Die staat bij mij ook niet geblocked. User kunnen namelijk gewoon inloggen maar hij blijft hangen op het LIST commando, die de directory's e.d. ophaald (ls commando is het eigenlijk)

* Counter-Strike vindt dit vaag

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


  • luc
  • Registratie: Maart 2000
  • Niet online

luc

is de data poort niet geblockt ?
dus poort 20 als je ftpt naar poort 21?

  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Op maandag 20 augustus 2001 13:46 schreef luc het volgende:
is de data poort niet geblockt ?
dus poort 20 als je ftpt naar poort 21?
Staat open.

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Ik ben er nog steeds niet achter :( :(

Hoe het er nu voorstaat:

poort 20 en poort 21 staan open voor beide richtingen.
poort 20 en poort 21 worden geforwarded naar de ftp server binnen mijn netwerk.
in m'n proftpd config file staat de regel:
code:
1
MasqueradeAddress          externalipadress

in de ftp client staat PASV aan.

en nog steeds dezelfde errors.

Iemand een idee?

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Topicstarter
Ik heb het probleem opgelost!

Poort 20 moet alleen open voor UITGAAND verkeer, het is namelijk de data poort van de ftp server zelf. De ftp client krijgt bij PASV connectie ergens een data poort toegewezen boven poort 1024, dit kun je weer inkrimpen door je ftp server te voorzien van een 'passive port' range waarin je zelf in kunt stellen welke poorten hij voor PASV connectie moet gebruiken.

Je zou die passive port range gewoon open kunnen zetten, maar dat wilde ik niet. Ik maak nu gebruik van de ip_conntrack_ftp module die de poort opent als de ftp server erom vraagt en weer sluit als de tranfer klaar is (simpel gezegd).

De fout die ik maakte zat hem in het forwarden van de poorten, dit deed ik met rinetd wat los staat van iptables. Op die manier heb je niks aan de module ip_conntrack_ftp. Zodra je je poorten forward met iptables zal de ip_conntrack_ftp module in werking treden.

Ik hoop dat jullie hier wat aan hebben. (Mensen die later de search gebruiken ofsow :))

In ieder geval bedankt voor alle reacties!

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!

Pagina: 1