With the release of IIS 7.5 (available in Windows Server 2008 R2 and Windows 7), FTP is finally re-integrated into the main IIS Manager. Those of you still using 7.0 know that you need to use the IIS 6 Manager to manage FTP sites. One of the great new features in IIS 7.5 FTP is the ability to setup virtual hosts for FTP (multiple FTP sites on port 21 with the same IP) similar to how you would setup web sites with host headers in IIS. One of the trip ups when you attempt to log in to FTP is the user name needs to include the virtual host name. Consider the following setup:
Notice that one of the bindings is ftp:192.168.1.101:21:cfbeam.localhost, when you actually connect with an FTP client the username needs to be entered as:
VirtualHost|UserName
Notice the pipe (|) between the virtual host and the user name. Assuming you don’t put that in, you’ll likely see the following in the IIS FTP logs and in your FTP client:
Response:Â Â Â 220 Microsoft FTP Service
Command:Â Â Â USER brent
Response:Â Â Â 530-Valid hostname is expected.
Response:Â Â Â Â Win32 error:Â Â No such host is known.
Response:Â Â Â Â Error details: Hostname didn’t match any configured ftp site.
Response:Â Â Â 530 End
Error:Â Â Â Could not connect to server
For more information on configuring virtual hosts in IIS 7.5 see http://learn.iis.net/page.aspx/320/using-ftp-virtual-host-names/
I guess user@example.com was too tough for them.
Thank you for the hint with the pipe. I haven’t seen this in the MS documentation.
BLESS ON YOU, MAN!!! I’ve spend a few hours for searching the way to connect to my FTP.
My thanks!
Tip for everyone:
Don’t forget to add READ/WRITE permissions to your ftp user in the SECURITY->EDIT options of your site directiry, or you will get an ACCESS DENIED ERROR in your FTP-client.
and how the hell Microsoft smat a55es think it will work from a unix box where the pipe sign is to widely used by everything else ???
Thanks for the information on the pipe! I have spent days working with different configurations and nowhere did anyone mention a pipe before the user name.