How to allow FTP on Google Compute Engine Windows VM?

All of the Google Cloud Platform instructions seem to be about setting up FTP in other OS like debian, etc. Connection just times out.

On the Windows 2012 Server, I have setup FTP in IIS properly, but the firewall will not let me connect from the outside with FileZilla.

These Google Cloud Network firewall rules are already in place.

Name Source tag / IP range Allowed protocols / ports Target tags

allow-ftp 0.0.0.0/0 tcp:21 ftp-server

allow-passive-ftp 0.0.0.0/0 tcp:5000-6000 Apply to all targets

allow-passive2-ftp 0.0.0.0/0 udp:5000-6000 Apply to all targets

I also made an inbound rule for ftp on port 21 in Windows Firewall.

Still cannot connect. What am I missing?

Thanks


Solution 1:

I was facing exact same issue. Here's how I resolved this:

Inside the Windows VM, go to Control Panel > Windows Firewall > Inbound Rules Create New Rule to allow TCP port 21 connections.

There is already a default rule to allow FTP Traffic In on Port 21 but it has some attached restrictions related to NAT.

After adding a manual rule as above, FTP access from FileZilla starting working instantly.

Solution 2:

Using a Windows instance in GCP you should allow the FTP traffic in your internal firewall ( the firewall from the instance ) and the firewall of you GCP project.

Also it could be caused by the passive mode. View this article : Failed to retrieve directory listing filezilla connecting to IIS FTP behind NAT » Grant Curell