IIS 7.5 - can't upload through FTP client

I have a brand spankin’ new virtual server running Windows Server 2008 R2, IIS7.5. I’m trying to create a user with read/write FTP access to a particular directory, and — embarrasingly enough for a web dev, but it’s my first experience with Server '08 — I’m failing miserably. Here’s what I’ve done:

  1. Created an FTP site in IIS with physical path C:\inetpub\ftproot (All Unassigned, Port 21, Allow SSL, Basic Authentication, Read access for all users)
  2. Changed FTP User Isolation to “User name directory”
  3. Created a local user “ftpuser” with a password that never expires
  4. Set Home Directory for ftpuser to C:\inetpub\wwwroot heFTPsite
  5. Added a virtual directory “ftpuser” to the LocalUser folder with physical path C:\inetpub\wwwroot heFTPsite
  6. Granted Read and Write permissions to user “ftpuser”
  7. Granted NTFS Read and Write permissions to C:\inetpub\wwwroot heFTPsite for user “ftpuser”.

Then, I fired up Filezilla and logged in as ftpuser. The first thing I noticed is that I’m accessing the folder C:\inetpub\ftproot, and not C:\inetpub\wwwroot heFTPsite. So, my first question is, what did I do wrong there?

Second, although I can download files from this folder using Filezilla, I am unable to upload. This even occurs when I FTP in with the local admin account, so I think it’s something site-setting related, but damned if I can figure out what. When I try to upload a file, I get this error in my FTP log:



Status:	Connecting to [IP:port]...
Status:	Connection established, waiting for welcome message...
Response:	220 Microsoft FTP Service
Command:	USER localadmin
Response:	331 Password required for localadmin.
Command:	PASS ********
Response:	230 User logged in.
Command:	OPTS UTF8 ON
Response:	200 OPTS UTF8 command successful - UTF8 encoding now ON.
Status:	Connected
Status:	Starting upload of C:\Documents and Settings\rorzabal\Desktop	est.txt
Command:	CWD /
Response:	250 CWD command successful.
Command:	PWD
Response:	257 "/" is current directory.
Command:	TYPE A
Response:	200 Type set to A.
Command:	PASV
Response:	227 Entering Passive Mode ([IP]).
Command:	STOR test.txt
Response:	550 Access is denied. 
Error:	Critical file transfer error


Advice? Thanks.

Does the local admin have a home directory?

Go through this and see what happens.

Thanks for that. I had granted FTP users access to the virtual directory, but not the ftp site itself. :smack:

That just leaves the question of why the new account’s default directory is the FTP site root, rather than the Local Path for the user account. Is there somewhere else I need to set this?

I should add: User Isolation for the FTP site is set to “Do not isolate”, and “Start users in user name directory”. Both the user’s Local Path, and the physical path for that user’s virtual directory in IIS, are C:\inetpub\wwwroot heFTPsite…but they’re still defaulting to ftproot.

Create an empty c:\inetpub\ftproot\ftpuser folder. It’s a quirk in the way virtual directories work.

Ok, created that directory. The user account is still defaulting into ftproot on login. :frowning: