Como publicar un servidor VPN en ISA Server 2006 utilizando certificados para la conexión

Escrito por Martin Kirtchayan Revisado por: Alejandro Leal

El siguiente es un paso a paso sobre como conectarse a la red corporativa a través de una conexión VPN a un ISA Server 2006 utilizando certificados para la autenticación, sin necesidad de proveer un usuario y contraseña para conectarnos.

Para el siguiente laboratorio, vamos a contar con lo siguiente:

  1. Un Controlador de Dominio Windows Server 2003 R2 SP2 Enterprise Edition
  2. Un Servidor miembro del dominio, el cual brindara los servicios de ISA Server
  3. Un cliente externo al dominio. El cual será el cliente VPN.

El nombre del dominio es: isa.lab

Usuario del dominio para las pruebas: bob

Entorno:

image

Lo primero que tenemos que realizar es verificar que nuestro ISA Server posea un certificado para la autenticación. Para ello vamos a realizar la solicitud, en este caso, dupliqué un certificado con el nombre de VPNServer. El mismo tiene como propósito Server Authentication. Del mismo modo, es importante que el certificado posea el nombre del servidor VPN desde la red pública.

image

Del mismo modo es importante que tanto el servidor VPN, como el cliente VPN confíen en la entidad certificadora que emitió el certificado. Más adelante veremos cómo hacemos para que el equipo confíe en la entidad certificadora.

Una vez que tenemos el certificado importado en el contenedor local del ISA Server, tenemos que proceder a verificar que el equipo sea capaz de descargar la lista de certificados revocados, ISA Server posee una opción para ello, por lo que desde la consola de ISA Server, hacemos clic derecho sobre la opción de Firewall Policies , seleccionamos la opción de Edit System Policy… dentro de la consola, seleccionamos CRL Downloady verificamos que la opción de Enable this configuration group se encuentre habilitada, como figura en la siguiente imagen.

image

En la solapa TOpodemos indicar desde que redes está permitida la descarga de la CRL, por defecto viene seleccionada todas las redes, por lo que lo vamos a mantener así.

Verificado este punto, nuestro siguiente paso es configurar el servicio de VPN en ISA Server. Configurar este servicio es bastante intuitivo ya que ISA Server cuenta con asistentes para realizar dicha configuración.

image

Vamos a comenzar por el paso 1, Configure Address Assignment Method, en esta consola se puede configurar el método de asignación, tanto de la dirección IP, como también de la configuración de DNS y WINS. Desde aquí se puede configurar si estos valores se entregaran a través de un servidor DHCP o bien de manera estática, especificando un rango de direcciones en dicha consola. Cuando digo "estática" nos estamos refiriendo a que especificamos un rango de direcciones en la consola, y así, los clientes tomaran su correspondiente dirección al momento de la conexión. Lo que tenemos que tener en cuenta es que, en caso de que asignemos un pool de direcciones, este pool no tiene que estar especificado en ninguna otra red declarada en ISA Server; también es muy importante recordar que debemos preparar los enrutadores de la red interna para direccionar correctamente estas subredes hacia ISA Server.

