I use FileZilla for FTP too - it's great! I've never tried proxying
it, but I just loaded it up to find out. If you go to:
Edit --> Settings --> Connection --> Generic Proxy
you can set the proxy to Fiddler. HTTP 1.1 proxy, host = 127.0.0.1
and port = 8888 (by default)
The strange thing is that I did this and when I try to connect to a
site, I see the HTTP CONNECT in Fiddler, but it fails. Maybe someone
can explain the error message:
First, the raw HTTP CONNECT request:
CONNECT
blahblah.host.com:21 HTTP/1.1
Host:
blahblah.host.com:21
User-Agent: FileZilla
Now the raw response from that CONNECT:
HTTP/1.1 502 Connection failed
Connection: close
Timestamp: 10:27:31.243
HTTPS connection failed.
System.IO.IOException: The handshake failed due to an unexpected
packet format.
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer,
Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer,
AsyncProtocolRequest asyncRequest)
at
System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken
message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming,
Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ForceAuthentication(Boolean
receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
at
System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult
lazyResult)
at System.Net.Security.SslStream.AuthenticateAsClient(String
targetHost, X509CertificateCollection clientCertificates, SslProtocols
enabledSslProtocols, Boolean checkCertificateRevocation)
at Fiddler.ServerPipe.WrapSocketInPipe(Session oS, Socket oSocket,
Boolean bSecureTheSocket, Boolean bCreateConnectTunnel, String
sCertCN, String sClientCertificateFilename, String sPoolingKey, Int32&
iHTTPSHandshakeTime)
at Fiddler.Session._handleHTTPSConnect()
I assume this means that FileZilla sent invalid data to Fiddler or did
something else go wrong? I'm using Fiddler 2.3.1.0 on Win XP and
FileZilla 3.3.5.1.