Why is Skype blocking HTTP Ports 80 and 443?
January 13, 2016Recently, I built a simple NodeJS web server running on port 80 for testing purposes. When I tried to start it, it failed immediately, telling me that “port 80 was already in use”.
Wait .. WHAT?!
Does that mean, I have a web server running on my machine that I don’t know about? I usually have a pretty good idea (at least I like to think that) of what is running on my machine and what is not. So I quickly made sure to find out what was going on here.
First Step: Netstat
To see if this was actually happening, I ran netstat -a. Only to see that *something* was indeed listening on port 80. Unbelievable!
Next: TCPView
So to find the culprit process, I launched tcpview.exe from Sysinternals which gives you additional info that netstat does not – like e.g., the process associated with a port.
BTW: Everything in the Sysinternals Suite is pure gold. If you haven’t heard about it or haven’t used it yet, this is the first thing you should do, after having finished reading this blog post!
Some of the Sysinternals tools like Process Explorer or Process Monitor, I even use on a daily basis.Download it here.
And that’s when it became clear that Skype was the foul egg in this case. This actually made sense in my case, since I had just recently installed Skype on this PC and this problem had not occurred before. But still … WTF?!
Behave Skype!
Digging into Skype’s options, I quickly found a way to turn this annoying behavior off.
Click on Tools, select Options and then in the pop up dialog click on the Advanced tab. Now a couple of sub-tabs appear, one of them being Connection. If you select this one, you find the “Use port 80 and 443 as an alternatives for incoming connections” option. Uncheck it!
I can’t think of any good reason why Skype should be able to use these ports for inbound connections. If anyone has a clue on why they would be doing this, please let me know.