Cómo ya he comentado en otras ocasiones, para publicar los distintos servicios Web de Lync debemos utilizar un Proxy Inverso o Reverse-Proxy, para ello he publicado distintos artículos sobre IIS ARR y TMG:
Pues ahora tocaba hacerlo con Web Application Proxy, un nuevo servicio disponible desde Windows Server 2012 que viene disponible con el Rol de Acceso Remoto. En este caso voy a mostraros como configurarlo pero ya con la versión de Windows Server Technical Preview. Para ello debemos configurar el servicio de federación (AD FS) en uno de los servidores internos de la red, y además configurar el servidor que hará de Proxy Inverso como un AD-FS Proxy. Necesitamos AD-FS para almacenar la configuración del Web Application Proxy y para la configuración de la autorización. Aquí os dejo como casi siempre un esquema de red en donde tenemos los elementos necesarios para configurar este servicio, además os he puesto a la derecha varias opciones de donde podemos situar el Proxy Inverso en nuestra red:
Para configurar Web Applicatio Proxy debemos hacerlo en varias fases que veremos a continuación y son las siguientes:
- Configuración AD FS en un servidor unido al dominio
- Configuración de AD FS Proxy en el servidor que será nuestro proxy inverso con Web Application Proxy
Los requisitos para esta configuración son los siguientes:
- Servidor unido a un dominio (o un controlador de dominio, pero no sería lo más idóneo)
- Una entidad certificadora, puesto que no necesitamos certificados públicos para la configuración de AD FS puesto que será interno
- Un servidor que no esté en el dominio en donde agregaremos el rol de Acceso remoto en donde se configurará el Web Application Proxy y el servicio de Federación.
Como la configuración del Web Application Proxy se almacenará vía AD FS, será lo primero que tenemos que hacer. Para ello utilizaremos un servidor con Windows Server 2012 R2 y agregaremos el rol de AD FS, por lo que desde el Administrador del servidor pulsamos en Administrar – Agregar Roles y pulsamos en Siguiente
Seleccionamos Instalacikón basada en características o en roles y pulsamos en Siguiente
Selecionamos el servidor sobre el cual queremos realizar la configuración de un nuevo rol y pulsamos en Siguiente
Ahora debemos seleccionar Serviciosde federación de Active Directory y pulsamos en Siguiente
Si seleccionar nada, pulsamos en Siguiente
Pulsamos en Siguiente
Para iniciar el proceso de instalación, pulsamos en Instalar
Una vez que finalice la instalación del rol de Federación, debemos iniciar el asistente de configuración, para ello pulsamos en Configure el servicio de federación en este servidor
Como es nuestro primer servidor de federación, seleccionaremos Crear el primer servidor de federación de una granja de servidores de federación y pulsamos en Siguiente
Seleccionamos una cuenta con permisos de administrador de dominio y pulsamos en Siguiente
Previo a este paso, debemos tener instalado en el servidor un certificado para poder utilizarlo en el servicio de federación, este certificado puede ser privado puesto que únicamente (en este artículo) será utilizado para conectarse el Web Application Proxy. Aquí os dejo un artículo como configurar una CA en Windows Server 2012: Windows Server 2012, Instalación de una CA
Una vez que ya tenemos nuestro certificado, únicamente debemos seleccionarlo (o importarlo en este momento), escribir un nombre para el servicio de federación (debéis crear el registro DNS correspondiente) y escribir un nombre para este servicio.
Ahora debemos especificar una cuenta de dominio (sin privilegios) como cuenta de servicio, si queréis ampliar información sobre la cuenta de servicio aquís tenéis un KB de MSFT https://technet.microsoft.com/en-us/library/hh831782.aspx. Una vez que hemos creado la cuenta y la hemos configurado, pulsamos en Siguiente
Debemos crear una base de datos para la configuración, bien podemos crearla usando Windows Internal Database o utilizando un servidor de SQL. En este caso utilizaremos la opción de Crear una base de datos en este servidor que usa Windows Internal Database
Por último, nos muestra un resumen de la configuración que vamos a realizar a través del asistente, si todo está correcto, pulsamos en Siguiente
Se comprueban los requisitos del sistema para verificar que nuestro servidor cumple con todos ellos, si es así pulsamos en Configurar para iniciar el proceso
Una vez que se ha completado el proceso de instalación, nos los mostrará con la siguiente pantalla, para cerrar esta ventana pulsamos en Cerrar
Ahora lo único que nos queda es probar que el servicio funciona correctamente, para ello accedemos a la siguiente URL: https://adfs.asirlab.com/adfs/ls/IdpInitiatedSignon.aspx y pulsamos en Iniciar sesión
Nos solicitará credenciales y se las especificamos para comprobar que funciona correctamente
Si todo ha salido bien, veremos una pantalla similar a esta. Ahora sí que damos por finalizada la configuración de AD FS que necesitamos para almacenar la configuración del AD FS Proxy que será el servidor que tiene el rol de Proxy Inverso (Web Application Proxy)
Hasta ahora hemos completado la primera parte de la configuración que necesita nuestro Proxy Inverso, por lo que ahora debemos realizar las distintas configuraciones en el propio servidor que hará de proxy. Antes comentaros que el debería tener la siguiente configuración:
- Dos tarjetas de Red con una subred IP diferente en cada interface
- Sólo configurar la puerta de enlace y servidores DNS públicos (8.8.8.8 u otro público) en la interface que tengamos como externa
- Si tenemos una DMZ o distintas VLAN internas, debemos configurar las rutas estáticas necesarias para que desde la interface interna podamos tener conexión con las redes privadas en donde tenemos los servidores que vamos a publicar y el acceso al servicio de AD FS
- Un certificado para configurarlo en las reglas de publicación del Proxy Inverso
- Un certificado (o el mismo que el de la publicación de servicios si procede) para el servicio de Federación
- Modificar el fichero HOSTS del equipo para que pueda resolver los distintos nombres de los servidores que vamos a publicar o que necesitemos tener acceso (AD FS)
- El FQDN del servidor debería ser con el sufijo del dominio interno que tenemos
Una vez dicho esto, vayamos paso a paso configurando todo lo necesario para configurar el rol de Acceso Remoto y preparar la configuración del Web Application Proxy. Para ello, una vez configuradas la tarjetas de red del servidor, establezcamos el FQDN del servidor y modifiquemos el fichero HOSTS del servidor:
Editamos el fichero HOSTS, aquí solo he puesto el los del servidor de Lync, pero habría que poner el nombre del servicio de AD FS que hemos configurado previamente y también nos haría falta la URL de los servicios de nuestro WAC y Exchange si lo tenemos en On-Premises. Aquí no los he puesto porque me he centrado únicamente en Lync
Ahora que ya tenemos los requisitos previos realizados, iniciaremos el proceso de configuración del ROL de Acceso Remoto. Comentaros, que yo estoy utilizando un Windows Server Technical Preview, pero en la versión de Windows 2012 es muy similar su configuración. Dicho esto, nos vamos a la consola de administración del servidor y agregamos el rol de Acceso Remoto:
Seleccionamos Role-Based or feature-based installation y pulsamos en Next
Seleccionamos el servidor sobre el cual vamos a querer agrear el rol de acceso remoto, en este caso es el servidor sobre el cual estamos conectados y pulsamos en
NextSeleccionamos el Rol de
Remote Access y pulsamos en
NextNo seleccionaremos nada y pulsamos en
Next para continuar con la instalación
Pulsamos en
NextAhora debemos seleccionar el servicio que queremos instalar dentro del ROL de Remote Access que previamente hemos seleccionado, por lo que marcamos la casilla de
Web Application ProxyNos muestra los componentes que tiene que agregar adicionalmente al servicio de Web Application Proxy y pulsamos en
Add Features
ahora ya tenemos todo lo necesario para continuar, para ello pulsamos en
Next
Nos muestra un resumen de lo que se va a instalar, si estamos de acuerdo pulsamos en
Install para iniciar el proceso
Una vez que termine la instalación, nos mostrará la siguiente pantalla en donde nos mostrará una opción de configuración del Web Application Proxy para ellos pulsamos en
Open the Web Application Proxy WizardUna vez abierto el asistente de configuración, nos mostrará una pantalla en donde nos indica que debemo configurar inicialmente el servicio de federación, para iniciar el proceso pulsamos en
Next
Escribiemos el FQDN del servicio de federación que habíamos configurado previamente y las credenciales correspondientes con los permisos de administrador y pulsamos en Next
Seleccionaremos el certificado que vamos a utilizar en el AD FS Proxy, recordad que como el servidor no está en el dominio y si utilizáis certificados privados debéis instalar el certificado raíz en el servidor para que no tengáis problemas con el certificado que utilicéis. Como el certificado que he utilzado lo ha emitido mi CA interna, una vez que he importado el certificado también he instalado el certificado raiz en el contenedor de certificados raiz de confianza del propio servidor, de tal forma que vea el certificado como válido. Dicho esto, ya podemos seleccionar el certificado en la pantalla de AD FS Proxy Certificate y pulsamos en Next
Ahora nos muestra un resumen de los comandos de powershell que se ejecutarán en base a la configuración que hemos ido realizando a través del asistente y pulsamos en Configure para continuar
Si tanto la URL, como las credenciales y el certificado presentado están correctos, nos mostrará la siguiente pantalla indicándonos que se ha completado de forma correcta.
Ahora lo único que nos queda es crear las reglas de publicación necesarias para nuestro Lync, para ello pulsamos en Publish
Pulsamos en Next
Cómo para los servicios de Lync no utilizamos preautenticación, seleccionamos Pass-through y pulsamos en Next
Debemos cubrir los siguientes campos disponibles en la publicación del servicio:
- Nombre: Será el nombre descriptivo que tendrá la regla de publicación
- External URL: Dirección web del servicio que vamos publicar, en este caso voy a publicarlos servicios web externos de Lync y este es el FQDN que había establecido en la topología de Lync (lync.asirlab.com)
- External Certificate: Es el certificado que vamos a presentar a los usuarios externos cuando se conecten a los distintos servicios de Lync
- Backend serve URL: Dirección web del servidor que vamos a publicar, al igual que hacemos con otros proxy debemos especificar la URL y el puerto 4443 que se corresponde con el sitio web externo que tenemos en nuestros front-END
Ahora que ya tenemos todos los campos cubiertos, pulsamos en Next
Nos muestra un resumen de la configuración que se va a aplicar vía powershell (Add-WebApplicationProxyApplication) y para que se cree la regla de publicación pulsamos en Publish
Y por último en Close y ya tenemos nuestra primera regla de publicación de los servicios web de Lync
Y aqui tenemos nuestra primera de Lync en el Web Application Proxy, ahora tendremos que hacer todas las necearias como por ejemplo:
- meet.asirlab.com (Reuniones en línea)
- dialin.asirlab.com (Conferencias Telefónicas)
- lyncdiscover.asirlab.com (Cliente Lync Móvil)
- office.asirlab.com (Office Web App)
- mail.asirlab.com (EWS de Exchange)
Por mostraros una diferente a Lync, aquí tenéis la regla de publicación del Office Web, en mi caso he puesto la dirección externa y el servidor interno siempre con la misma URL pero puede ser diferente sin problema alguno.
Claramente lo que nos quedaba por haacer es probar que podíamos conectarnos, por lo que tratamos de conectarmos por ejemplo a la URL de las reuniones en línea y vemos que funciona perfectamente.
Algo que debemos hacer es configurar el tiempo de desconexión de las conexiones que pasan por el Proxy, como por ejemplo el cliente Lync Móvil. Si recordáis había pulicado este articulo sobre las desconexiones del cliente Lync móvil através del IIS ARR (Cliente Lync Móvil 2013: La información del servidor ha cambiado. Reinicia Lync). Por defecto MSFT recomendaba poner un valor de 200 segundos
y con este valor los clientes Lync de móvil cuando no tenían la aplicación en primer plano a los 200 segundos se desconectaban y claro eso genera problemas a los usuarios finales que deben reconectar cada poco tiempo. Para esto se configuraban las desconexiones a los 960 segundos, algo más razonable y que permite tener la aplicación en segundo plano iniciada durante un tiempo prudencial: