Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   INDY: FTP via Proxy (schon wieder...) (https://www.delphipraxis.net/179606-indy-ftp-via-proxy-schon-wieder.html)

freejay 19. Mär 2014 13:40

INDY: FTP via Proxy (schon wieder...)
 
Hallo zusammen,

ich weiß es gibt einige Postings zu diesem Thema: Ich glaub, ich hab sie alle gelesen... auch in anderen Foren dieser Welt...

Leider habe ich immer noch keine Lösung.

Um auf externe FTP-Server zugreifen zu können, muss ich bei uns in der Firma in FileZilla einen "generischen Proxy" mit dem Typ "HTTP1.1 unter Verwendung der CONNECT Methode" einstellen. Damit komme ich ohne Probleme auf alle FTP-Server.

Ich habe auch ein Delphi-Programm, dass Daten von FTP-Servern abholen oder hinsenden soll. Das mache ich mittels einer INDY TIdFTP-Componente.

Ich habe nach den Anleitungen, die ich im Netz gefunden habe, die IOHandler-Eigenschaft mit einem TIdIOHandlerStack verbunden und dessen TransparentProxy-Eigenschaft mit einem TIdConnectThroughHttpProxy und dort die entsprechenden Zugangsdaten des Proxys eingetragen.

Leider fürt ein Connect immer noch zu diesem Fehler:

>Im Projekt FJsMiniFTP.exe ist eine Exception der Klasse EIdSocketError mit der Meldung 'Socket-Fehler # 10060Zeitüberschreitung bei Verbindung.
' aufgetreten.<

Was mache ich falsch oder was fehlt noch?

Wäre toll, wen mir hier jemand konkret helfen könnte. Das ist mein dritter Anlauf in drei Jahren das hinzubekommen...

Danke im Voraus!

sx2008 19. Mär 2014 16:22

AW: INDY: FTP via Proxy (schon wieder...)
 
Also erstmal: FTP-Proxies sind ein riesen Dreck da es mindestens 10 verschiedene Arten gibt wie der FTP-Client den Proxie ansprechen muss.
Eine Methode ist dabei völlig abweichend von allen anderen.
Und zwar spricht der FTP-Client dabei mit dem Proxy per HTTP; also einem völlig anderen Protokoll.
Diese Methode ist auch als "Cern-Proxy" bekannt.
Der Proxy spricht mit dem FTP-Server aber mit dem FTProtokoll.
Dies wird auch vom Internet Explorer benützt wenn er über den Firmenproxy FTP-Dateien runter oder hochladen soll.
Ein normaler FTP-Client (wie z.B. FTP.exe von Windows) kann mit Cern-Proxies aber absolut nichts anfangen.
Dies gilt auch für IdFTP.
Dann kommt immer die Argumentation von Seiten der Kunden und unwissenden Schlipsträgern: "aber mit dem IE geht's doch auch, warum nicht mit Ihrer Software?". :evil:

Die anderen Methoden werden manchmal auch als Transparentproxie bezeichnet wobei es aber keinerlei Standardisierung gibt.

Brauchst du das beruflich oder privat?

freejay 19. Mär 2014 16:31

AW: INDY: FTP via Proxy (schon wieder...)
 
Ich programmiere mittlerweile ausschließlich beruflich ;-)

Ich weiß nur, dass es mit den geschilderten Einstellungen mit FileZilla problemlos geht.

Da ich mit Internetkommunikation auf Programmierebene kaum Erfahrungen habe und mich daher wenig mit den dabei verwendeten allgemeinen Begrifflichkeiten auskenne und auch das Zusammenspiel der der INDY-Komponenten nicht kenne, komme ich hier bislang auch nicht durch probieren weiter.

freejay 24. Mär 2014 09:34

AW: INDY: FTP via Proxy (schon wieder...)
 
Hat hier sonst niemand Erfahrungen damit?

