Windows Server: Tarjetas Inteligentes Virtuales (“Virtual Smart Cards”)

Una de las preocupaciones de seguridad de todo administrador de sistemas es que independientemente de cualquier política de seguridad que implemente hay un eslabón de la cadena sobre el que tiene poco control: el cuidado que haga el usuario de su contraseña

Se pueden implementar directivas de contraseña con seguridad, pero todo dependerá de una buena concientización al usuario para que tome los recaudos necesarios para proteger su confidencialidad, algo que no es fácil en algunos casos

Para evitar esto existen varias opciones, una de las mejores es el uso de Tarjetas Inteligentes (“Smart Cards”), pero es una solución con un costo y complejidad que no todos pueden asumir

Hace unos días leyendo documentación en Internet, por accidente tengo que reconocerlo, llegué a un documento sobre la implementación de Tarjetas Inteligentes Virtuales (“Virtual Smart Cards”)

Por supuesto que no es lo mismo que el uso de tarjetas físicas, pero tiene sus ventajas y por supuesto el costo es mucho menor. Al estar la tarjeta inteligente dentro de la máquina, es una forma de vincular un usuario con uno o varios equipos determinados

Los requerimientos principales son:

  • El sistema operativo cliente sea por lo menos Windows 8
  • El hardware en la máquina cliente debe disponer TPM

Es relativamente fácil de implementar, por lo menos para un prueba conceptual que luego puede adaptarse al uso real

Para que puedan ver las ventajas y la comparación con otros sistemas de seguridad incluyendo el uso de contraseñas, aconsejo descargar y leer aunque sea las primeras páginas de este documento (en inglés, 42 páginas total)

Understanding and Evaluating Virtual Smart Cards

Las máquinas que utilizaré para esta nota son solamente un Controlador de Dominio y dos máquinas cliente, en este caso con Windows Server 2016 y Windows 10 Enterprise

Como he comentado en una nota anterior, he migrado mi ambiente de pruebas a Hyper-V 2016, y esto es lo que me permite hacer esta demostración, ya que al crear máquinas virtuales “Generación 2” se puede asignarles que tengan TPM. Esto no era posible con VMware Workstation ya que no se podía usar “Secure Boot”

La situación inicial es la siguiente:

  • dc1.ad.guillermod.com.ar: Controlador de Dominio
  • cl4.ad.guillermod.com.ar: Windows 10 Enterprise (x64)
  • cl1.ad.guillermod.com.ar: Windows 10 Enterprise (x86 o x64)

A la máquina cliente CL4 le he agregado el componente TPM, como muestra la siguiente captura de pantalla. Recordar que debe ser x64 y “Generación 2”

Para hacer las demostraciones tengo creada una Unidad Organizativa “Usuarios” donde tengo creados, para uso general, cuatro usuarios de prueba

La primera configuación que debemos hacer es tener disponible una Autoridad Certificadora de tipo “Enterprise” ya que debemos poder personalizar una plantilla de creación de certificados. Lo haré en DC1

No muestro los pasos necesarios, pero la instalación se ha hecho con todos los parámetros por omisión. Para el que tenga dudas puede consultar el siguiente paso a paso: Windows Server 2012: Instalación Simple de Autoridad Certificadora (Certificate Authority) Enterprise Root

Estando ya instalada la Autoridad Certificarora, comenzaré creando una plantilla personalizada como se muestra a continuación

Lo haré duplicando la plantilla existente “SmartCard logon”

Debemos asignarle un nombre, y marcar la opción para que se publique en Active Directory

Luego en “Request Handling” debemos cambiar el proposito a “Signature and smartcard logon”

Y seleccionar el “Cryptographyc provider” adecuado para el uso

Por último, debemos configurar para que los usuarios puedan solicitar un certificado basado en esta plantilla

Quedará así, y cerramos la ventana

Ahora debemos publicar la nueva plantilla como muestran las siguientes pantallas

Siempre en DC1, desde un CMD ejecutado como administrador debemos forzar la aplicación de GPOs con “GPUPDATE /FORCE”. Esto permitirá que tome la Autoridad Certificadora creada como confiable

Luego, creando una MMC, cargamos el complemento “Certificates” enfocado en la cuenta de máquina, y solicitamos e instalamos un certificado basado en la plantilla “Domain Controllers”. Cuidado que no es un certificado de máquina normal, sino el específico para Controladores de Dominio. Si no lo hacemos manualmente, se hará automáticamente, pero de acuerdo a la documentación, pueden pasar hasta 6 horas para que se produzca automáticamente

 

Ya en el cliente CL1, inicio sesión con el administrador del Dominio, y debemos crear localmente la tarjeta inteligente virtual que en este caso la nombro para recordar que es para “User Uno”

El comando utilizado es:
tpmvscmgr.exe Create /Name VSC-User1 /Pin default /Adminkey default /Generate

Quien quiera ver el significado de los valores “default”, y cuáles son posibles, lean el documento nombrado al principio :)
De todas formas, muestra los valores “default”

Siempre en CL4 verifiquemos con una consola de certificados que ya se ha propagado el certificado de la Autoridad Certificadora. Si no lo vieran como está a continuación: “GPUPDATE /FORCE” y refrescar hasta que aparezca

Ya está completada la parte que debe hacer el administrador, así que cierro la sesión en CL4, e inico una nueva con el usuario “User Uno” con el que procedemos a solicitar el certificado para la tarjeta inteligente virtual

Simplemente crea una consola MMC donde carga el complemento “Certificados” y comienza con el asistente para solicitar un certificado, como muestran las siguentes pantallas

Debe ingresar el PIN por omisión asignado (12345678), pero luego lo podrá cambiar

Puede comprobar que el certificado ha sido correctamente instalado en su cuenta

Para probar la nueva opción de inicio de sesión, cierra la misma y cuando va a iniciar nuevamente selecciona “Sign-in options”

Donde podrá elegir entre contraseña o la tarjeta inteligente virtual, que por supuesto elegirá esta última

Ingresará el PIN y ya tendrá su sesión iniciada

 

Lo que había dejado antes en forma pendiente, es que por supuesto por seguridad, el usuario debe cambiar el PIN asignado, es fácil, y similar al cambio de contraseña, pulsando “CTRL+ALT+SUPR” y eligiendo cambio de contraseña :S

Como inició sesión con la tarjeta inteligente virtual, el sistema le permite cambiar el PIN

Por supuesto que en esta máquina podrá también inciar sesión cualquier usuario que no disponga de la tarjeta inteligente virtual, lo hará con su propia contraseña

Y además, el usuario también podrá iniciar sesión en cualquier otra máquina, pero, atención, siempre y cuando no le exijamos que use la tarjeta inteligente ;)

Si lo hacemos

Ya no podrá hacerlo en otra máquina diferente

 

Resumiendo, me pareció una opción interesante que se puede aplicar fácilmente en algunos ambientes, y sin incurrir en costos de adquisición de no sólo las tarjetas sino además los correspondientes lectores de la misma

Con la última opción mostrada podemos asegurarnos que un determinado usuario requiera un seguro inicio de sesión

Recomiemdo nuevamente que lean el documento que puse al principio de la nota, desarrolla algunos temas y comparaciones que me parecieron muy interesantes

Post a comment or leave a trackback: Trackback URL.

Este espacio es para comentarios sobre la nota. No es un sitio de soporte

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: