If you want to set up your own FTP server in Windows, you can do so, but it requires more technical knowledge. Of course, it also gives you more granular control over sharing and security, so it’s better for anyone who has a little computer know-how. Plus, IIS is all about running websites, so if you want to run a couple of websites along with an FTP server, then IIS is the best choice.
It is important to note that there are different versions of IIS available for each flavor of Windows. For example, IIS 5.0 came with Windows 2000 and 5.1 came with Windows XP Professional. IIS 6 was for Windows Server 2003 and Windows XP Professional 64-bit. IIS 7 was a complete rewrite of IIS and was included with Windows Server 2008 and Windows Vista.
IIS 7.5 is a great choice for web servers if you want to use the most features and have the best performance.
Setup and Configure an FTP Server in IIS
If you don’t have IIS installed, you can still use FTP to access your files by using the following steps:
- Open a command prompt and type “ipconfig” to get your system’s IP address.
- Type “netstat -an” to see all of your network connections and their status.
- If you have an FTP server on your network, type “ftp” followed by the IP address of the FTP server in question (e.g., 192.168.1.10).
In Windows Vista and earlier, click on Start, Control Panel and go to Add/Remove Programs. Then click on Add/Remove Windows Components. For Windows 7 and higher, click on Programs and Features from Control Panel and then click on Turn Windows features on or off.
In the components wizard, scroll down until you see IIS in the list and check it off. Before you click Next though, make sure you click on Details and then check File Transfer Protocol (FTP) Service.
If you’re using Windows 7 and up, you can click on the box next to Internet Information Services and FTP Server. You also need to make sure you check the Web Management Tools box otherwise you won’t be able to manage IIS from Administrative Tools later on. For FTP, you need to check the FTP Service box otherwise you won’t have the option to create an FTP server.
Windows will go ahead and install the necessary IIS files along with the FTP service. You may be asked to insert your Windows XP or Windows Vista disc at this point. You shouldn’t need a disc for Windows 7 or higher. ..
Setup and configure IIS for FTP
In the Administrative Tools panel, click on IIS. You will see a screen like this: Now we want to set up the FTP server. So in the first column, you will see the name of your FTP server. In our case, it is called “FTP”. In the second column, you will see the port number that your FTP server should use. In our case, it is 8443. Finally, in the third column, you will see a checkbox to enable anonymous access to your FTP server. This is important because without anonymous access, people can’t easily connect to your FTP server and view your files.
When you open IIS in Vista or earlier for the first time, you’ll only see your computer name in the left hand menu. Go ahead and click the + symbol next to the computer name and you’ll see a couple of options like Web Sites, FTP Sites, etc. We’re interested in FTP Sites, so expand that out also. You should see Default FTP Site, click on it.
If the Play button is greyed out, that means the FTP server is active. Your FTP server is now up and running! You can actually connect to it via your FTP client software. I use SmartFTP, but you can use whatever you like best.
Windows 7 and higher users will see a new look to IIS. The first thing you’ll notice is that there is no play button or anything like that. Additionally, you’ll see a bunch of configuration options right on the home screen for authentication, SSL settings, directory browsing, etc.
To start the FTP server, you have to right-click on Sites and then choose Add FTP Site.
You then choose the type of FTP site you want to create, which can be a local FTP site or an FTP site on a remote server. You also choose the directory where the files will be stored.
Configuring FTP site bindings is important because it tells the FTP server where to find your website. You can leave the binding at “All Unassigned” if you don’t plan on running any other websites on this computer, but you should check the box next to “Start FTP site automatically” and choose “No SSL” unless you understand certificates. ..
Anonymous authentication and authorization can beSetup to allow or prevent access to the site by Anonymous users.
If you’re having trouble connecting to the FTP server, there are a few things you can check. First, make sure that your computer is connected to the network and that your firewall isn’t blocking access to the FTP server. Next, make sure that you have the correct user name and password for accessing the FTP server. Finally, make sure that you’re using the correct port number for accessing the FTP server. ..
If you have an FTP program, you can use it to access the localhost folder.
If you want to share data with a collaborator who doesn’t have access to IIS, you can use FTP to transfer the data over to their computer. To do this, open FTP and navigate to your data source. Then, copy the files you want to share into a new directory on their computer. Finally, use the SFTP protocol to connect your computer to theirs and transfer the files. ..
In Windows 7 and higher, you can pick any location you want via the wizard, but it’s still only one folder. If you want to add more folders to the FTP site, you have to add virtual directories. For now, just open the ftproot directory and dump some files into it. Windows 7 and higher allow for multiple folders to be added as FTP sites using virtual directories. To do this, open the ftproot directory and create new virtual directories as needed. ..
To connect to your FTP server from another computer on your local network, you will need to refresh your FTP client. This will allow you to see your files listed in the directory structure. To do this, open up your FTP client and enter the following command: ftp://localhost ..
To allow FTP connections to your computer, you’ll need to open up the Windows Firewall.
To open ports on your computer for FTP service, make sure all of the connections are checked in the left list and then click on the Settings button. You’ll now be able to open certain ports on your computer based on the service your computer is providing. Since we are hosting our own FTP server, we want to check off FTP Server. ..
Windows Firewall settings:
- In the popup window, change the settings to “Allow all traffic.”
- Click OK.
- The Windows Firewall window will be updated and you will be able to browse and select your desired applications and websites.
In Windows 7 and higher, the process is different for opening the firewall port. Open Windows Firewall from the Control Panel and then click on Advanced Settings on the left hand side. Then click on Inbound Rules and scroll down till you see FTP Server (FTP Traffic-In), right click on it and choose Enable Rule.
To open up the firewall for FTP connections, first click on Outbound Rules and then on FTP Server (FTP Traffic-Out). You will now see a list of all the FTP connections that are currently allowed. To allow a new connection, simply click on the Allow button. ..
IP Address: 192.168.1.1
In your FTP client on the other computer, type in the IP Address you just wrote down and connect anonymously. You should now be able to see all of your files just like you did on the FTP client that was on the local computer. Again, you can also go to Explorer and just type in FTP:\ipaddress to connect.
Now that the FTP site is working, you can add as many folders as you like for FTP purposes. This way, when a user connects, they specify a path that will connect to one specific folder. ..
In IIS, right-click on Default FTP Site and choose New, then Virtual Directory.
In Windows 7, you right-click on the site name and choose Add Virtual Directory.
When you create a virtual directory in IIS, you’re essentially going to create an alias that points to a folder on the local hard drive. So in the wizard, the first thing you’ll be asked is for a alias name. Make sure your alias name is something simple and useful like “WordDocs” or “FreeMovies”.
Now, click Next and enter a name for the alias. For example, if you want to share your movies with friends, you might call the alias “Movie Night.” Click Finish and now your alias is ready to use! ..
If you want to share files, choose Read. If you want people to be able to upload files to your computer, choose Read and Write. ..
If you’re using Windows 7 or later, you can now create a new virtual directory by clicking on the New button in the left-hand pane of the FTP site’s main window. This dialog will show you a list of directories that are available on your computer. You can choose one of these directories to be your new virtual directory.
You can connect to your FTP client by putting in the Path field “/Test” or “/NameOfFolder”. In Explorer, you would just type in ftp://ipaddress/aliasname.
You’ll only see the files that are in the folder that we created the alias for.
That’s all there is to it! You can create as many folders as you like and give out your public IP address to anyone who wants to connect from outside of your internal network. If you want users to connect from anywhere in the world, you’ll have to give them your public IP address, which you can find out by going to http://whatismyipaddress.com/.
To access your FTP server from your local computer, you’ll need to forward the FTP port on your router. This can be done by visiting Port Forwarding is a great site to show you how to forward ports on your router to computers on your home network. You should also read my other posts on port forwarding and dynamic DNS:
- Forward the FTP port on your router to the computer that is hosting the FTP server.
- Visit Port Forwarding for instructions on how to forward ports on your router. ..
Port forwarding is a process of forwarding packets from one computer to another. It is used in order to connect two computers on a network, or in order to access content that is not available through the normal channels.
Dynamic DNS is a service that allows you to set up a remote access account with your computer. This service will automatically configure your computer to use the correct DNS servers for your location, so you can access the internet from anywhere in the world. Dynamic DNS is a great way to keep your internet connection open even when you’re not at home or when you’re on the go.
This is a lot of information with a lot of steps; if you have any questions about all of this, post a comment! Enjoy!