The File Transfer Protocol (FTP) is a standard network protocol used to transfer computer files from one host to another host over a TCP-based network. FTP is built on Cilent-Server Architecture and it uses separate connections for control and data.
FTP client connects with FTP server with normal Username and Password information called FTP Login details. Following is a complete flow of FTP client - server connection establishment process.
- FTP client sends a DNS query for domain name to get the FTP server IP address(if you are using ftp.domain.com as FTP hostname).
- DNS responds back with the IP address.
- FTP client and server complete three way handshake process.
- The FTP server then sends a 220 response to indicate that the FTP server is ready to accept a login.
- The FTP client sends Username through USER command, and Password through PASS command.
- FTP Server verifies the provided login information.
- If provided login details are correct, FTP server will in turn sends a Welcome message.
- FTP client requests a directory listing.
- FTP server transfer the requested listing.
After specifying FTP credentials, If FTP user does not have required privileges, you may receive following error message in FTP client:
Status: Resolving address of ftp.xxxxx.com
Status: Connecting to xxx.xxx.xxx.xx:21...
Status: Connection established, waiting for welcome message...>
Response: 220 Microsoft FTP Service
Command: USER Administrator
Response: 331 Password required for Administrator.
Command: PASS ***************
Response: 530 User cannot log in, home directory inaccessible.
Error: Critical error
Error: Could not connect to server
In most cases, this error occurs only when FTP authorization rules for default FTP site are not set.
How to fix this error by changing FTP authorization rules!
- Login to the VPS via Remote Desktop connection as an Administrator user.
- Open IIS [Start → Administrative Tools → Internet Information Service].
- Expand Sites option from left pane.
- You will see a Default FTP Site in site list, expand this website.
- Now, double click on FTP Authorization Rules option from the center pane.
- From the right pane, click on Add Allow Rule.
- Select the option of All Users and tick the check box of Read and Write permission.
- Click on OK button to save the changes and Restart Microsoft FTP Services to reflect them.
Follow below mentioned steps to restart Microsoft FTP Services:
- Open Services [Start → Run → type service.msc and Hit Enter].
- Select the service named Microsoft FTP Service.
- Click on Restart link from the left pane option.
Now, try again to login to the FTP account. If everything goes fine, then you should not receive any error while connecting to your FTP account.
To avoid such errors, FTP accounts should be created with appropriate permissions. I have linked the article to properly set up the FTP account from IIS.
Looking for any other help with FTP? Don't forget to check out our Complete FTP Guide.