Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PRT and EPRT don't respect the configured proxy #1560

Open
TSRBerry opened this issue Apr 18, 2024 · 6 comments
Open

PRT and EPRT don't respect the configured proxy #1560

TSRBerry opened this issue Apr 18, 2024 · 6 comments

Comments

@TSRBerry
Copy link

FTP Server OS: Linux

FTP Server Type: Vsftpd

Client Computer OS: Arch Linux

FluentFTP Version: 49.0.2

Framework: .NET 8

Currently when you try to transfer files in active mode using FtpClientSocks5Proxy the client doesn't send a BIND request to the proxy server and instead listens on a random port on the client (as it should when no proxy is involved).

However when a SOCKS5 proxy is configured the client should send a request to the proxy server to open a port which could then be used for the data connection. Without this step the server tries to establish the data connection with the client directly, which might not be possible (the client could only be reachable over the proxy).

@FanDjango
Copy link
Collaborator

Nobody using active mode yet, I supppose.

@TSRBerry
Copy link
Author

I was trying to integrate this client in my test suite for my SOCKS5 proxy library, which is how I noticed this issue.

@FanDjango
Copy link
Collaborator

Ok, that's fine. I have no real way to test proxy related stuff, so there is nothing much I can do right now.

@FanDjango
Copy link
Collaborator

The guy who initially contributed the proxy code is no longer in the loop, it appears.

@robinrodricks
Copy link
Owner

robinrodricks commented Apr 25, 2024

Do you have a good SOCKS5 proxy library @TSRBerry ? Is it better than our implementation?

@TSRBerry
Copy link
Author

I am currently working on one, but it is not yet SOCKS5 compliant and the API is still unstable.

I have thought about adding bind support to your implementation, but I don't think my time budget would allow that for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants