Link to home
Start Free TrialLog in
Avatar of mkholief
mkholief

asked on

FTP site using IIS 6 (windows 2003 server)

Hi
I created FTP site with the following structure (IIS Windows 2003 Server):

Main Directory: Storage
Sub Directories are: A1, A2, A3,…

I created the FTP site with the option to isolate users enabled.
For each directory I should make a user with the right to access A1 for example without accessing the others. I created the users and after using that FTP accounts, I received an error message that home directory is not accessible. That’s why I gave the users the right to read the Storage directory but it didn’t work too.

I tried at the beginning to create FTP site for each user but I was faced by the fact that I should either add another port (not available) or add an IP for each user which is not logic at all.

I need your help with this!
Thanks

Avatar of meverest
meverest
Flag of Australia image

i'm assuming that the usernames are 'A1', 'A2', etc?

make sure the users have 'log on locally' right.

cheers.
ASKER CERTIFIED SOLUTION
Avatar of shahrial
shahrial
Flag of Singapore image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of frederichenry
frederichenry

Since you're isolating users (and this is usually done if you have ADS working in the background), two user attributes have to be modified before it will allow their home directories (also assigned in ADS, and I'm assuming A1, A2 are assigned as their home directories) and they are:
msIIS-FTPRoot
msIIS-FTPDir

Neither are accessible using the user dialog in the site management tool, so you need to do it programmatically.  Here's a script:

Set adsRootDSE = GetObject("LDAP://RootDSE")
strDomainPath = adsRootDSE.Get("DefaultNamingContext")
Set adsDefaultDomain = GetObject("LDAP://" & strDomainPath)
Set adsRootDSE = Nothing

Set objUserOU = GetObject("LDAP://ou=Users," & strDomainPath) ' Modify this so that it points to your users OU.

Set objUser = objUserOU.GetObject("user", "CN=joeblow") ' Change joeblow to whatever username you're modifying.

' Set setting.
objUser.Put "msIIS-FTPRoot", "\\server\storage"
objUser.Put "msIIS-FTPDir", "\A1"

' The following will remove the setting.
' objUser.PutEx 1, "msIIS-FTPRoot", 0
' objUser.PutEx 1, "msIIS-FTPDir", 0

objUser.SetInfo

I use this all the time and it works wonderfully.
Hello frederichenry,
    In IIS 6.0 why cant you create multiple ftp sites pointing to different folders and have them isolated from one another.
To ALL,

I have set up a few FTP servers on a Win2003 box. While I've had very little problem getting one of the Domains working (the exception being a couple of File/rights issues) I'm having BIG trouble getting all up at once.

I've tried using (All Unassigned) with different ports (e.g. - 2001, 2002, 2003, etc.) for each FTP Site/server.  In each case, the connections attempts are "Refused".  I've checked my Firewall (Netgear) to ensure that the Ports have been opened (they are).

Not getting any indication where the problem lies, I decided on a different approach.  I bound additional IPs to the NICs (30.30.10.2, 30.30.10.3, 30.30.10.4, etc.) and assigned one to e3ach FTP Site on the server.  NOW I'm befuddled as to what type of DNS record I need to include to allow the internal DNS server to point traffic to the appropriate Site. (FTP, remember).

HAAALP ?!?!?