I'm try to deploy a simple web application from my dev machine to IIS running on a Windows 7 Professional virtual machine.
On this machine I did the following:
Installed Web Deploy 3.6, making sure all features get installed.
Made sure the Web Management and Web Deployment Agent services are set to Automatic and currently running.
Enabled port 8172 in Windows Firewall (no other firewall installed). The rule was already there but not enabled.
Temporarily turned off Windows Firewall to make sure it's still not blocking the port.
When I try:
netstat -aon | findstr :8172
I get no results, so nothing is listening on this port.
As a test, I installed VS 2012 on the server and publishing with Web Deploy works fine. However, this is not the way I need to do it.
What else can I try to make sure that the services are listening on port 8172?
There are two more steps you should check:
Just connect to the remote server through RDP, open IIS and open this option:
In the right panel, stop it. This will actually stop Web Management Service. Then you will be able to check Enable remote connections flag. Check it, click the Apply option in the right panel, then Start.
This is also necessary for enabling you to remotely connect to this IIS server from other computers (like your dev computer).
If you are using AWS EC2 or Azure, opening 8172 port on the virtual machine itself is not enough. There are security groups with inbound/outbound rules as well.
For AWS, you open your EC2 panel, go to Security Groups, then add a Custom TCP Rule for port 8172 as an Inbound Rule. Make sure you do it to the right Security Group (the one used by your Virtual Machine).
Now, if you are using Azure:
That's it.