I have a software daemon listening on an arbitrary port, lets say 7500

I would like that server and port to be accessible from the outside world.

The daemon is on a virtual machine on Microsoft Azure, I already set inbound and outbound rules on the network resource group for that port, but this still seems only accessible on localhost.

Something about binding? Not sure anymore

Any insight appreciated

  • Start with netstat -ban, check if your process binds to on port 7500. If so, check the OS firewall and make sure you allow 7500/TCP inbound for ALL profiles (Domain/Private/Public -- if it's Windows). If Linux, sudo netstat -ltpe and sudo iptables -nL.
    – evilSnobu
    Sep 12, 2016 at 22:24
  • Also if this is an ASM Virtual Machine (rather than ARM) make sure you have the right Endpoint exposed (Portal -> VM -> Endpoints).
    – evilSnobu
    Sep 12, 2016 at 22:30

1 Answer 1


I would suggest performing a network capture on the server.

If the connection is blocked by the Azure side, you shouldn't get any packet on the server. In this case, please check the inbound rules of the NSG.

If the connection is blocked by the server itself, you will see the packet in the captured data. In this case, please check the firewall of the server.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.