Aprende cómo configurar unidades personales mediante GPO script (PowerShell) para crear unidades asignadas a usuarios individuales que se les mapeen cuando inicien sesión en el dominio.
En ocasiones, puede ser necesario que algunos usuarios posean una unidad de red a la que solo tengan acceso ellos, por lo que el modelo de carpetas compartidas que exponemos en el artículo “Cómo configurar una GPO para el mapeo de unidades compartidas” no sería la mejor opción.
Para estos usuarios en los que se necesita confidencialidad, se suelen usar unidades personales que se mapeen de manera automática desde un servidor. De esta manera no solo se garantiza la confidencialidad de los datos, sino que además se garantiza que en caso de que la máquina cliente se averíe o se extravíe, siempre se contará con los datos en el servidor, ya que, en principio, el servidor tendrá copia de seguridad.
¿Cómo configurar unidades personales mediante GPO script (PowerShell)?
Pre-requisitos y recomendaciones:
Para completar de forma satisfactoria este tutorial y poder configurar unidades personales mediante GPO script (PowerShell) será necesario:
- Estar dado de alta en la Plataforma y estar registrado en la misma tras hacer Log-in.
- Tener una máquina Windows Server con AD DS Server instalado.
- Una cuenta con permisos de administrador.
- Las carpetas y permisos han sido creadas ya que solo trataremos la parte del mapeo.
Paso 1. Preparación del código de PowerShell (GPO script)
En este caso se parte de que el administrador ya ha creado una unidad compartida con una carpeta independiente para cada uno de los usuarios a los que se quiera mapear este recurso y que solo tendrá permisos el usuario autorizado.
Por esta razón, lo primero que se tiene que hacer es preparar el código de PowerShell que se va a ejecutar al cargar la GPO y que será el encargado de mapear la unidad personal.
Como siempre decimos, hay muchas aproximaciones para realizar estas tareas ya que PowerShell nos permite realizar una misma tarea de distintas formas.
En este caso, lo que se propone, está basado en el comando “New-PSDrive”, cargando el usuario como una variable de entorno, por lo que el sistema, en principio, lo cargará de manera automática para cualquier usuario que tenga una unidad asignada pueda recibir el acceso.
$VARNAME=$env:UserName
New-PSDrive -Name «x» -PSProvider FileSystem -Root «UNIDAD MAPEADA» -Persist
Donde “UNIDAD MAPEADA” es básicamente el recurso mapeado y que debe terminar en “$VARNAME” para que cambie automáticamente en función del usuario que cargue el script.
Un ejemplo de recurso podría ser:
\\SW2022NACHO01\Compartido\Personales\$VARNAME
Lo que se ha creado aquí es el script mínimo que se podía crear, pero se pueden añadir opciones como asignarle un “if-else”, etc.
Una vez se tenga el script de PowerShell que se quiere utilizar, se debe preparar un fichero con la extensión “.ps1”.
Paso 2. Preparación de la GPO para nuestro GPO script
A continuación, se deberá acceder al Administrador de Directivas de Grupo de AD DS Server. Arrancando el Administrador del servidor, desplegar Herramientas y haciendo clic en “Administrador de Directivas de Grupo” (1).
NOTA: El comando “GPMC.MSC” también arranca dicha consola.
Una vez arrancada la consola, se debe hacer clic con el botón derecho (2) sobre el nombre de dominio y seleccionar la opción de “Crear una GPO en este dominio y vincularlo aquí” (3).
Al mostrarse la ventana emergente se deberá dar nombre a la nueva GPO que se acaba de crear.
Tras esta operación se pasa de manera automática al “Administrador de directivas de grupo” donde se debe buscar la GPO que recién creada y hacer clic en el botón derecho sobre la GPO (4) y seleccionar la opción “Editar” (5).
Ahora se mostrará el editor de la GPO, pero sin haber elegido ninguna ruta, ya que aterrizará en una zona neutral y se debe pensar en qué tipo de implementación de GPO se quiere realizar, ya que se puede optar por dos opciones, en función de si se va a aplicar sobre el equipo o el usuario:
- Iniciar y apagar equipo: Para lanzar el script de PowerShell al iniciar o apagar el equipo, se debe ir a “Configuración del equipo > Directivas > Configuración de Windows > Scripts (Inicio o apagado)”.
- Iniciar y cerrar la sesión: Para lanzar el script de PowerShell al iniciar o cerrar la sesión de usuario, se debe ir a “Configuración de usuario > Directivas > Configuración de Windows > Scripts (inicio y cierre de sesión)”.
Esta GPO es para lanzarla durante el inicio de la sesión de usuario por lo que se debe seleccionar dicha opción. Para ello se debe desplegar toda la ruta para a continuación seleccionar la opción “Iniciar sesión” (6), y hacer clic sobre ella con el botón derecho y seleccionar propiedades (7) y a continuación ir a la pestaña “Scripts de PowerShell” (8).
En esta ventana, se debe hacer clic en “Agregar” (9), buscar la ruta donde se guarda el script que se ha creado previamente y seleccionarlo (10), haciendo clic en “Aceptar” (11) tantas veces como sea necesario para que se guarde la selección y se empiece a hacer uso de la nueva política.
Con esto ya debería estar operativa la nueva política, en caso de que no fuera así, se puede reiniciar la sesión, o incluso el equipo, para que se inicien de nuevo las políticas en el inicio de sesión. Por supuesto, siempre se podrá lanzar el comando “gpupdate /force” que obliga al sistema a releer las políticas de grupo.
Conclusiones
Tal como se puede ver en este tutorial, se pueden configurar unidades personales mediante GPO script (PowerShell) sobre los usuarios que nos interesen que tengan dicha unidad de manera sencilla siguiendo la formula descrita más arriba, cabe recordar que este método no es el único, que esto mismo se puede hacer mediante otros tipos de código o incluso mediante la interface gráfica de Group Policy Management Console.
Para completar esta información, recomendamos que visites los siguientes enlaces, donde podrás ver información adicional y algunos ejemplos de operativas que se pueden realizar en base a directivas de grupo, como, por ejemplo:
- Qué son y para qué sirven las GPO
- Comandos de PowerShell para gestionar GPO Script
- Como configurar una GPO para el mapeo de unidades compartidas
- Como configurar GPO para mapeo de impresoras
- Cómo desplegar un GPO Script con código de PowerShell
- Como configurar tu firewall mediante GPO script
- Cómo ocultar el acceso a una unidad de disco dentro de tu servidor a través del editor de políticas locales
¡Gracias por acompañarnos!