FTP on AWS Cloud using AWS S3

File Transfer is the most important task when you do any business within your multiple offices or with the client or vendors. There are many ways and means to do the File/data transfer across the each other. But all you need is the security and the convenience of the data transfer.

The convenient way to do the File/Data transfer is to configure the in-premises FTP server and share the credentials with vendor or Client to upload or download the data. There are many drawbacks in this old methodology, but it is the simplest solution available.

Many companies are using the Google Drive, Dropbox, and other online services to move the data, but the paying huge money for such services too. The options to avail the service from Dropbox enterprise or Google Drive enterprise is fixed space with the fixed price. The more you need, the more you need to pay for fixed size. This becomes cumbersome when it reaches the limit of the data storage.

Instead of using such paid service, if we use IaaS plat…

FTP configuration on AWS IIS 7.x server

FTP configuration on  AWS Windows instance is a bit different than a normal hosted Windows server configuration. As the AWS keep the both Private and Public IP address for the server instance. In this case, FTP works on Passive mode only.

How to configure the FTP server;

Step 1
* Create a FTP user on your local machine.
Go to 'start' 'computer' and right click to find 'manage' option

Go to 'manage' console and find the 'Local User and Groups' to create the new user for new FTP site. I would prefer to create 'ftpuser' simple to go ahead with.

Keep the password save, the same username and password will be used to access the our new FTP server.

Step 2
*Install the FTP service on Windows server
Open the 'Turn Windows features on or off' from 'Control Panel' and open the 'Program and Features'
Select the Web Server (IIS) under 'Roles'
Come down to the page and find the 'Add Role Services' to add the FTP service to the ISS server.
 Select the 'FTP Server' in available list and install the services. This will take some time to complete.

Once Install we are ready to set our first FTP server under IIS on Windows server.


Step 3
* Configure the FTP server
Open the IIS Manager, to see the FTP options available in IIS service manager. You will find the FTP services on console

Open the 'FTP Firewall Support' and allow the ports to be open for data transfer channel. You can set any port range from 1024 to 63000. In example we have configured with 5000-6000.
DO NOT add any IP address here.
Click on 'Apply' settings from right side panel. This will allow server to accept the Passive Mode FTP connection.

Right click on the 'Sites' and start our first FTP site by selecting 'Add FTP Site' tab.

Use your FTP server name to identified in IIS list.

If you have folder created for FTP server, select the path, or create new folder while selecting the path for FTP site.

Bind the port for FTP site, and allow SSL option if you needed.

Select the 'Basic Authentication' mode and specify the previous created user in 'Allow access to' option.
Make sure the same user has the read/write permission on that folder. If not, allow user to read/write permission in security menu from the folder property.

'Finish' to complete and launch the FTP site.


Step 4
* Secure the site and allowed access from public network
Open the 'Command Prompt' as Run as Administrator

Allow the FTP service to communicate with Public network and Disable the StatefulFtp global setting using below commands.

netsh advfirewall firewall add rule name=FTP_Service action=allow service=ftpsvc protocol=TCP dir=in
netsh advfirewall set global StatefulFTP disable

Open the 'Control Panel' and find the 'Windows Firewall'.
Select the 'Advance settings' from the firewall panel
Verify the FTP services in Public Firewall.


Step 5
* Allow TCP port 21 and 5000-6000 in security group of AWS for Windows instance. To finish the FTP Site.

You will able to access the FTP site from the EC2 instance public IP in Passive mode from any FTP client like FileZilla or WinSCP.

Enjoy the FTP site from anywhere.


  1. Finding the time and actual effort to create a superb article like this is great thing. I’ll learn many new stuff right here! Good luck for the next post buddy..
    AWS Training in Chennai


Post a Comment