Friday, February 20, 2015

Configuring Lync 2013 Federation with Google Talk through XMPP

I’ve been reminded several times by my colleagues over the last two years that I never wrote a blog post demonstrating how to federate Lync Server 2013 with Google Talk and my usual response has always been that there are plenty of posts out there already but because I had to recently configure this for a client, I figure I’ll write the post just so I can say I’ve done it.

Before I begin, please note that Google is going to discontinue XMPP and their Google Hangouts does not support XMPP federation. Adding users on Google Chat has been problematic over the past year as Google has been trying to block domains that SPAM users. What all this basically means is that your mileage will vary and the amount of time Lync 2013 users would be able to IM Google Talk users will be limited. The following blog post by Matt Landis does a good job of explaining this:

Google Blocking XMPP Invites From Federated Partners

http://windowspbx.blogspot.com/2013/03/google-blocking-xmpp-invites-from.html

With that out of the way, the TechNet documentation that I will be following can be found here:

Example XMPP configuration in Lync Server 2013 – XMPP federation with Google Talk

https://technet.microsoft.com/en-us/library/jj204807.aspx

Step #1 – Enable XMPP in the Lync Topology

Begin by launching the Lync Server 2013 Topology Builder and loading your organization’s topology:

image

Then open the properties of your Edge server and ensure that Enable XMPP federation for this Edge pool (port 5269) is enabled:

image

Next, edit the properties of your Lync server and enable the Enable XMPP federation setting:

image

image

image

Proceed by publishing the topology:

image

image

Step #2 – Add gmail.com as an XMPP Partner

Continue by launching the Lync Server Management Shell and execute the following cmdlet:

New-CsXmppAllowedPartner gmail.com -TlsNegotiation NotSupported -SaslNegotiation NotSupported -EnableKeepAlive $false -SupportDialbackNegotiation $true

image

The cmdlet above basically configures the following in the XMPP Federated Partners section in the Lync Server 2013 Control Panel:

image

image

Step #3 – Creating a Public DNS SRV Record for XMPP

Create a public SRV record in your public DNS SIP domain with the following properties:

Domain: <your SIP domain>

Service: _xmpp-server

Protocol: _tcp

Priority: 0

Weight: 0

Port number: 5269

Host: <your SIP address>

image

Step #4 (Optional) – Install XMPP Components onto the Edge Server and Assign Certificate

If the configuration setting Enable XMPP federation for this Edge pool (port 5269) was not enabled and you had to enable it during Step #1, log onto the Edge server, launch the Lync Server 2013 Deployment Wizard and run the Setup or Remove Lync Server Components to install the Lync Server XMPP Translating Gateway Proxy:

image

Once the Lync Server XMPP Translating Gateway Proxy has been installed, you should see the service listed in the services console:

image

Ensure that there is a certificate assigned to the XmppServer service by launching Request, Install or Assign Certificates:

image

Step #5 – Ensure that TCP 5269 is allowed through the firewall to the Edge Server

As noted in the following TechNet article:

Port summary - Single consolidated edge with private IP addresses using NAT in Lync Server 2013

https://technet.microsoft.com/en-us/library/gg425891.aspx

… ensure that TCP 5269 is allowed through the firewall and into the Edge server:

image

With the above steps completed, you should now be able to communicate with Google Talk users via Lync 2013.

2 comments:

Anonymous said...

I have done all these but still can't send an IM to google. I removed my contact and re-added it.

Anonymous said...

Nevermind. it looks like it won't work for people who have moved to Google hangouts.