Saltar al contenido

Windows desde la consola

Las órdenes con las que se administra un Windows sin tocar el ratón: directivas de grupo, consultas al directorio, cuentas, recursos compartidos, servicios y las utilidades de mantenimiento que se preguntan una y otra vez.

Directivas de grupo: gpedit.msc, gpupdate y gpresult

Una directiva de grupo es un conjunto de ajustes que el dominio impone al equipo o al usuario. Administrarlas desde la consola son tres verbos: editarlas, aplicarlas y comprobar cuáles han caído. Cada verbo tiene su orden y confundirlas es un error clásico.

OrdenPara qué sirve
gpedit.mscAbre el editor de directivas locales del propio equipo
gpupdateVuelve a aplicar las directivas locales y las del dominio
gpresultInforma de qué directivas están aplicadas en realidad

gpupdate no espera al ciclo de refresco. Con /force reaplica todo, no solo lo que ha cambiado, y con /target se limita a la mitad de usuario o a la de equipo. Algunos ajustes solo entran al iniciar sesión o al arrancar, y para eso están /logoff y /boot.

cmd
gpupdate /force
gpupdate /target:USER
gpupdate /force /logoff

gpresult es la herramienta de diagnóstico: dice qué directivas ganaron y cuáles se descartaron. /r da el resumen, /z el detalle completo, /scope acota a usuario o a equipo, /s apunta a otra máquina y /h o /x escriben el informe a fichero para adjuntarlo a una incidencia.

cmd
gpresult /r
gpresult /r /scope COMPUTER
gpresult /s PC-AULA-14 /h C:\informes\aula14.html

gpupdate empuja, gpresult comprueba. Si una directiva no surte efecto, primero gpupdate /force y después gpresult /r para ver si ha llegado.

Para el examen

  • gpupdate /force: empuja: obliga a reaplicar las directivas

  • gpresult /r: comprueba: muestra el resultado aplicado

  • gpedit.msc: edita la directiva local

Consultar y modificar el directorio: la familia ds

Active Directory se administra desde la consola con cinco órdenes que empiezan por ds y una sexta para consultar. Todas trabajan con el nombre distinguido del objeto, esa cadena de CN, OU y DC que localiza a un usuario o a un equipo dentro del árbol.

OrdenQué hace
dsqueryBusca objetos y devuelve sus nombres distinguidos
dsgetMuestra los atributos de un objeto concreto
dsaddDa de alta un objeto
dsmodModifica atributos de un objeto existente
dsmoveCambia un objeto de sitio o le cambia el nombre
dsrmBorra un objeto

La gracia de la familia está en encadenarlas. dsquery escupe nombres distinguidos por la salida estándar y las demás los leen por la entrada, así que una tubería convierte una búsqueda en una acción masiva. Es la forma habitual de hacer limpieza de cuentas.

cmd
dsquery server domainroot
dsquery user domainroot -name *tutor -inactive 8
dsquery computer -inactive 12 | dsmod computer -disabled yes
dsquery group -samid TUTORES | dsget group -members -expand

dsadd y dsmod son las que escriben. Al crear se indica el nombre distinguido completo, con la unidad organizativa en la que cae el objeto; al modificar se pasan los atributos que se quieren cambiar. dsrm con -subtree borra el objeto y todo lo que cuelgue de él, que en una unidad organizativa es mucho.

cmd
dsadd user "CN=Marta Rey,OU=Tutores,DC=llegandoalcorte,DC=com"
dsmod user "CN=Marta Rey,OU=Tutores,DC=llegandoalcorte,DC=com" -mustchpwd yes
dsrm -subtree -noprompt "OU=Piloto,DC=llegandoalcorte,DC=com"

Aparte queda ntdsutil, que no administra objetos sino la propia base de datos del directorio, el fichero ntds.dit: mantenimiento, mover la base a otro disco, funciones de restauración. Es una herramienta de emergencia, no de uso diario.

dsquery busca y las demás actúan. Cuando el enunciado pide la pertenencia completa a grupos de una cuenta, contando también los grupos que están dentro de otros, la respuesta lleva dsget con -memberof -expand.

Para el examen

  • dsquery: busca objetos del directorio

  • dsget, dsadd, dsmod y dsrm: consultan, crean, modifican y borran

  • Pertenencia completa a grupos: dsget con -memberof -expand, para incluir los anidados

Cuentas y políticas de contraseña: net user y net accounts

net es la orden multiusos de Windows: gestiona cuentas, grupos, recursos compartidos, servicios, sesiones e incluso la hora. Lo que hace depende del subcomando que se le ponga detrás, y por eso conviene aprenderla por bloques y no como una lista.

net user sin argumentos lista las cuentas locales. Con un nombre detrás muestra su ficha: cuándo cambió la contraseña por última vez, si caduca, cuándo fue el último inicio de sesión y a qué grupos pertenece. El modificador /domain lleva la orden al dominio en vez de a la máquina local.

