I have Windows Server 2016 running on an Azure VM, and I'm trying to get ftp running on it. FTP role is installed, ports 21 and 20 are opened in the firewall and in Azure portal. And still port 20 doesn't seem to be open, since the port scanner times out. My Firewall log doesn't show the attempt, sp I guess it's blocked in AZure somewhere, but my port 20 is definitely opened (inbound. Do I have to do anything outbound?). I also opened ports 7000-7014 in Azure (Windows Firewall has a predefined FTS passive data rule with 1024-65535, so I didn't add anything here), and put those in the "FTP Firewall support" item of the IIS and put in the external IP of my VM.

When going ftp://localhost from within my VM, I login with the user I authorized in the IIS, and it works how it should. When accessing it over dns name over the internet, I tried to login with my credentials, and I get a timeout. i tried username, \username, myPC\username, |username, and they all do the same. THe connection does work over the internet via cli with ftp myDNSname -> |username -> password.

Edit: I did search the internet, and then stackexchange, but didn't find anything that might explain what's going wrong here. So I turned to you, hoping you would help me.

Edit: Pictures to show the current state.

Another edit: Log from FileZilla: PWD 257 "/" is current directory. TYPE I 200 Type set to I. PASV 227 Entering Passive Mode (13,95,157,108,225,30). LIST Die Datenverbindung konnte nicht hergestellt werden: ENETUNREACH - Netzwerk nicht erreichbar // It says network unreachable 150 Opening BINARY mode data connection. // After this comes a timeout

Azure inbound rules

Firewall inbound rules

FTP site bindings

  • 1
    Please explain your downvote, so I can improve my post? Dec 26, 2016 at 11:06

2 Answers 2


Although the windows firewall seems to allow all traffic that’s required, we also need to enable stateful FTP filtering on the firewall:

netsh advfirewall set global StatefulFtp enable

Then restart the FTP windows service and we should be up and running:

net stop ftpsvc
net start ftpsvc

enter image description here

  • It works in firefox now :D Unfortunately, FileZilla still doesn't work, sending the same log as before. Any Idea how Firefox work but FileZilla doesn't? Dec 27, 2016 at 8:28
  • Update: It works in Explorer too now, problem solved :D Imaginary bonus points if you can tell me how to get FileZilla running, so I can learn for the next time :) Dec 27, 2016 at 8:37
  • @MarlonRegenhardt, "network unreachable" here a good article about the issue, please refer to the link:trac.filezilla-project.org/ticket/10443
    – Jason Ye
    Dec 27, 2016 at 8:57

You have to forward ports 20-21 on your router to point to the server. Then you will be able to access the FTP over the internet via IP or domain name.

UPDATE: Seems to be working... Test

  • I did that, as stated in my post. Also my router in this case it's the Microsoft azure portal. I'm not home right now, but when I get home I can make some screenshots. Dec 26, 2016 at 11:04
  • oh ok, i read wrong. i would check IIS's FTP site bindings. make sure they arent set to bind to the internal IP. it should be bound to * for "any"
    – xR34P3Rx
    Dec 26, 2016 at 11:08
  • I have several bindings set up, for *, local PC name, external DNS name. From within the VM, all of these work. Dec 26, 2016 at 11:15
  • can you post a picture?
    – xR34P3Rx
    Dec 26, 2016 at 11:16
  • Added some pictures. Tell me if you need anything more, not sure I got everything connected to this. Dec 26, 2016 at 23:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .