Hi Petersen,
To help you solve the problem effectively, here is a step-by-step guide on the necessary architectural adjustments.
First, Preparing the Environment and Active Directory
Before configuring the server software, the server and domain environment must be properly prepared to communicate with each other. The IIS server must be successfully connected to your Active Directory domain. In Active Directory, it is highly recommended to create a dedicated security group for your FTP users instead of managing each account individually later. After the group is created and users are added, you must ensure that the Microsoft FTP Service, usually running as a Local System or Network Service account, has the necessary network access to query the domain and authenticate these users.
Second, Configuring the File System
The physical file system is the most common point of failure, because if the directory is not explicitly accessible to domain users, IIS will automatically refuse the connection. You first need to create the root directory on the server's local drive. Next, you must modify the folder's security properties to assign NTFS permissions to your domain group, ensuring you select your Active Directory domain from the location menu instead of the local server database. It's also crucial to verify that the Network Service account has at least read permissions to this folder so that the IIS service can view the folder structure.
Third: Configuring the IIS Server
After setting up the platform, you can configure the FTP site in IIS Manager by pointing a new site to the physical folder you just secured. Since you're dealing with domain credentials, which FTP transmits as plain text by default, you must configure the site binding to require an SSL certificate to encrypt the session. For authentication settings, you must enable Basic Authentication and disable Anonymous Authentication, relying on the SSL tunnel to protect the transmission. Finally, you need to navigate to the FTP Authorization Rules, delete any default rules, and add a rule that specifically allows the domain group you created, granting them appropriate read or write permissions.
Fourth: Client Connection
When a user attempts to log in using an external FTP client, the login information syntax and connection protocol are crucial for a successful handshake. The username cannot be entered as a simple bare name; it must explicitly reference the domain name, using the standard domain-hash-username format or the username-primary format containing the @ symbol. Additionally, the FTP client must be configured to connect via explicit FTP over TLS or SSL. If a user attempts to connect using regular FTP, a properly configured IIS server will proactively disconnect to protect the domain password from being stolen.
Finally: Troubleshooting Strategy
If you've completed the previous configuration steps and authentication is still failing, there are a few specific areas to investigate. First, verify that FTP User Isolation is disabled in IIS, as enabling it requires a very specific subdirectory structure tailored to each domain user, which will cause logins to fail immediately if those directories are missing. Next, confirm that both port 21 and your specified passive port range are allowed through the Windows Firewall. If network traffic is still active but authentication fails, the Windows Event Viewer Security logs will be the best diagnostic tool, as the error events checked will reveal specifically whether the problem stems from an incorrect password, a locked Active Directory account, or a lack of local login permissions on the server itself.