cmd
net user
net user mrey
net user mrey Temario2026 /add
net user mrey Temario2026 /add /domain
net user mrey *

El asterisco final es un detalle que se pregunta: pide la contraseña por teclado en vez de dejarla escrita en la línea de órdenes, donde quedaría a la vista y en el historial. Sobre la cuenta se pueden fijar además restricciones de uso.

ModificadorEfecto sobre la cuenta
/active:yes|noHabilita o inhabilita la cuenta sin llegar a eliminarla
/expires:fecha|neverFecha en la que la cuenta deja de valer
/passwordreq:yes|noSi la cuenta está obligada a tener contraseña
/passwordchg:yes|noSi el usuario puede cambiarse la contraseña
/times:franjasHoras en las que se le permite iniciar sesión
/workstations:listaEquipos concretos desde los que puede entrar

net accounts es distinto: no toca una cuenta, sino la política que se aplica a todas. Fija la longitud mínima de la contraseña, cuántos días vale y cuántas contraseñas recuerda el sistema para que nadie reutilice la anterior. Con /domain la política se aplica al dominio entero.

cmd
net accounts /minpwlen:12
net accounts /maxpwage:90
net accounts /uniquepw:5 /domain

net user actúa sobre una cuenta; net accounts sobre la política de todas. Es la pareja que más se confunde en el test.

Para el examen

  • net user: actúa sobre UNA cuenta

  • net accounts: actúa sobre la política de contraseñas de todas

Grupos, recursos compartidos y unidades de red

Hay dos ámbitos de grupo y dos subcomandos distintos, y ahí está la trampa. net localgroup trabaja con grupos de la máquina, que solo existen en ella; net group trabaja con grupos del dominio, y por eso solo funciona en un controlador de dominio.

cmd
net localgroup Correctores /add
net localgroup Correctores mrey jlopez /add
net group Tutores /add
net group Tutores mrey /add

Compartir una carpeta es net share, con la sintaxis de nombre público igual a ruta local. Sin argumentos lista lo que ya está publicado. Se puede limitar el número de usuarios simultáneos y se retira el recurso con /delete.

cmd
net share
net share Temario=D:\Contenido\Temario
net share Temario=D:\Contenido\Temario /users:25
net share Temario /delete

En el otro extremo, el cliente conecta ese recurso a una letra de unidad con net use. /persistent:yes hace que el mapeo vuelva solo en cada inicio de sesión, /user permite entrar con otras credenciales y /delete deshace el mapeo.

cmd
net use T: \\SRV-CONTENIDO\Temario /persistent:yes
net use T: \\SRV-CONTENIDO\Temario /user:LLC\mrey
net use T: /delete

Para ver qué hay al otro lado están net view, que lista equipos del dominio o los recursos publicados por uno concreto, y net session, que en un servidor dice quién está conectado y desde qué máquina. En la salida de net view, un nombre de recurso terminado en símbolo de dólar es un recurso oculto.

net share publica desde el servidor; net use conecta desde el cliente. Un recurso cuyo nombre acaba en dólar está compartido pero no aparece al examinar la red.

Para el examen

  • net share: publica desde el servidor

  • net use: conecta desde el cliente

  • Recurso acabado en dólar: compartido pero oculto

Servicios, procesos y arranque: net start, sc y bcdedit

Para el día a día de los servicios basta net, que arranca, para, pausa y reanuda. Lo que net no sabe hacer es crear un servicio o cambiar su configuración, y ahí entra sc, que habla directamente con el gestor de control de servicios.

cmd
net start Spooler
net stop Spooler
net pause Spooler
net continue Spooler

sc tiene una peculiaridad de sintaxis que se pregunta: el espacio va después del signo igual, no antes. Con sc create se registra un ejecutable como servicio, con start= se decide si arranca solo, y sc query interroga el estado.

cmd
sc create IndexadorTemario binPath= "C:\LLC\indexador.exe" start= auto
sc query type= service state= active
sc stop IndexadorTemario
sc delete IndexadorTemario

De los procesos en marcha informa tasklist, que es el equivalente en Windows de listar procesos y acepta filtros por nombre, por usuario o por estado. Y del arranque del propio sistema se encarga bcdedit, que edita el almacén de datos de configuración de arranque: entradas de menú, tiempo de espera y opciones de inicio.

msconfig es la cara gráfica de una parte de eso: elige qué servicios y qué programas arrancan con el sistema y permite un inicio en modo diagnóstico. No hay que confundirlo con msinfo32, que no configura nada y se limita a informar del hardware y del software instalado.

net gobierna servicios que ya existen; sc los crea, los configura y los borra. En sc, el espacio va detrás del igual: start= auto, no start=auto.

Para el examen

  • net: gobierna servicios que ya existen

  • sc: los crea, configura y borra

  • Sintaxis de sc: el espacio va DETRÁS del igual: start= auto

