djangofan has it pretty close.
You can set up port forwarding through SSH.
You can also, if supported on the server, run an FTP server, but only accept connections from localhost.
Otherwise, where's the security?
Then, suppose you even can only run the server FTP process in user space, and can't glob onto port 21. Ok, call it port 2121.
SSH into server
, with PuTTY, for example, and set up local port forwarding from port 21 to server:2121
or even localhost:2121
if you bound only to 127.0.0.1 on the server FTP process.
Now your SSH program is listening on port 21 of your client (Windows) port 21, and forwarding that over SSH and asking for, e.g. localhost:2121
in the realm of the server environment.
Then, take David Spillett's answer, but use localhost
as the server, assuming you're not already running some other FTP server at your host.
Windows Explorer should then open up ftp://localhost
and you'll see the FTP process running on the server. I suspect that you will only be able to do PASV mode transfers.
Questions?