Wäre schön, wenn es noch jemand geben würde, der mir hier weiter helfen kann!

Danke!

WARP4 24. Mär 2014 11:55

AW: INDY: FTP via Proxy (schon wieder...)
 
Hallo FreeJay,

grosse Erfahrung ist bei mir vielleicht zuviel gesagt, aber ich hatte mal ein ähnliches Problem bei einem idFTP (Indy 9) basierten Tool.
Geholfen hat mir damals, dass ich "idFTP.Passive" auf TRUE gesetzt habe.
Das Symptom war etwa wie bei dir (kann mich jetzt nicht mehr an den genauen Fehlercode erinnern; war jedenfalls ein Read Timeout).
Aber google mal nach idFTP.Passive, es gibt da einige Infos die dir eventuell helfen können das Problem einzugrenzen.

Gruss,

Warp

freejay 24. Mär 2014 12:40

AW: INDY: FTP via Proxy (schon wieder...)
 
Danke für die Antwort!

Bei mir ist Passive allerdings schon auf True gesetzt.

Hab's auch mit False probiert: Ging beides nicht.

mjustin 24. Mär 2014 13:48

AW: INDY: FTP via Proxy (schon wieder...)
 
Da ich aktuell Indy 10.6 nicht lokal installiert habe, nur eine Frage: welche Proxytypen sind in TIdFTP auswählbar? (Es ist eine Enumeration mit "halbwegs" verständlichen Bezeichnungen). Wenn ich es richtig gelesen habe, geht der FTP Zugang über eine HTTP 1.1 Proxy Typ.

freejay 24. Mär 2014 13:58

AW: INDY: FTP via Proxy (schon wieder...)
 
Hallo,

unter TidFTP.ProxySettings.ProxyType gibt es folgende Möglichkeiten:

Delphi-Quellcode:
  TIdFtpProxyType = (
    fpcmNone,//Connect method:
    fpcmUserSite, //Send command USER user@hostname - USER after login (see: http://isservices.tcd.ie/internet/command_config.php)
    fpcmSite, //Send command SITE (with logon)
    fpcmOpen, //Send command OPEN
    fpcmUserPass,//USER user@firewalluser@hostname / PASS pass@firewallpass
    fpcmTransparent, //First use the USER and PASS command with the firewall username and password, and then with the target host username and password.
    fpcmUserHostFireWallID, //USER hostuserId@hostname firewallUsername
    fpcmNovellBorder, //Novell BorderManager Proxy
    fpcmHttpProxyWithFtp, //HTTP Proxy with FTP support. Will be supported in Indy 10
    fpcmCustomProxy // use OnCustomFTPProxy to customize the proxy login
  ); //TIdFtpProxyType
Ich habe sie alle schon ausprobiert.

Ich weiß aber auch gar nicht, ob dieser ProxyType überhaupt greift, wenn man einen IdIOHandlerStack mit einem IdConnectThroughHttpProxy dran hängt (was in anderen Postings vorgeschlagen wurde)...

Ich habe auch schon probiert, meine Zugangsdaten nur bei den ProxySettings ein zu tragen - ohne das "IdIOHandlerStack-IdConnectThroughHttpProxy"-Konstrukt: ging auch nicht...

mjustin 24. Mär 2014 14:17

AW: INDY: FTP via Proxy (schon wieder...)
 
Zitat:

Zitat von freejay (Beitrag 1253243)

Delphi-Quellcode:
 
    fpcmHttpProxyWithFtp, //HTTP Proxy with FTP support. Will be supported in Indy 10

HttpProxyWithFtp sieht passend aus, aber "Will be supported in Indy 10" ... Handelt es sich um Indy 9?

freejay 24. Mär 2014 14:27

AW: INDY: FTP via Proxy (schon wieder...)
 
Ich arbeite bei diesem Projekt mit XE5 und die Liste der installierten Packages sagt dort: "Indy 10".


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz