Ftp-en via RH7.1 server werkt niet naar wens.

Pagina: 1
Acties:

  • Stalkert
  • Registratie: Januari 2001
  • Laatst online: 12-06 08:07
Het probleem is dat het mij niet goed lukt om op sommige ftp-servers te komen via mijn win2k machine (via een redhat 7.1 server). Heel vreemd, bij de ene ftp server lukt het wel en de andere niet. Terwijl andere mensen geen probleem hebben om hier op te komen. Hij komt iedere keer niet verder dan de melding: "Connecting data socket... " en dan klapt ie eruit.

Ik heb het geprobeerd met bulletproof, leech FTP en Cute FTP maar bij elke client hetzelfde probleem. Iemand enig idee waar dit mee te maken heeft / hoe dit op te lossen is ?

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 15:08

deadinspace

The what goes where now?

Je hebt 2 soorten ftp: passive en active.
Bij passive gaan de ftp commando's over poort 21 en de data over poort 20. Dit zijn normale TCP/IP connecties, die door je firewall gewoon begrepen worden.
Bij active ftp probeert de server naar de client terug te connecten op een hogere poort, maar dit laat je firewall niet toe (gelukkig).

Er zijn firewall modules die analyseren connecties, en als hier een bepaald protocol over gaat, dan herkennen zij dat, en kunnen zo server->client connecties die normaal door de firewall zouden worden geblokt doorlaten en redirecten naar de juiste compu.
Zo zijn er bijvoorbeeld ip_masq_icq.o (nodig voor direct connections), ip_masq_quake.o en ip_masq_ftp.o (nodig voor active ftp).

Dus 'modprobe ip_masq_ftp' op je gateway zou moeten volstaan.

Als dat helpt, moet je even 'ftp' toevoegen aan de modules file van je firewall config (bij mij /etc/ipmasq/modules).

(Disclaimer: dat active en passive zou ook andersom kunnen zijn. Ook het poort 20/21 zou andersom kunnen zijn)

Verwijderd

Het is precies andersom ;)

Ik quote mezelf even van een eerdere post. Compleet met iptables regels om ftp naar buiten toe te laten (en terug), dus ftp-clients bedeol ik daarmee.
Regels voor zowel active als passive ftp woren gegeven.
Op donderdag 28 juni 2001 15:18 schreef nelske het volgende:
Heren we gaan toch niet twee dingen door elkaar halen he :?

Je hebt non-passive ftp (de standaard).
Hierbij verbindt een client op poort 21 op de server (de ftp-control poort). De verbinding vanaf de client gezien gebeurt ook op poort 21. De client geeft aan de server mee op welke poort hij terug mag conecten. Daarna verbindt de server vanaf poort 20 (de ftp-data poort) op de server, terug op de hoge poort die de client zojuist heeft opgegeven. Tja waar zou het woordje non-passive nu vandaan komen :? ;)

Ofwel in dit geval moet zowel poort 20 als 21 openstaan voor de buitenwereld in beide richtingen.

Dan is er nog passive ftp.
Hierbij verbind de client op poort 21 op de server. De server geeft dit keer het port-commando aan de client. Hierop verbindt de client vanaf een hoge poort met een hoge poort op de server (de poort die de server zojuist heeft terug gegeven dus).

Als je een van beiden wil gebruiken, dan zou ik toch adviseren op de ip_contrack_ftp module te laden en de volgende regels in je firewall op te nemen:

voor beiden:
code:
1
2
iptables -A INPUT     -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT 
iptables -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT

non-passive:
code:
1
2
iptables -A INPUT     -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT 
iptables -A OUTPUT -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT

en voor passive:
code:
1
2
iptables -A INPUT     -p tcp --sport 1024: --dport 1024:  -m state --state ESTABLISHED -j ACCEPT 
iptables -A OUTPUT -p tcp --sport 1024: --dport 1024:  -m state --state ESTABLISHED,RELATED -j ACCEPT

Let erop dat bovenstaande dus wel met genoemde module moet, die kan namelijk de port-commando's eruit vissen ;)

  • Stalkert
  • Registratie: Januari 2001
  • Laatst online: 12-06 08:07
ik heb die iptables toegevoegd maar ik merk eigenlijk geen verschil ? kan ik controleren of ze daadwerklijk werken ?

Let er wel even op dat ik wel kan FTP-en alleen bij een aantal servers niet.. dan kom ik niet verder dan de melding: "Connecting data socket... " , waarna hij een socket error geeft... hij probeert dus de directories te listen, maar dit krijgt ie niet voor elkaar.

  • Stalkert
  • Registratie: Januari 2001
  • Laatst online: 12-06 08:07
kick ;)

Verwijderd

Je hebt dus wel zoals gezegd die module nodig om dit ta laten werken.

Verder is de volgorde van de regels in je firewall uiteraard heel belangrijk.
Als er eerst een deny rule(voor verkeer op die poorten) komt voor deze regels bijvoorbeeld, dan hebben de regels geeneens nut.

Verder zal je eens met een packet sniffer kunnen analyseren wat voor een verkeer er op dat moment plaatsvindt. Wat de precieze foutmelding is etc. Werkt de ftp-client in passive mode wel?
Bovenstaande is een voorbeeld van een data-poort die aan een van de 2 kanten niet geopend kan worden.
Pagina: 1