Question: I've installed TFS 2008, but I can't seem to access the server. When I try to connect to it in Visual Studio, I can't. If I try by browser on a remote PC, I get a generic page cannot be displayed. On the server, I get a 403. Nothing was touched in IIS and the service is running as a Network Service. Any ideas?

Answer: 
I wrote a blog post on diagnosing these types of TFS connections.

<http://blogs.msdn.com/granth/archive/2008/06/26/troubleshooting-connections-to-tfs.aspx> 

The very first thing I do is confirm that it works for a known-good configuration – usually my workstation.

Providing that works and the server appears to be functioning, the next thing I do is ask the user to call the CheckAuthentication web service using Internet Explorer.

The URL for this is: <http://TFSSERVER:8080/services/v1.0/ServerStatus.asmx?op=CheckAuthentication>

By doing this check, I am doing four things:

1. Eliminating Team Explorer from the picture
2. Eliminating the .NET networking stack from the picture
3. Ensuring that Windows Authentication is working correctly (that’s why I say IE)
4. Ensuring that proxy settings are set correctly

In most cases I’ve seen, the TFS connection issues are because the proxy settings have changed or are incorrect. Because .NET and Visual Studio use the proxy settings from Internet Explorer, it’s important to have them set correctly.

In rare cases it’s beyond this. That’s when I start looking at things like:

* Can you resolve the server name?
* Can you connect using the IP address?
* Are there HOSTS file entries? (see: c:\windows\system32\drivers\etc\hosts)
* Can you ping the server?
* Can you telnet to port 8080?
* Does the user actually have access? Run TfsSecurity.exe /server:servername /im n:DOMAIN\User to check their group memberships
* Have you changed your domain password lately? In some cases they’ll need to logoff the workstation and log back on again to get a new security token.
* Is the computer's domain certificate valid? update the certificate: gpupdate /force

Hope this helps.
What happens if you send a simple HTTP request to the server directly?

ie:
telnet 8080 [enter]
GET / HTTP/1.1[enter]
[enter]
[enter]

That might give a hint about whether IIS is actually serving anything. If you can do that on the server, what about from a different machine? If the results are different a good guess is there are some security/firewall issues somewhere. HTH a little.