-
-
Notifications
You must be signed in to change notification settings - Fork 658
FTPS Proxies
-
new FtpClientSocks5Proxy() - Creates a new FTP client to connect to an FTP server using a SOCKS5 proxy.
-
new FtpClientSocks4Proxy() - Creates a new FTP client to connect to an FTP server using a SOCKS4 proxy.
-
new FtpClientSocks4aProxy() - Creates a new FTP client to connect to an FTP server using a SOCKS4a proxy.
-
new FtpClientHttp11Proxy() - Creates a new FTP client to connect to an FTP server using an HTTP 1.1 proxy.
-
new FtpClientUserAtHostProxy() - Creates a new FTP client to connect to an FTP server using a User@Host proxy.
-
new FtpClientBlueCoatProxy() - Creates a new FTP client to connect to an FTP server using the BlueCoat proxy.
-
new AsyncFtpClientSocks5Proxy() - Creates a new FTP client to connect to an FTP server using a SOCKS5 proxy.
-
new AsyncFtpClientSocks4Proxy() - Creates a new FTP client to connect to an FTP server using a SOCKS4 proxy.
-
new AsyncFtpClientSocks4aProxy() - Creates a new FTP client to connect to an FTP server using a SOCKS4a proxy.
-
new AsyncFtpClientHttp11Proxy() - Creates a new FTP client to connect to an FTP server using an HTTP 1.1 proxy.
-
new AsyncFtpClientUserAtHostProxy() - Creates a new FTP client to connect to an FTP server using a User@Host proxy.
-
new AsyncFtpClientBlueCoatProxy() - Creates a new FTP client to connect to an FTP server using the BlueCoat proxy.
- ConnectProxySocks4.cs - For SOCKS4 proxies.
- ConnectProxySocks4a.cs - For SOCKS4a proxies.
- ConnectProxySocks5.cs - For SOCKS5 proxies.
- ConnectProxyHttp11.cs - For HTTP 1.1 proxies.
Create a new instance of one of the proxy classes and then use any of the available API to control the connection.
For example code see above.
The FtpClientSocks5Proxy
supports:
- SOCKS5 protocol as specified in RFC1928 spec
- SOCKS5 username/password authentication as specified RFC1929 spec
It has been tested against VSFTPD using Dante as a SOCKS proxy, both locally and against an Azure installation, where the FTP was running on a local address.
You will need to install Docker on your dev machine.
Docker commands to spin up a local copy for testing:
docker run -d --restart=always -p 9020:20 -p 9021:21 -p 9100-9110:9100-9110 -e FTP_USER=ftp -e FTP_PASS=ftp -e PASV_ADDRESS=172.18.144.1 -e PASV_MIN_PORT=9100 -e PASV_MAX_PORT=9110 -v /data/ftp:/home/vsftpd fauria/vsftpd
docker run -d -p 1080:1080 wernight/dante
- Auto Connection
- Auto Reconnection
- FTP(S) Connection
- FTP(S) Connection using GnuTLS
- FTPS Proxies
- Custom Servers
- Custom Commands
- v40 Migration Guide