DHCP: Asignar Configuración Unicamente a Máquinas del Dominio

Hay una pregunta que he visto varias veces en los foros de soporte, o que me han hecho: “¿Cómo puedo hacer para que las máquinas que no son del Dominio no reciban configuración desde el servicio DHCP?”

Siempre he dado la respuesta “No se puede. Porque para que identifique que pertenece al Dominio o no, primero debe asignarle dirección IP para la comunicación”

Tengo que reconocerlo, estaba equivocado. Se puede hacer, y no es complicado

En casi todos los casos la pregunta estaba relacionada a que si alguna persona externa conectara su propia máquina a la red de la organización, no pudiera ni conectarse a las máquinas, ni salir a Internet

La infraestructura que utilizaré para esta demostración, es la misma de siempre en todas las notas. Solamente utilizaré las siguientes:

  • DC1.ad.guillermod.com.ar: Controlador de Dominio con DNS y servicio DHCP
    Dirección IP: 192.168.1.201/24
  • CL1.ad.guillermod.com.ar: Cliente del Dominio con sistema operativo de escritorio
    Dirección IP: obtenida por DHCP
  • Máquina con sistema operativo de escritorio, en Grupo de Trabajo

Para esta nota estoy usando sistemas operativos Windows Server 2016 y Windows 10, pero es válido también con sistemas operativos anteriores desde Windows Server 2012 en el servidor

He creado una Unidad Organizativa donde he puesto las cuentas de máquina, en este caso dos, pero utilizaré solamente a CL1. Esta configuración se debe a que más adelante utilizaré una Directiva de Grupo (GPO)

En DC1 está configurado el servicio DHCP, con los valores normales para un ambiente de Dominio, nada diferente a lo que se suele hacer: Dirección IP y Máscara de Subred, Puerta de Enlace, Dirección de servidor DNS y sufijo de Dominio de la conexión

Por último, muestro que la máquina CL1, está configurada para obtener configuración IP automáticamente, y lo está haciendo desde el servicio DHCP nombrado antes

Como hemos visto se trata de una configuración normal, sencilla y habitual

Si alguien tuviera dudas en la instalación y configuración del servicio DHCP dejo un enlace a una nota en este mismo blog

Windows Server 2012: Instalando y Configurando DHCP

 

Comento primero un concepto en general poco conocido relacionado a DHCP, y lo que voy a hacer en los próximos pasos

En el servicio DHCP, se pueden crear y utilizar “Vendor Classes” y “User Classes” para que de acuerdo a que el cliente se identifique perteneciendo a una clase determinada, el servicio DHCP le asigne diferentes parámetros de configuración (No dirección IP ni Máscara de Subred)

Las “Vendor Classes” son dependientes del sistema operativo del cliente. Es una opción presente desde Windows Server 2000, pero nunca la he visto utilizada, y ni siquiera en la teoría

En cambio las “User Classes” pueden tener aplicación en algunos casos, ya que las podemos definir a nuestra necesidad y criterio. En este caso definiré una “User Class” y le reservaré todo el rango de direcciones IP del ámbito, con lo cual si una máquina no pertenece a esta “User Class” no recibirá configuración IP

Por supuesto que esta configuración no es 100% segura ya que si alguien accede con su propia máquina, le puede poner configuración IP en forma manual, sólo que antes necesitará conocer los valores que debe configurar
Nota: uno más de los motivos por los que recomiendo nunca usar las direcciones IP privadas clásicas que usan casi todos y por lo tanto son fácilmente adivinables

Comencemos entonces creando una GPO enlazada a la Unidad Organizativa donde están las cuentas de máquina a fin de configurar la “User Class” de las máquinas. Se podría hacer también a nivel de Dominio, ya que normalmente los servidores usan configuración manual

Lo haremos como muestran las siguientes capturas de pantalla, por supuesto cada uno usará los nombres de su preferencia, lo mismo que los parámetros adecuados a su propia red

Asignaremos la “User Class” a través de un “Startup Script” de máquina. No debemos hacerlo por usuario, ya que si no es administrador local no podrá asignar la “User Class”. Recordar que aunque se llame “User Class” es para la máquina, no el usuario