Identidad, elevación y certificados: whoami, runas y certutil

Antes de diagnosticar un problema de permisos conviene saber con qué identidad se está trabajando. whoami responde a eso y sus tres modificadores dan tres respuestas distintas, que es justo lo que se pregunta.

OrdenQué devuelve
whoami /userEl nombre de la cuenta y su identificador de seguridad
whoami /groupsLos grupos a los que pertenece la sesión actual
whoami /privLos privilegios de seguridad y si están habilitados

runas lanza un programa con otras credenciales sin cerrar la sesión. Es la práctica correcta de administración: se trabaja con una cuenta normal y solo se eleva la herramienta concreta que lo necesita.

cmd
runas /user:LLC\admin.mrey "mmc compmgmt.msc"
runas /user:LLC\admin.mrey /savecred cmd

certutil administra los almacenes de certificados digitales de la máquina y del usuario: importar una autoridad de certificación al almacén raíz, importar un certificado con su clave privada desde un fichero de intercambio o listar lo que hay en el almacén personal.

cmd
certutil -addstore Root ca-llegandoalcorte.cer
certutil -importpfx certificado-web.pfx
certutil -user -store MY

Completan el grupo dos utilidades menores: msg envía un mensaje a la sesión de otro usuario, útil para avisar antes de reiniciar un servidor, y mstsc abre el cliente de escritorio remoto, que es la vía gráfica de entrar en otra máquina Windows.

El identificador de seguridad de una cuenta se obtiene con whoami /user. Los privilegios, que es otra cosa distinta de los grupos, con whoami /priv.

Para el examen

  • whoami /user: el identificador de seguridad (SID)

  • whoami /priv: los privilegios, que no son los grupos

  • runas: ejecuta con otra cuenta

Copia masiva y mantenimiento: robocopy y utilidades del equipo

robocopy es la herramienta de copia robusta de Windows y sustituye a copy y xcopy en cualquier trabajo serio: reintenta cuando falla, reanuda transferencias cortadas, conserva permisos y sabe sincronizar dos árboles de directorios.

ModificadorEfecto
/SCopia también los subdirectorios, saltándose los vacíos
/ECopia los subdirectorios incluidos los vacíos
/MIREspejo: replica el origen y borra en destino lo que ya no existe
/MOVMueve ficheros: los borra del origen tras copiarlos
/MOVEMueve ficheros y carpetas
/LSimulación: enumera lo que haría sin copiar nada
/ZModo reiniciable, para transferencias que pueden cortarse
/SECConserva los permisos junto con los datos
/R:nNúmero de reintentos por fichero fallido
/XF patrónExcluye los ficheros que encajen en el patrón
cmd
robocopy D:\Contenido \\SRV-COPIA\Contenido /E /Z /SEC /R:3
robocopy D:\Contenido \\SRV-COPIA\Contenido /MIR /L

/MIR borra en el destino. Antes de lanzarlo se prueba con /L, que solo enseña lo que iba a hacer. Es el modificador que más destrozos causa por lanzarlo a ciegas.

El resto de utilidades del administrador se aprenden por parejas de nombre y función. convert pasa un volumen de FAT16 o FAT32 a NTFS conservando los datos, y es de una sola dirección: no hay vuelta atrás con esa herramienta. powercfg gobierna los planes de energía y los estados de suspensión, y es lo que se toca cuando un equipo se duerme sin permiso.

Quedan tres subcomandos de net que no son de cuentas ni de recursos. net time sincroniza el reloj del equipo con el del dominio o con un servidor de hora. net print consulta y manipula colas de impresión compartidas, y permite retener, liberar o borrar un trabajo. net config server ajusta parámetros del servicio de servidor, como cerrar las sesiones que llevan un rato inactivas.

Y dos órdenes que casi solo se ven dentro de guiones: pushd guarda el directorio actual en una pila y salta a otro, y popd desapila y vuelve. Sirven para que un guion pueda moverse por el disco y dejar al final el intérprete donde estaba.

Para el examen

  • robocopy /MIR: espeja: borra en el destino lo que no está en el origen

  • robocopy /L: solo enseña lo que haría, sin copiar

Comprobar y reparar el sistema

El tema oficial habla de «mantenimiento y reparación», y en Windows eso tiene tres órdenes con reparto claro: sfc /scannow comprueba y repara los FICHEROS del sistema contra su copia de referencia; DISM repara la propia IMAGEN de Windows de la que sfc se abastece (por eso, si sfc no puede, se ejecuta DISM primero y sfc después); y chkdsk revisa el DISCO y su sistema de ficheros, con /f para corregir y /r para además localizar sectores defectuosos.

Para el examen

  • sfc /scannow: comprueba y repara los ficheros del sistema

  • DISM: repara la imagen de Windows; si sfc falla, DISM primero y sfc después

  • chkdsk /f y /r: revisa el disco: /f corrige y /r busca además sectores defectuosos