If you don't want to open an incoming port then you will need software to publish *to* the site, rather than from. You would need some software as listed.

Regarding your ASP problem - make sure you have write permissions for IUSR_machinename, although this normally produces a "permission denied" error. If you have an empty file then you probably have some duff code. To download files on ASP I have found the most reliable method is down using WinHttpRequest and then write with FileSystemObject calls (which I can't remember off-hand, but there are loads of examples on the 'net).

Gareth