La ubicación del “script” dentro de la GPO, siempre ha causado problemas al que no conoce el tema. Así que usaré un procedimiento “a prueba de …”, que consiste en abrir la carpeta que indica el sistema y crear en la misma el archivo de comandos, luego asignarlo

Simplemente creo un archivo de texto, lo edito, y finalmente cambio la extensión TXT a CMD

El comando para configurar al cliente para que pertenezca a una determinada “User Class” de DHCP es:

IPCONFIG /SetClassID <NombreAdaptadorDeRed> <NombreClase>

En mi caso: IPCONFIG /SetClassID Ethernet MiDominio

Nota: para todo lo que se refiera a nombres de “User Classes” conserven siempre la sintaxis mayúsculas/minúsculas ya que es sensible a esto

Guardamos los cambios, y cambiamos la extension a CMD. Ya podemos cerrar la ventana

Y ahora lo asignamos, como muestran las siguientes capturas de pantalla

Quedará así

Como lo que asignamos es un “Startup Script”, y para que surta efecto inmediato, en CL1, fuerzo la actualización de la GPO, y reincio para que ejecute el “Startup Script”

Luego del reinicio desde un CMD con IPCONFIG /ALL verifico que el cliente ya tiene asignada la “User Class”

Ahora debemos ir a DC1, y configurar el servicio DHCP, para lo cual lo primero a hacer es definir la “User Class” como se muestra a continuación

Debemos escribir en “Display Name”, luego pulsar bajo “ASCII” y poner el nombre. Tranquilos que el “Binary” se completa automáticamente :)

Quedará así

 

Ahora debemos crear la “DHCP Policy”, como se muestra. Cuidado, sobre “Policies” del “Scope”

Agregamos la condición de pertenecer a la “User Class”

Y continuamos con el asistente

Debemos asignarle a la “policy” todo el rango de direcciones IP disponibles en el ámbito

Y los parámetros necesarios: Puerta de Enlace, dirección de servidor DNS y sufijo de Dominio de la conexión

Y finalizamos el asistente

Quedará así en la consola DHCP

En CL1 y desde un CMD ejecutado como administrador ejecuto una renovación completa para ver si hubiera algún problema (IPCONFIG /RELEASE IPCONFIG /RENEW)

 

Y ahora la “prueba de fuego” ¿qué sucede con una máquina que no es cliente del Dominio? ¿le dará o no configuración IP?

Para esto he utilizado una máquina con sistema operativo Windows 10, en Grupo de Trabajo, y como podemos ver, no le asigna ni siquiera dirección IP/Máscara de Subred, simplemente no le responde

Por último, podemos verificar en la consola DHCP que solamente CL1 es quien ha obtenido parámetros de configuración

 

Como hemos visto, contrariamente a lo que yo creía hasta ahora, y además estaba seguro que era así, pues no lo era. Se puede hacer que un servidor DHCP no responda a clientes que no son parte del Dominio

Anuncios
Post a comment or leave a trackback: Trackback URL.

