Publishing Communicator Web Access (CWA) with Forefront Threat Management Gateway 2010

In my previous post I outlined configuring Forefront TMG 2010 to publish the OCS 2007 R2 web components. Please see that post for basic installation instructions and network configurations.

In this post, I will outline publishing Communicator Web Access (CWA) to the internet using Forefront TMG 2010.

DNS Records and Certificate Requirements

First lets cover the new DNS records and certificate entries required for communicator web access. With the addition of desktop sharing to CWA, additional DNS records and certificate entries are required to provide that functionality.

The following DNS records are required for CWA:

DNS Record

Usage

Record Type

cwa.domain.com

CWA Access

A record

as.cwa.domain.com

CWA Desktop Sharing

CNAME to cwa.domain.com

download.cwa.domain.com

CWA Desktop Sharing

CNAME to cwa.domain.com

Your certificate will need to have all of the names above on it.

In my environment I have the following certificate information:

Common Name: cwa.winxnet.com

Subject Alt Name(s): as.cwa.winxnet.com download.cwa.winxnet.com

CWA Web Site Configuration

In my example I have two web sites configured on the CWA server. One for internal access and one for external access. When you create virtual servers for CWA you have two options for site types, Internal and External. The only difference is authentication type. Internal sites will let you choose NTLM authentication, which allows for simple access from inside the corporate network on domain joined machines. External sites will use Forms-Based Authentication, or Custom Authentication. Custom authentication can be used to perform two factor authentication with services like RSA or other smart card/pin authentication methods.

In our example our Internal site will be a standard internal site listening on port 443. Our external site however will run on port 4443, and we will perform bridging with the forefront TMG server to give users access to this site.

I will outline creating the external web server, assuming an internal web server has been configured listening on port 443.

First, open the Communicator Web Access management console, this is separate from the OCS 2007 R2 primary admin console, but is included when you install the admin tools on any machine.

Right click on the server name and choose Create Virtual Web Server.

image The first splash screen just gives basic information about requirements for this task, just hit Next.

image

At the next window, this is where you will choose your web server type, choose External.

image

The next window allows you to choose your authentication types. If you were using a third party authentication method you would specify it here. Although it says in the description that the built in windows integrated and forms-based authentication will be used, the external web site will only allow Forms-Based Authentication.

image

The next window confirms those authentication settings, notice NTML is grayed out.

image

The next screen has you specify an SSL certificate to be used with the https requests. You can choose HTTP if you are using an SSL Accelerator device, but you cannot use CWA over HTTP without such a device.

Choose the certificate you created with all the necessary name entries and hit Next

image

The next screen has you specify the IP address and port the web site will listen on. If you have an additional IP address you can use port 443 with a separate IP than your internal server. In our example, I will be using a single IP address and utilizing bridging with Forefront TMG, so I will enter the port as 4443.

image

On the next screen, enter a name to identify the external web site such as CWA External.

image

The next screen has you specify a port to listen to OCS traffic. This is seperate from the web site listening settings. This port is really important if you are collocating OCS Services, or even in this case where we have multiple CWA virtual servers on the same server. This port really does not matter, as long as it does not conflict with another port on the same server used for OCS Traffic. In my case I am entering 5071, my internal server listens on 5070.

image

At the next screen you must specify a Next Hop Pool, this drop down will display all the pools in your environment and allow you to choose a pool and listening port. In my case our poolname is ocs.winxnet.com.

image

Hit Next twice to confirm your settings for the new virtual server, the wizard will create the virtual directory and start the web site for you. As with all of the OCS installations, a log is available at the end for success and failure.

image

Now review your two sites, a screenshot of how the site summary should display is below.

imageTest access to your web site on the port you specified during setup, and you should see a form to login because we chose External for the site type.

image

Now that the OCS configuration is complete, we will configure Forefront TMG Web Site Publishing rules to allow traffic to your CWA services.

Forefront TMG 2010 Configuration

My last post reviewed networking configurations for this Forefront server. You can get away with a single External/DMZ IP address for all of these services if you have a single certificate with all of the names. In my case I have multiple certificates, so another IP address will need to be assigned to the DMZ network card on my Forefront TMG 2010 server.

Once you have added your external IP address, and imported the certificate used on your web server; (See my last post for instructions on both of these steps). We will now create the web site publishing rule for CWA.

Right click on Firewall Policy and choose New->Web Site Publishing Rule.

imageOn the New Web Publishing Rule Wizard first page, enter a name for your rule like CWA. Hit Next.

image 

For a rule action, choose Allow. Hit Next

image

For the Publishing Type choose Publish a single web site or load balancer. Hit Next.

image

For Server Connection Security choose Use SSL to connect to the published Web server or server farm. Hit next.

image

For your internal site name, you will want to specify the same Internal/External site name, whatever is the common name on your certificate, in my case it is cwa.winxnet.com.

image

If you cannot resolve the name correctly from the TMG server, or want to specify a different computer to connect to for that name, you can do so by specifying a computer name or IP Address.

image

Once you have made the necessary entries, hit Next.

