Implementing Live Communication Server 2005 is an easy way to improve internal communications. When a lot of your employees are "road warriors" or working at customer sites, it might be a good idea to implement Microsoft Office Communicator Web Access as well. It provides access to Live Communication Server using a web interface. A secured HTTP connection (SSL) is all you need to chat with the rest of your colleagues.
This post gives a quick overview of the installation process and shows a bit of the user interface as well.
Lab environment
- Domain: newtech.local with a domain controller called newtech-dc
- SQL Server: SQL Server 2005 SP1 running on newtech-sql
- Live Communication Server 2005 SP1: enterprise version installed on newtech-lcs
All servers are virtual machines on ESX 3.0.1.
Installation of LCS 2005 with SP1
Follow the normal installation procedure as described in the documentation. I had some issues with creating the SQL databases but that was purely because of the lack of space on the database and log disk. The error messages are quite cryptic, as always.
I installed the enterprise version so you have to create what is called an enterprise pool. It is just a bunch of servers that provide the core services. An enterprise pool needs a name. I used the name newtech so the FQDN of the LCS enterprise pool is newtech.newtech.local. You also need a DNS A record for this FQDN that points, in this case, to the ip address of newtech-lcs, the only front-end server in the pool.
Enable users for LCS
This is done using the Active Directory Users and Computers (ADUC) snap-in on newtech-lcs, the server where I installed LCS 2005.
For example:

You just need to select Enable users for Live Communications... Then you follow the wizard and assign the user to a server or pool (in this case, a pool). You should see that the user has been enabled.

Communicator Web Access
Download the package from Microsoft here.
I installed the package on the same server as LCS (newtech-lcs) but that is not necessary. Before installing the package, install the following components:
- IIS 6.0
- .NET Framework 2.0
If you installed .NET Framework 2.0 before IIS 6, you need to run "aspnet_regiis –i". That file is normally in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727.
Configuring certificates
You need several certificates to get things to work:
- SSL certificate on the Communicator Web Access (CWA) virtual server in IIS
- Certificates for MTLS on Live Communication Server AND Communicator Web Access
In my test setup, I used a mix of methods to generate certificates: selfssl.exe and Certificate Server.
To generate the SSL certificate for the CWA virtual server or web site, I used selfssl.exe. Selfssl.exe is part of the IIS6 Resource Kit tools. I used the following command line on the server where Communicator Web Access was installed:
Selfssl /N:CN=lcs.newtech.local /V:1000 /T
This creates a certificate for common name lcs.newtech.local. Users will use https://lcs.newtech.local to connect to Communicator Web Access. Of course, you can choose any name you wish. Just create a corresponding A record in DNS to get to the server. The certificate is valid for 1000 days (/V) and the certificate is added to the trusted roots on the web server (/T). You will be asked to attach this certificate to the first virtual server (Default Web Site). You can do that and copy it from there to the CWA virtual server or you can add an extra parameter to selfssl and attach the certificate directly to the CWA virtual server. In the end, you should have something like:

Above you see the Communicator Web Access virtual server with the properties of the server certificate that is attached to it.
Next, you need certificates for MTLS because CWA communicates with LCS using a certificate. When LCS responds, it uses its own connection to CWA. To achieve this, two certificates are needed:
- A certificate for LCS with, as common name, the FQDN of the enterprise pool (newtech.newtech.local)
- A certificate for CWA with, as common name, the FQDN of the server where web access is installed (newtech-lcs.newtech.local)
You can also use one certificate but then you need to configure subject alternate names.
To create the certificate for newtech.newtech.local, I used selfssl.exe again. After the certificate is in the certificate store, you need to configure LCS to use it. In the management console, open the properties of the front-end server in the pool. In my case, that's newtech-lcs.newtech.local.

In the properties, use the Add... button to add a connection. In transport type, select TLS and then select the certificate for newtech.newtech.local. As a result, you should see something like below:

LCS 2005 is now configured to accept TLS connections on port 5061 using the correct certificate.
Now, you need a certificate for Communicator Web Access. You can use selfssl.exe again. This time, however, I used the Enterprise CA installed on newtech-dc. In IIS, I generated a new request for newtech-lcs.newtech.local and submitted it directly to the Enterprise CA. The CA will issue the certificate directly so it will be in the certificate store right away. Since it is an enterprise CA, the certificate is also trusted.
Now you can configure Communicator Web Access with a certificate. In the management console of Communicator Web Access, open the properties of the server object. Use the Select Certificate... button to select the correct certificate.

Using Communicator Web Access (CWA)
I configured CWA so that users connect to it using https://lcs.newtech.local. When a user does that, the following UI is shown:

The user will be warned about pop-up blocking. Pop-up blocking should be turned off for this website. The user can now logon using the web form. The user gets the web form because I configured CWA for external access. It is also possible to switch it to internal use and use NTLM/Kerberos.
One thing to do is to allow the users to have remote access. Without it, they cannot use CWA. This is done using Active Directory Users and Computers on LCS. Just right click a user and select Configure Live Communication Users. Then configure remote access as shown below:

The user can now logon and will see the following interface.

The web interface is very similar to the full-blown 32-bit version and also comes with message pop-ups at the right bottom corner of your screen. It is sufficient if you only need instant messaging and is ideal for remote users connecting from computers outside the domain (kiosk, internet café, home computers, ...)
Of course, when you implement this in a production environment, you need to put this server in the DMZ. Or put it on your internal network and use a reverse proxy to provide access to it.
Conclusion
Microsoft Office Communicator Web Access is a great solution to extend the reach of Live Communication Server 2005 beyond the internal network. It is easy to implement once you know about the required certificates.