I have a small Win2003 server that I need to allow remote file uploads. It is behind a router with port forwarding. Is there something simpler than setting up FTP on IIS and making the necessary changes to both IIS and the router to allow the passive connections through? Is there something more secure (like SCP/SSH) that doesn't get complicated and/or expensive?
One method would be to install WinSSHD. It's an SSH server for Windows. It allows you to connect from an SSH client (the same company has a free one). Once connected, there is an SFTP manager that allows you to transfer files over the SSH tunnel.
As an added benefit, you can also RDP to the server and create port-forwarding rules so that you can tunnel other traffic through your server.
I should point out that the software is free for non-commercial use, or $100 for commercial use.
WebDAV might work for what you need. Everyone says it is dead, or dying, or depreciated as a protocol, but nothing strong has replaced it yet.
Tim mentioned the Filezilla Client. I would like to mention the Filezilla Server.
From the Filezilla Server Wiki:
FileZilla Server is an FTP server that supports FTP and FTP over SSL/TLS. FTP over SSL/TLS provides secure encrypted connections to the server.
I already installed the server once and it is pretty easy to install and configure. (But I did not use the SSL functionality. I don't think it gets that much more complicated.)
You can also use FTPS or SFTP The first one use SSL encryption the second one use SSH in order to perform the transfers.
You can under windows run Serv-u (not that expensive) and good for production which allows you to choose either FTPS or SFTP.
Mmoreover it provides a secure webinterface, that's a point if your client don't have any client.
Personnally I prefer SFTP because I only need to forward one port (usually 22) while in FTP you need : the 20 for the datas / 21 for command and a range of high port for passive transferts