Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Our company recently migrated to an externally hosted Exchange server provided by Smarsh.

Is there any documentation on how to setup Team Foundation Server (TFS) 2008 and 2010 with an external Exchange server?

I've looked into authenticated SMTP solutions and haven't seen a real definitive way on how to get this to work. I'm currently attempting setting up a virtual SMTP server on the same box and relaying. It doesn't seem to be working (I haven't exhausted all configuration attempts, but it's looking bleak).

EDIT: The problem seems to be that I cannot get TFS to talk to an external SMTP server that requires authentication. Is there a way to do this?

It seems pretty crappy that TFS has no real configuration for email.

EDIT: I should also note that this is with TFS 2010 (clients being Visual Studio 2010)

share|improve this question

3 Answers 3

up vote 2 down vote accepted

So I was able to make TFS send emails not through a local exchange.

commandbreak was correct in the fact that TFS does not need Exchange. It needs a SMTP server. The problem we were running into is that we still had Exchange, but our Exchange server was off of our domain. This lead to us not being able to pass authentication to this Exchange server because TFS appears not to support authenticated SMTP.

For Server 2008: (should be relevant for 2003) To fix this

  1. I installed the IIS 6.0 Manager and Virtual SMTP server on the box that had the installation of TFS.
  2. Opened the IIS 6.0 manager and configured the virtual SMTP server by right clicking on it and selecting properties.
  3. On the properties window I went to the Access tab and clicked on the Authentication button.
  4. On the Authentication window I selected Anonymous access and Integrated Windows Authentication.
  5. Back on the Access tab of the Properties window I clicked the Connection button.
  6. On the resulting window I made sure that the SMTP server was accepting connections from the local machine.
  7. Back on the Access tab of the Properties window I clicked the Relay button.
  8. I made sure that the local machine could relay through the SMTP server.
  9. Back on the Properties window I went to the Delivery tab and clicked the Outbound Security.
  10. On the resulting window I set the security level to Anonymous access.
  11. Done with the Properties of the SMTP server I fired up the Administration Console for TFS.
  12. Selecting the Application Tier from the tree on the right I scrolled down on the right side to the Email settings.
  13. I clicked the Alert Settings link for the email settings and added the domain IP address (not loopback or localhost) of the local machine (do not know if this is necessary) and a from address that had already been configured in our Smarsh account list.

After closing the TFS Administration Console I went into Visual Studio 2010 and configured myself to receive alerts whenever a work item was assigned to me. I then went through a bunch of bugs created by failed builds and assigned them to me. It took a few minutes but I got the emails.

I can only assume that this works because Smarsh has an account for us with the username/email address that I put in for the from address for the TFS email alerts. I had originally tried setting up the virtual SMTP to use basic authentication using the from email address/username and password, but this didn't work.

I'm not sure if this also works because our domain used to have our MX record point here so the SMTP server is not blacklisted. I would like to think that Smarsh is smart enough to figure out that we're relaying from our internal network to their servers which is basically just back to us. This may not work if you relay and your destination email address for a configured alert is on a service that does checking for junk mail (a GMail, Hotmail, etc type of destination).

Hopefully this will help someone else out. I've been working on trying to configure things way too long!

share|improve this answer

In my experience TFS doesn't need exchange, if anything SMTP, configured as a smart host, is enough to get alerts and notifications working.

What is it that you are trying to do?

share|improve this answer
    
In a way you're correct. I'm going to post how I got it to work as an answer. –  Mike G Jul 7 '10 at 11:30
    
excelent write up –  commandbreak Jul 8 '10 at 1:43

I have written up a how-to for getting TFS working with Microsoft Exchange Server as well. Key is to make sure that it has a receive connector to allow for anonymous SMTP relay only from the TFS application tier servers.

Here's the link to my full blog post about the topic: http://www.edsquared.com/2012/02/10/Using+Exchange+Server+With+TFS+For+Delivering+EMail+Alerts.aspx

Enabling Anonymous SMTP Relay on Custom Exchange Hub Transport Receive Connector for TFS

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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