Comentarios

  • Juan  On 14/02/2017 at 07:19

    No se visualizan los screenshots

    • Guillermo Delprato  On 14/02/2017 at 14:23

      Hola Juan, verifico desde otra máquina diferente, e inclusive otro navegador que se ven perfectamente las capturas de pantalla
      Suele suceder cuando hay problemas en la conectividad a Internet o es muy lenta, intenta de nuevo si no haz podido verlas

  • eduar  On 14/02/2017 at 07:31

    cuando lio cuando con los router se puede hacer mucho mas sencillo.
    un portal cautivo para todos y listo, automaticamente les lanza el portal cautivo y hasta que el portal no los idenfigue no pueden entrar e la red.
    a demas con pfsense puedes dejar una red de acceso a los usuarios no de domio con unas rutas de acceso predeterminadas y a los de dominio otras.
    o mas sencillo aun idenfificacion de bocas dejar las bocas no de domiio identificadas para que entren por defecto en una red y las bocas identificadas como equipos de dominio a otra.

    • Guillermo Delprato  On 14/02/2017 at 14:30

      Hola eduar, nuevamente estás confundiendo el objetivo de la nota, en ningún momento he planteado que es la única o mejor solución a un problema, simplemente es una
      Y si te parece más sencillo un portal cautivo, redes diferentes u 802.1x ya puedes implementarlo a tu gusto

      • Javier Sola  On 16/02/2017 at 19:42

        A mi me vinieron a cabeza 3 escenarios donde esto es mas viable de implementar que un portal cautivo. Todo depende del escenario.

      • Guillermo Delprato  On 17/02/2017 at 07:31

        Hola Javier, yo pienso exactamente lo mismo en cuanto a más fácil. Hay varias opciones posibles con más o menos dificultad de implemntación y también con más o menos seguridad

  • Freddyjgp  On 14/02/2017 at 13:37

    Esto implica que todos los adaptadores de red deberían tener el mismo nombre no? a menos que pueda manejaar comodines, o en todo caso configurar varias politicas

    • Guillermo Delprato  On 14/02/2017 at 14:26

      No creo que pueda manejar comodiones, pienso que lamentablemente habría que hacerlo por cada uno de los nombres, ya que diferentes versiones de Windows llaman diferente a la conexion de red

  • Leandro  On 15/02/2017 at 17:01

    Para “trampear” esa restricción, se podría asignar el user class manualmente en la PC intentando conseguir DHCP; por ejemplo para máquinas que no pueden/deben estar en dominio, pero queremos que tengan DHCP.

    Una buena medida de seguridad extra para evitar la conectividad a la red, de PCs que no son del dominio :)

    • Guillermo Delprato  On 15/02/2017 at 18:49

      Hola Leandro, exacto, si quisieras que alguien externo se pueda conectar le puedes indicar a mano el comando para poner la “User Class”
      Pero no te olvides de decirle que luego lo debe sacar ;)

  • Juan Pastor  On 16/02/2017 at 06:56

    Nosotros venimos utilizando los filtros de DHCP para conseguir los mismo, aunque tenemos el mismo problema, si un usuario establece una IP fija consigue la conectividad sin problemas.

    • Guillermo Delprato  On 16/02/2017 at 07:33

      Hola Juan, tal como dices, esta es sólo una solución llamémoslo “sencila” pero no es la gran solución, sólo una opción para ambientes chicos y sencillos, sin grandes requerimientos de seguridad
      Mejor opción es que los externos se conecten a una red separada, que conecta con el resto a través de un cortafuegos, que es una opción que permite un mejor control

  • Javier Sola  On 16/02/2017 at 19:45

    Pregunta: ¿La configuracion del comando ipconfig es persistente? supongamos que tenemos equipos fuera del dominio que si son de la empresa (por la razon que sea y que, obviamente no se les aplican las gpo)…¿Hay que ejecutar en cada inicio el comando “IPCONFIG…” en cada equipo manual o automaticamente?? Gracias.

    • Guillermo Delprato  On 17/02/2017 at 07:33

      Al fijar el “User Class” es persistente. Para quitarla hay que ejecutar nuevamente el comando pero sin poner “User Class”

  • marcio  On 17/02/2017 at 13:20

    El trabajo que hace es de parabenos, me encontré con tu blog ayer anoite suceda antes de dormir y no tienen tiempo para leer pero he encontrado información sobre L2TP que necesitaba para entender la forma en que estaba funcionando, confieso que como una configuración y despliegue son únicos, se explica cada paso y debido a los errores y cómo solucionarlo.

    Tengo que ajustar una configuración que ha implementado, tengo un DC w2k12r2 Una VPN Dedicado a w2k12r2 y w10 CLI, pero quiero el protocolo VPN funciona como L2TP, probablemente tendrá que tener un “AD CA” =) requeridos por los artículos

  • marcio  On 22/02/2017 at 09:37

    Gracias Guillermo Delprato, realmente su blog es bastante completo, buscaba entre otras muchas cosas, vi que la enseñanza acerca de la creación de un equilibrio de carga de una puerta de enlace predeterminada, configurar la página web para la entidad emisora ​​de certificados, a distancia a través de la aplicación web, es muy bonito de ver y no cree que esto en la web hoy en día. Y lo mejor de todo lo que son activos, participar, publicar y promocionar su blog.
    Yeah parabenos. !!

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: