domingo, 17 de noviembre de 2013

Windows 2012: IIS 8.0 + ARR 3.0 como Sustituto de Forefront TMG 2010 (parte 1 / 3)

Muchos somos los que sufrimos usamos forefront TMG 2010 para publicar servicios de todo tipo en hacia el exterior de nuestros entornos. Voy a focalizar este artículo a encontrar la manera de sustituir Forefront TMG 2010 como publicador de servicios Exchange 2010 ( OWA, active sync, outlook anywhere, pop3 / SMTP) con tecnología Microsoft, con el mínimo coste posible y con alta disponibilidad.





Como todos sabemos, Microsoft anunció que el producto Forefront TMG 2010 no tendría versión posterior: http://support.microsoft.com/lifecycle/search/default.aspx?sort=PN&alpha=Forefront+Threat+Management+Gateway+2010&Filter=FilterNO
Hasta hace poco, las opciones que parecían más lógicas eran:
  • Comprar un appliance de terceros que nos diera la funcionalidad deseada (coste alto).
  • Usar Forefront UAG para publicar algunos de los servicios ( solo está orientado a aplicaciones web y me faltarían algunos protocolos que no puede publicar) (coste medio).
  • Usar tecnologías basadas en software libre jugando con SQUID, NGINX y APACHE, esta solución no tendría coste de licencias de software, pero es complicada de configurar e incompatible por temas de autenticación NTLM y encapsulamiento de rpc sobre http .
Después de rebuscar por la interné, un compañero me dirigió a este blog de un ingeniero premier de Microsoft: http://blogs.technet.com/b/exchange/archive/2013/07/19/reverse-proxy-for-exchange-server-2013-using-iis-arr-part-1.aspx
En este artículo comenta que con IIS + ARR se puede llegar a desempeñar la funcionalidad que buscaba, aunque la solución que explica está orientada a Exchange 2013, yo la voy a probar con Exchange 2010.

Descripción del escenario que planteo

El escenario que planteo se compone de:
  • Un forest Windows 2008 R2 sp1 funcionando en Modo 2003. ( 1 dominio padre y 3 hijos).
  • 7 Servidores Exchange 2010 : 1 Edge Transport, 2 Client access , 2 Hub transport, 2 Mailbox con un DAG configurado para dar alta disponibilidad.
  • 2 Servidores Windows 2012 para dar el servicio ( realmente harían la función de reverse proxy).

Objetivos a cumplir:
  • Publicar los servicios OWA, Activesync, Outlook anywhere, pop3 / smtp que damos con Exchange 2010 hacia internet.
  • Tener alta disponibilidad ante la caída de 1 servidor de los que publican los servicios Exchange 2010, a nivel de Exchange 2010 ya tenemos alta disponibilidad con el DAG para los MBX, un array de los dos CAS y un NLB entre los Hub transport.
  • No utilizar para los objetivos anteriores Forefront TMG 2010, por los motivos expuestos al principio.


Instalación IIS, .net 3.5 y certificados SSL

Pre-requisitos:

  • Para dar los servicios he escogido dos Windows server 2012 con IIS y ARR 3.0, aunque también se podría hacer el montaje con Windows Server 2008 y 2008 R2. 
  • Dichas máquinas pueden o no estar en dominio. 
  • Las máquinas deben tener dos NICs ( uno con una ip externa y otro con una ip interna).
  • Importante: si la versión de Exchange que queremos publicar es Exchange 2010, debemos tener mínimo SP3 instalado, sinó tendremos problemas con owa ( la aplicación web cargará pero con errores ).
Una vez chequeados los pre-requisitos comenzamos la instalación mediante los pasos siguientes:
  • Para empezar instalaremos IIS y .net 3.5 desde powershell:
Add-WindowsFeature Web-Static-Content,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-Net-Ext,Web-Http-Logging,Web-Request-Monitor,Web-Http-Tracing,Web-Filtering,Web-Stat-Compression,Web-Mgmt-Console,NET-Framework-Core,NET-Non-HTTP-Activ,NET-HTTP-Activation,Web-Server

  • Exportamos el / los certificados en los CAS Exchange 2010. Para saber que certificado necesitamos exportar miraremos desde la consola de Exchange 2010:

En mi caso se trata de un certificado multinombre , de esta manera con 1 certificado puedo dar todos los servicios (es lo recomendado por Microsoft y lo más simple, aunque no lo más barato):








Para exportar el certificado abriremos una  consola mmc , agregaremos el snapin "Certificates" ( le indicaremos que se conecte al repositorio de certificados "Local Computer"), y seguiremos los pasos descritos en las capturas:


  

  


  • Importamos el / los certificados en IIS en los servers 2012: 
Para importar el certificado en los servers 2012, abriremos una consola mmc , agregaremos el snapin "Certificates" ( le indicaremos que se conecte al repositorio de certificados "Local Computer"), y seguiremos los pasos descritos en las capturas:


 

 

 

Si todo ha ido bien, podremos ver el certificado almacenado en Personal/Certificates:

  • Configuraremos el "Default website" para que use SSL con el certificado que hemos instalado:



Parte 1                                                     Parte 2                                                       Parte 3

No hay comentarios:

Publicar un comentario