EPSV opent nog steeds een aparte FTP-dataverbinding. Het verandert de eindpuntinformatie, niet het aantal verbindingen.

Een traditioneel PASV-antwoord levert een adres en een poort. Dat adres kan buiten het netwerk van de server onbruikbaar zijn. EPSV levert een poort en gebruikt het serveradres dat bij de controleverbinding hoort.

Behoud via een proxy de logische identiteit van de FTP-server. Het luisteradres van de tussenpartij is niet automatisch de server die de teruggegeven datapoort bezit.

De dataverbinding heeft ook de bedoelde proxy-route en toestemming nodig om de gekozen poort te bereiken. Het accepteren van een CONNECT naar de FTP-controlepoort staat niet elke volgende dataverbinding toe.

Controleer voordat u EPSV uitschakelt het passieve antwoord en het serveradres en de poort die voor de overdracht zijn aangevraagd. Een geslaagde FTP-login brengt de controleverbinding tot stand; de dataverbinding blijft te controleren. Volg met Python ftplib beide socket-constructors in plaats van alleen op een PySocks-standaard te vertrouwen.

Gerelateerde artikelen