For internal publishing details, under path type /* to allow all sub directories required by CWA. Hit Next.

image

Under Public Name Details enter the public name for your site, and hit Next. In my case it is cwa.winxnet.com.

image

On the next page to specify a web listener, choose New.

image

In the new web listener wizard first page, enter a name for the listener like CWA.

image

For Client Connection Security choose Require SSL secured connections with clients.

image

On the Web Listener IP Address page, select the check box next to External, highlight external and choose Select IP Addresses… On this next page, specify the IP address you set aside for CWA.

image

Hit Next, on the next page for Listener SSL Certificates, highlight the IP Address selected on the last page and choose Select Certificate… Choose your valid certificate and choose Select. Hit Next.

image

image

For Authentication settings, choose No Authentication.

image

Because we chose No Authentication, we have no SSO options, just choose Next.

image

Review the settings for your listener and hit Finish.

image

With your listener selected from the drop down menu, hit Next.

image

For Authentication Delegation choose No Delegation, but client may authenticate directly. Hit Next.

image

Leave the default settings for User Sets and hit Next.

image

On the next page, select Test Rule to verify all rule settings are correct. If the result is OK, hit close, then select Finish.

Make sure to Apply your settings to the Forefront TMG server before continuing.

image

If you had a separate IP address for you internal site, and your external site you do not need to do the next step. This next step will configure bridging to direct our user request to port 4443 for this external virtual server.

Right click on your CWA rule and choose Properties.

image

On the Properties page, select the Bridging tab.

image

Where it says Redirect requests to SSL port, enter port 4443, or whatever port you specified during your website configuration. Hit OK.

Again, apply your changes before continuing.

image

You can test the rule again from the Properties page. Simply open the Properties page for the rule and Test Rule will be an option there. If the test returns OK, continue to test your site from a computer outside the network.

Testing and Known Issues

You can test access to this site from Internet Explorer outside the network, you should simply be able to specify the https:// URL of your site, and TMG 2010 will handle bridging the request to the correct virtual server on the CWA server. You can also use CWA for access to a great IPhone OCS App called iDialog by Modality Systems.

A very common known issue for CWA configurations is receiving the error Cannot sign in because your computer clock is not set correctly or your account is invalid.  (Error Code: 0-1-492)

This is an easy fix, and has to do with Service Principal Name (SPN) settings for the CWA Site.

To fix this issue, simply add the correct SPN to your CWA Service Account. This is the account specified during CWA installation to run the service.

You can modify this setting using ADSI Edit, and looking for the attribute servicePrincipalName.

imageEnter the SPN for your site in the form http/cwa.winxnet.com where cwa.winxnet.com is your internal or external FQDN of the site.

I also blogged before about my experiences when load balancing CWA.

Other than those two instances, this configuration is pretty straight forward and just works.

(170)

If you like it, share it!

    Posted on by Randy Wintle in CWA, Forefront TMG 2010, Load Balancing, OCS, OCS 2007 R2, Server 2008 R2, Unified Communications 11 Comments

    11 Responses to Publishing Communicator Web Access (CWA) with Forefront Threat Management Gateway 2010

    1. Sudheer S

      Hi Randy i am facing one issue , from external i am not able to share desktop, its is giving me 403 forbidden error can u help me

       
      • Randy Wintle

        Sure, when you try to share or view a desktop externally, are you getting prompted for the addin, and then the addin is installing fine?

        Does desktop sharing work internally between communicator 2007 r2 clients?

        If you access the communicator web access page from your internal network and try to use desktop sharing, does it work?

         
        • Sudheer S

          Thanks Randy for the response,
          My Internal CWA Desktop sharing is working fine without any issue, from external i can able to install addins without any problem, and from External CWA i can able to share the desktop, but from when i try from internal to external desktop sharing i am getting the below error

          The page cannot be displayed
          Explanation: There is a problem with the page you are trying to reach and it cannot be displayed.

          Try the following:
          Refresh page: Search for the page again by clicking the Refresh button. The timeout may have occurred due to Internet congestion.
          Check spelling: Check that you typed the Web page address correctly. The address may have been mistyped.
          Access from a link: If there is a link to the page you are looking for, try accessing the page from that link.

          Technical Information (for support personnel)
          Error Code: 403 Forbidden. The server denied the specified Uniform Resource Locator (URL). Contact the server administrator. (12202)

           
    2. Randy Wintle

      Ok, first can you confirm what client is inside and what client is outside. (CWA or communicator, or both)

      Also, can you run a trace on your front end and edge server to try and track this down better. If you do a new logging session on the front end, just so S4 and SIP Stack for now, same thing on the edge.

      If you need to know how to do that, let me know.

      If you want, you can send me the results of those traces to randywintle@live.com

       
      • Sudheer S

        from internal i am using CWA and Communicator both

         
    3. Sudheer

      From internal i am using both

       
    4. bob

      Can you send me the url for webcomponents and TMG?

      Thank you,

      BK

       
    5. Pingback: Publishing Communicator Web Access (CWA) with Forefront Threat Management Gateway 2010 | Volta82's Blog

    6. Greg Walrath

      I know you don’t go much in to the non-OCS config of the firewall, but is there a simple rule I can put in place on the TMG box itself so that I can run the Microsoft Update (i.e., get to external web sites) vi an internal proxy server on another box, so I can patch the server without stopping the firewall service?

       
    7. Pingback: Greg Walrath » Office Communications Server update complete

    Add a Comment