Si nos vamos a la opción de Advancedpodemos definir qué servidor de DNS y WINS queremos utilizar (esta opción generalmente se utiliza, cuando no utilizamos un servidor DHCP para asignar las direcciones, en nuestro caso, definimos al servidor DNS de manera manual.

image

Dentro del paso 1, vamos a la segunda opción, Configure VPN Client Accessallí, en la solapa de General vamos a definir la cantidad de usuarios que se podrán conectar por VPN de manera concurrente, en la segunda solapa, la de grupos, definimos que grupo de Windows tendrá permisos para conectarse a la VPN. En la tercer solapa, Protocols , podemos definir qué tipo de túnel utilizaremos, en nuestro caso seleccionaremos PPTP. La cuarta solapa, no es necesaria en este ambiente definirla.

Ahora, desde el panel Derecho, seleccionaremos la opción Select Access Networksy seleccionamos la red External que es donde el ISA server estará esperando las conexiones VPN

image

Como último paso, para la configuración, necesitamos definir el método de autenticación que utilizaremos. Nosotros utilizaremos la autenticación por certificados

image

Allí hacemos clic en OK para aceptar la configuración y a este punto, nos queda seleccionar la opción: Enable VPN Client Access, para habilitar el servicio. Seleccionamos Apply para que ISA Server guarde los cambios.

Con estos pasos hemos terminado de definir la configuración, lo que nos resta realizar en el servidor de ISA Server es crear la regla, o reglas con las cuales definiremos que puede y que no pueden hacer los clientes VPN en nuestra red interna. Este proceso es similar al crear una regla de firewall, por lo que no voy a entrar en detalles, lo único que tenemos que tener en cuenta, es que tenemos que definir, ya sea como origen, o como destino, la red de los clientes VPN.

image

Hecho esto, vamos a configurar la conexión en el cliente VPN, para permitir que este se pueda conectar, vamos a estar definiendo la configuración e instalando el certificado para que se pueda autenticar, sin necesidad de ingresar usuario y contraseña.

Lo primero que tenemos que hacer, es verificar que el cliente VPN confíe en la entidad certificadora que emitió el certificado que vamos a utilizar para la conexión. Para que el cliente confíe en la entidad certificadora, lo que tenemos que hacer es importar el certificado de la CA (solo con la llave pública) dentro del contenedor de usuario llamado: Trusted Root Certification Authority

image

Este proceso es sencillo, y el asistente para la importación nos ira guiando. (Este mismo proceso aplica al servidor de ISA Server, en caso de que este no este confiando en la entidad certificadora)

El siguiente paso es importar el certificado de usuario para autenticarnos a la VPN, dado que todavía no lo hemos hecho, voy a estar haciendo la solicitud, el certificado que voy a solicitar es para el usuario llamado bob dado que este usuario no se encuentra en dominio, voy a estar creando un certificado que me permita especificar el nombre del usuario que lo utilizara, por lo que he creado un certificado duplicado, del témplate de certificados para usuario, lo único que le he modificado es que me permita especificar los datos al momento de solicitar el certificado. Esto me permitirá especificar el nombre del usuario al cual deseo darle el certificado. Como también hemos habilitado la opción de permitir exportar la llave privada del certificado.

image

Una vez hecho esto, desde la web de enrollment de certificados, y hacemos la solicitud del certificado, una vez que seleccionamos el témplate que deseamos (el que hemos creado y editado) vamos a especificar el nombre del usuario que lo va a utilizar (del mismo modo asegurarse, que la opción Mark Key as exportable este seleccionada)

image

Una vez que solicitamos el certificado, este se instalara, por defecto, en el contenedor personal del usuario en el equipo desde donde se realizó la solicitud. Lo que hacemos es exportarlo como pfx (certificado que contiene la llave privada) y lo llevamos al equipo remoto, desde donde se va establecer la conexión VPN.

Una vez en el equipo remoto, realizamos el proceso para importar el certificado en el contenedor personal de certificados del Usuario. Una vez importado, nos quedara como sigue:

image

A este punto, ya tenemos los certificados correctamente configurados en el ISA Server y en el equipo cliente, del mismo modo ya tenemos configurado el ISA Server para trabajar como servidor VPN. Lo que resta hacer es configurar la conexión VPN en el equipo cliente. Para la cual comenzamos el asistente y creamos una conexión VPN. Durante el asistente, especificaremos el nombre al cual nos conectaremos (puede ser la dirección IP publica del sitio remoto también) una vez que finalizamos el asistente, vamos a las propiedades de la conexión y seleccionamos la solapa de seguridad. Allí, seleccionamos la opción Advanced y después seleccionamos la opción Settings... Una vez dentro de las opciones, en el campo de Security Options seleccionamos la opción: Use Extensible Authentication Protocol (EAP) y después la opción de Properties

image

Allí seleccionaremos la opción: Use a certificate on this computer, dejando con el check la opción: Use simple certificate selection (Recomended)

image

Una vez ajustado estos valores, guardamos los cambios, y ya podemos conectarnos, con los valores que hemos especificado en la configuración en ISA Server

image

Desde la consola de ISA Server podemos ver que el usuario está conectado.

image