
¿Cómo configurar herramientas de administración remota de Windows 10 y Windows 11?
¿Cómo configurar herramientas de administración remota de Windows 10 y Windows 11?
Una vez que su entorno alcanza más de diez computadoras, la capacidad de administrarlas centralmente se vuelve crítica para evitar la necesidad de llevar a cabo tareas administrativas manuales en cada una o tener que visitar físicamente la máquina cuando algo sale mal. Automatizar los cambios a cientos o miles de computadoras con una configuración estándar y garantizar que se realice de manera segura es una habilidad clave de cualquier administrador empresarial.
Las herramientas de administración de servidor remoto (RSAT) de Microsoft es un conjunto de herramientas esencial cuando pensamos en servidores físicamente remotos o no UI.
Estos son comunes en entornos empresariales con centros de datos. La extensión adicional de las versiones de Nano y Core del servidor hace que las herramientas que pueden administrar de forma remota los sistemas sean aún más importantes de entender. Además del RSAT proporcionado por Microsoft como GUI para realizar tareas, PowerShell es cada vez más el método preferido y recomendado de administración remota para servidores y clientes. Esto se extiende aún más a medida que los entornos empresariales tienen entornos de nubes híbridos que incluyen capacidades como Azure Active Directory (Azure AD) y Azure RemoteApp. También hay otras herramientas disponibles para garantizar que pueda lograr el nivel máximo de automatización y administración remota para admitir su entorno.
En este artículo, aprenderemos lo siguiente:
- Cómo instalar y configurar RSAT
- Cómo realizar tareas administrativas utilizando la herramienta RSAT
- Cómo configurar la empresa para la remota de Secure PowerShell
- Cómo realizar la administración remota utilizando PowerShell
- Una breve introducción a la configuración de estado deseada (DSC)
- El conjunto de herramientas del sistema interno, incluidos Bginfo y Pstools
Herramientas de administración de servidores remotos
Dado que Windows Server 2008 R2, estas herramientas se instalan en todos los servidores de forma predeterminada, y se pueden instalar en la estación de trabajo del administrador para llevar a cabo una administración remota, evitando la necesidad de usar el protocolo de escritorio remoto (RDP) para iniciar sesión en cada servidor. Las herramientas permiten la administración remota de roles y características en uno o múltiples servidores remotos.
Las siguientes secciones le mostrarán cómo instalar las herramientas y comenzar a usarlas para administrar sus servidores.
Instalación de RSAT
La instalación de RSAT en una estación de trabajo implica descargar un paquete que incluya algunos cmdlets y proveedores de Windows PowerShell, herramientas de línea de comandos y los SNAP MMC necesarios para presentar las GUI. La ubicación no parece haber cambiado para esta herramienta en más de un año y está en https://www.microsoft.com/en-us/download/details.aspx?id=45520. Los nombres de los archivos aún (al momento de la escritura) muestran el monicker de Windowsth (desde el umbral más probable), pero trabajan en las ediciones de Windows 10 de la empresa, profesional o de educación. Hay dos archivos disponibles para descargar, las versiones WS2016-X86 y WS2016-X64. Instale el uno para la bitness de su sistema operativo.
Hay algunas advertencias para aplicar RSAT:
- Debe eliminar las versiones anteriores antes de aplicar una nueva. Solo una instancia puede estar presente en una máquina a la vez
- Debe actualizar sus servidores anteriores para poder usar las herramientas RSAT de Windows 10 para conectarse a ellos (consulte http://go.microsoft.com/fwlink/?linkid=241358 para más detalles)
- Después de actualizar su versión de Windows de una construcción importante a otra, es posible que deba reinstalar las herramientas RSAT nuevamente
- Después de descargar e instalar el binario RSAT, debe habilitarlo en el área de encendido o apagado de Windows de Windows
Si desea tener un sistema con menos que el conjunto completo de herramientas RSAT disponibles, puede abrir las características de Windows o desactivarse, navegar a Windows características \ herramientas de administración de servidores remotos \, amplíe las herramientas de administración de roles \ o las herramientas de administración de características \ y luego desmarque las cajas de cualquier herramienta que desee deshabilitar.
Tenga en cuenta que si deshabilita el Administrador de servidores, debe acceder a las otras herramientas desde el menú Inicio o la búsqueda, ya que el Administrador de servidores no estará allí para unirlas.
Uso de RSAT
El administrador del servidor, para aquellos que no están familiarizados, le permite configurar rápidamente múltiples servidores, por lo que tiene algunos riesgos y una gran capacidad. Por defecto, Server Manager no verá ningún servidor en el entorno; Depende del administrador agregarlos manualmente. Simplemente haga clic en todos los servidores y luego haga clic con el botón derecho para que se le solicite que agregue servidores.
Una vez que lo haga, es recompensado con una ventana para permitirle importar un archivo de configuración, realizar una consulta DNS o incluso buscar Active Directory. Los filtros están disponibles para encontrar solo versiones particulares de Windows Server, y también puede filtrar por nombre o nombre parcial:
Tenga en cuenta los resultados: dos hosts en mi activo directorio. Uno es un sistema empresarial de Windows 10 y el otro un servidor estándar R2 de Windows Server 2012. Simplemente seleccione el resultado o los resultados que desee y agréguelos a la derecha haciendo clic en el botón en el medio. Luego haga clic en Aceptar.
El administrador del servidor detecta que he agregado un controlador de dominio y me ofrece las opciones disponibles en ese servidor de forma nativa (AD DS (también conocido como Servicios de dominio de Active Directory), DNS (A.K.A Servicios de nombres de dominio), Servicios de archivos y almacenamiento, y VA (A.K.A Volumen. Servicios de activación)). Para acceder a uno de estos servicios, simplemente seleccione y luego en el panel de los servidores, haga clic con el botón derecho y seleccione la opción deseada.
Este flujo de trabajo está bien si ha iniciado sesión como la cuenta que ya tiene derechos administrativos. Sin embargo, ese no es el caso en un entorno empresarial. Por lo general, se aplican los menores privilegios y su cuenta típica en su máquina no tiene los derechos de conectarse a un controlador de dominio y comenzar a montar con él. En este escenario, el flujo de trabajo es un poco diferente. Todavía puede ejecutar el Administrador del servidor, pero se le solicitará que sus credenciales no son suficientes pronto. Cuando se agrega el controlador de dominio (como en el ejemplo anterior), una vez que haga clic en Aceptar, es recompensado con una bandera roja. Al hacer clic en él revela el problema:
Para trabajar alrededor de esto, haga lo siguiente:
Haga clic derecho en el servidor como lo hizo antes para administrarlo, pero seleccione Administrar como ... y proporcione sus credenciales cuando se les solicite que ejecute la conexión a este host como una cuenta alternativa con los derechos apropiados. Marque la casilla para recordar las credenciales para su uso posterior (no recomendado en entornos seguros):
Las capacidades apropiadas del servidor se complicarán, ya que la cuenta apropiada puede consultar el servidor para comprender lo que se necesita para administrarlo de forma remota:
Eliminar un servidor es tan simple como volver a todos los servidores y hacer clic con el botón derecho en el servidor eliminar. Tenga en cuenta el área de filtro sobre la lista de servidores. Puede buscar solo ciertos nombres de grupos de servidores en este método para realizar acciones en masa. También puede guardar consultas filtradas para más tarde usando los botones junto a la caja de filtro.
Todas las UI para estas herramientas RSAT siguen el formato familiar de la consola de administración de Microsoft (MMC). Habrá opciones de acción a la derecha, los objetos enumerados a la izquierda y más detalles en el panel central. La única complicación real con la ejecución de estos en un entorno son los derechos de la cuenta o la conectividad. En la mayoría de los contextos RSAT, simplemente puede proporcionar credenciales alternativas en la interfaz de usuario de la herramienta.
Por ejemplo, si necesitaba verificar el alcance o las reservas de Protocolo de configuración de host dinámico (DHCP) en su entorno, simplemente podría abrir DHCP desde las herramientas RSAT. Tenga en cuenta que cuando se abre, no presupule previamente ningún servidor en su entorno. No hay descubrimiento aquí en toda la red, todavía:
Para agregar el host o hosts DHCP correcto, simplemente haga clic derecho en DHCP a la izquierda. Tenga en cuenta que se le presenta dos opciones, agregue servidor y administre servidores autorizados. La opción fácil es administrar servidores autorizados. En Windows, un servidor DHCP autorizado es uno que puede dispensar direcciones IP en su red, entre otras cosas. Haga clic en Administrar servidores autorizados y luego haga clic en el botón Actualizar:
Lo que sucedió cuando hizo clic en el botón Actualizar fue que se ejecutó una consulta de Protocolo de acceso de directorio ligero (LDAP) en el dominio, y la lista de servidores autorizados regresó. En este dominio, solo hay un servidor autorizado, DC-01.illuminati.services.
Así que seleccione el servidor y haga clic en el botón Aceptar. Ahora puede administrar el alcance DHCP, las políticas, los filtros, las asignaciones de direcciones estáticas, etc.
Pero, ¿qué pasaría si necesitara agregar el servidor manualmente? En lugar de la opción autorizada, simplemente agregaría un servidor seleccionando Agregar servidor y luego puede buscar su anuncio para el host apropiado:
Ahora necesitamos conocer el nombre de host, el OU que el servidor se encuentra o algunos otros metadatos para ubicar el host que ejecuta DHCP.
Tenga en cuenta que si tiene la intención de utilizar estas herramientas para administrar versiones de Windows Server más antiguas de 2016, querrá aplicar hotías a los servidores más antiguos para que las herramientas RSAT funcionen correctamente.
Powershell
Microsoft PowerShell es la forma preferida de realizar muchas tareas administrativas empresariales. La flexibilidad para realizar rápidamente las tareas en las computadoras en AD, o consultar una subred de red de máquinas de Windows, o incluso consultar de forma remota cuya host está bloqueando una cuenta de usuario son todo lo que PowerShell brilla al permitir que un administrador realice en cualquier momento. .
PowerShell se ha vuelto lo suficientemente robusto como para que no sea inaudito que los OEM y los socios también creen sus propios cmdlets que se pueden importar a su entorno de secuencias de comandos y se usan. El intercambio de guiones es posible: ¡el tipo de secuencias de comandos de Microsoft Technet Hey! La biblioteca es un excelente recurso para acceder a los scripts de PowerShell de confianza y revisados por pares para realizar una variedad de tareas. VMware es una compañía que ha creado sus propios scripts PowerShell.
La capacidad de automatizar tareas administrativas comunes en un método con guión significa que el administrador empresarial puede centrarse en tomar buenas decisiones para su entorno, en lugar de trabajar rápidamente en UIs antiguas, donde las tareas repetitivas en grandes grupos de computadoras o usuarios a menudo conducen a errores, errores tipográficos y interrupciones posteriores como resultado.
Microsoft Azure ha extendido aún más PowerShell con una gran variedad de cmdlets de PowerShell y scripts de muestra para administrar servicios basados en Azure, como Azure AD y Azure RemoteApp.
En términos generales, PowerShell sigue una jerarquía de verbo/sustantivo: getObject, get-help, conversto-html, etc. Todos estos comandos crean salida que a su vez puede ser un objeto para otro script. Encadenar juntos los cmdlets de PowerShell en acciones guionadas es el corazón de cómo funciona el lenguaje.
Configuración de PowerShell
Microsoft PowerShell viene configurado de forma predeterminada en las máquinas de Windows para no ejecutar scripts sin firmar. Estos son scripts o cositas de fuentes desconocidas que no están firmadas digitalmente. Microsoft PowerShell está configurado en hosts de forma predeterminada para ejecutar solo scripts firmados.
El administrador típico que necesita una solución rápida utilizará Set-ExecutionPolicy para establecer la política en la máquina local sin restricciones y luego realizar la tarea administrativa. A veces recordarán volver a colocarlo en All Signed; A veces olvidan y dejan un orificio de seguridad en el sistema que luego puede ser explotado por intención maliciosa.
Es mucho mejor firmar sus scripts utilizados en la empresa de manera adecuada utilizando una infraestructura de clave privada en su dominio. Esto se logra utilizando un cmdlet de PowerShell, naturalmente. El CMDLET es el Set-AuthenticoDesignature, que puede usarse para generar certificados que luego la organización puede confiar en una política grupal o política local, según sea el caso. Una publicación exhaustiva sobre el tema escrito por Ed Wilson (The Scripting Guy on Technet) se encuentra en http://bit.ly/pkimyscripts.
Recomiendo y aconsejo que se sigan algún tipo de proceso de prueba y investigación para su entorno de secuencias de comandos y biblioteca en producción. Parte de ese proceso debe ser un mecanismo de firma/confianza para los scripts.
PowerShell, si se deja abierto, puede ser abusado bastante para impactar los sistemas de producción de manera negativa o usarse como vector de ataque para actividades adicionales por malware personalizado.
Uso de PowerShell
Conceptualmente, PowerShell es un lenguaje de script de shell de línea de comandos. Está construido en .NET Framework y .NET Core. Es de código abierto y plataforma cruzada también. En los sistemas de Windows, es una excelente manera de realizar tareas administrativas utilizando WMI, ubicaciones de anuncios o incluso entrada como parte de la ejecución de script.
En términos generales, el flujo de trabajo de una ejecución de PowerShell es donde se llama a un cmdlet, con o sin múltiples variables definidas dadas en el comando. La salida se puede formatear de una variedad de formas predefinidas y también es un objeto que se aprovechará en un script como entrada para su próximo paso de cmdlet o script.
Por ejemplo, uno podría ejecutar Get-Disk 0 para determinar qué ve nuestro sistema operativo como el disco definido como 0:
Pero esa es una gran entrada para un comando aún más esclarecedor para determinar si funciona correctamente.
Esto es fácil de hacer con Get-Disk 0 | Get-StoragerIniabilityCounter.
Este comando toma nuestros resultados de Get-Disk 0 y los lleva a GetStorageRiabilityCounter para ver algunos de los datos inteligentes de la unidad:
Ahora podemos ver que esta unidad está en forma decente a pesar de las 14,000 horas a tiempo.
¿Qué pasa si quisiéramos esto para un informe? ¿O lo quería para múltiples computadoras o múltiples unidades?
El comando get-help get-storageriabilityCounter revela que no hay una salida incorporada que decir, formato HTML. Pero si usamos Get-Help HTML, ¡podemos encontrar un cmdlet que lo haga por nosotros!
Así que ahora tomamos nuestros comandos y los encadenamos. Elegí, como mesa también, así que es agradable y ordenado.
Tenga en cuenta que la salida no es como podría haber tenido la intención:
La razón de esto es que el entorno envía su salida a la consola de forma predeterminada. De lo contrario, nunca dije los comandos.
Agreguemos un comando de archivo fuera. Ahora nuestro símbolo del sistema debería verse así:
Get-Disk 0,1 | Get-storagereliabilityCounter | Convertto-HTML | Informe de archivo fuera de archivo.html y obtenemos este resultado:
Sin embargo, recuperamos toda la información de Get-StorageRiabilityCounter, por lo que el informe es bastante amplio. ¿Qué pasa si no necesitábamos todo eso?
Filtrarlo; Algo como esto debería funcionar:
Get-Disk 0,1 | Get-storagereliabilityCounter | Select-Object PoweronHours, ReadErRorsUnScorred | Convertto-HTML | Informe de archivo fuera de archivo.html
Ahora abrimos nuestro informe HTML y vemos los resultados para el disco 0 y 1.
Ahora todo esto está bien, pero ¿cómo recopilamos información para una serie de máquinas? ¿O incluso solo una máquina remota?
PowerShell en la empresa
Supongamos que necesita saber qué máquinas de Windows se encuentran en una unidad organizativa (OU) en AD:
Get -AdComputer -Filter 'OperatingSystem -nOnlike "*Server*"' -SearchBase "cn = , dc = illuminati, dc = Services" | Nombre -objeto -expand name
Si queríamos eso en un archivo para, por ejemplo, el consumo de Excel, solo agregue un comando de exportación:
Get -AdComputer -Filter 'OperatingSystem -nOnlike "*Server*"' -SearchBase "cn = , dc = illuminati, dc = Services" | Select -Object -Expand Nombre | Export-csv allwindows.csv
Pero, ¿qué pasa si necesitamos hacer algo más que consulta? Tomemos el ejemplo anterior. Estamos obteniendo una lista de todas las computadoras en un OU específico en AD. ¡Excelente!
Averigüemos si sus discos duros son saludables. Con unidades de estado sólido, una vez que el controlador de disco se vuelve mal, tiende a perder todo en el camino. En general, en un entorno empresarial, esto no es un gran problema, porque está respaldando datos de usuarios utilizando perfiles de roaming, UE-V, OneDrive para negocios o algo más; Algo más que dejar que los usuarios solo almacenen documentos comerciales importantes en un solo host no disponible.
Entonces, construyamos un script que haga esto usando el que acabamos de escribir como marco:
Get -AdComputer -Filter 'OperatingSystem -NOUNKE "*Server*"' -SearchBase "CN = Computers, DC = Illuminati, DC = Services" | Get-PhysicalDisk | Select-Object FriendlyName, HealthyStatus | Results export-csv.csv
Esto devuelve un CSV de nuestras máquinas y su salud del disco.
Otra buena característica para PowerShell, si desea obtener información de una sola máquina en lugar del dominio en general, son los siguientes comandos que se pueden usar sin ninguna preconfiguración de su entorno:
- Getinvent
- Contener
- Get-EventLog
- Eventleg claro
- Escritura de escritura
- Limit-EventLog
- Show-eventlog
- New-EventLog
- Eliminar-eventlog
- Get-wmiobject
- Obtener procesos
- Get-Service
- Set-servicio
- Get-hotfix
- Reiniciar computadora
- Parpadería
- Agrega
- Eliminar la computadora
- Cambiar el nombre de computadora
- RESET-COMPUTERMACHINEPASSWORD
Si tuviera algo que necesitaba más control sobre una computadora en su entorno, entonces necesitaría analizar lo que se llamaba Windows Remote Management (WinRM), pero ahora es la base utilizada por PowerShell para PowerShell Remoting. Esto es bastante fácil de hacer y se hace mejor a través de la política grupal.
El GPO que desea establecer se encuentra en el área de configuración de la computadora de la política de grupo. Lo encontrará aquí: Políticas/plantillas administrativas/componentes de Windows/Windows Remote Management (WinRM)/WinRM Servicio La política específica para establecer en habilitado es: Permitir la administración de servidores remotos a través de WinRM, también es posible que desee establecer esto para funcionar automáticamente Al cambiar el servicio para iniciar automáticamente: Políticas/Configuración de Windows/Configuración de seguridad/Sistema de Servicios
Establezca el servicio en Automático: Windows Remote Management (Wsmangement)
También querrá administrar la política de dominio en el firewall de Windows para permitir la regla de firewall predefinida de tráfico de administración remota de Windows: Políticas/Configuración de Windows/Configuración de seguridad/Firewall de Windows con seguridad avanzada/firewall de Windows con seguridad avanzada/reglas entrantes establecidas esa regla para esa regla Permitido.
Cuando consideramos tareas en el entorno empresarial y cómo la administración remota en PowerShell puede ayudar, ayuda a dividirlas en escenarios: realizar algún tipo de acción en un sistema u objeto, o obtener datos de una computadora o objeto (como servicios de directorio) .
Configuración de estado deseada
La configuración de estado deseada (DSC) es un marco de administración en PowerShell que puede proporcionar una forma estandarizada de definir cómo se debe configurar un sistema. Esto permite la automatización completa de la configuración del dispositivo utilizando un modelo declarativo: crea una configuración que establece cómo se debe configurar un dispositivo, publique esa configuración y luego espere a que los dispositivos se actualicen para que coincidan con la configuración.
Se puede usar una configuración única en múltiples dispositivos, asegurando que se mantengan con configuraciones idénticas y estandarizadas. Esto evita la deriva de la configuración cuando ocurren múltiples cambios durante un período de tiempo.
DSC admite dos métodos de implementación:
- Modo Push: en este modo, el administrador realiza las configuraciones y luego las empuja manualmente a los dispositivos de destino. Esta es una comunicación de una vía, y solo puede funcionar si los dispositivos están disponibles en la red en el momento del empuje. También supone que los módulos PowerShell apropiados están disponibles en todos los dispositivos. Esta opción es más adecuada para entornos pequeños donde todos los dispositivos están conectados en todo momento.
- Modo de extracción: en este modo, el administrador crea un servidor de extracción que se utiliza para alojar las configuraciones. Luego, cada uno de los dispositivos está configurado para contactar a este servidor a intervalos regulares (como cada 15 minutos) para buscar cualquier cambio en las configuraciones. Si se encuentra, el dispositivo puede extraer los datos DSC y cualquier módulo requerido. Esto automatiza la implementación de configuraciones en alta frecuencia y no requiere una mayor interacción del administrador.
DSC tiene una configuración y un lado de recursos, y un administrador de configuración ejecuta el programa entre los dos:
- Configuraciones: estos son scripts PowerShell que definen y configuran los recursos. El motor DSC analizará la configuración y los recursos disponibles y hará que el sistema adopte el estado deseado.
- Recursos: un recurso es un código que mantiene el objetivo de una configuración en un estado específico. Estos están en los módulos de PowerShell más típicamente. Por defecto, DSC tiene varios recursos, que puede ver ejecutando el cmdlet Get-DSCresource:
- Manager de configuración local (LCM): esto se ejecuta en el dispositivo local para garantizar que la configuración se aplique correctamente. El LCM encuesta el sistema para garantizar que el estado definido por la configuración se mantenga y corrija cualquier error.
Un ejemplo de cómo utilizaría las configuraciones de DSC sería evitar que se ejecute un proceso específico o tener una clave de registro o una política de seguridad establecida de una manera específica para cumplir con sus requisitos de seguridad. Piense en esta capacidad como política grupal, pero aumenta con mucha mayor flexibilidad.
Suite de herramientas de Windows Sysinternals
Microsoft proporciona una gama de herramientas de administración avanzadas, conocidas como Sysinternals Suite. Puede explorar las herramientas viendo el sitio de Technet: https://technet.microsoft.com/en-us/sysinternals.
Desde aquí puede obtener acceso a las herramientas con información de referencia sobre cómo usarlas, obtener actualizaciones sobre los cambios a medida que se publican, ver videos de instrucciones y discutir las herramientas en el foro.
Las siguientes secciones explorarán BGINFO, para mostrar información útil en el escritorio de un usuario y el conjunto de herramientas de control remoto de un usuario.
Bginfo
Una herramienta muy útil disponible en el conjunto de herramientas Systinternals es BGINFO. Esta herramienta permite que la información específica del sistema esté disponible cuando el usuario inicia sesión mostrándola como texto en el fondo o en un cuadro emergente en la bandeja del sistema. Esto puede ser muy útil cuando necesitan llamar al servicio de ayuda para informar un problema y proporcionar información detallada para ayudar con la resolución de problemas. Las herramientas se pueden implementar en todas las computadoras y aplicarse a la pantalla de inicio de sesión y el fondo de pantalla de escritorio de los usuarios, incluso si el usuario tiene un fondo personalizado en su escritorio que cambia con frecuencia, Bginfo puede superponer el texto encima de la imagen personalizada y actualizar con frecuencia .
Esta sección explicará cómo configurar las opciones que desea mostrar y luego implementar la herramienta y la configuración personalizada en todas sus computadoras para garantizar que la información se muestre de la misma manera para todos.
Configuración de bginfo
Inicie la herramienta BGINFO en su computadora local, o una que represente la configuración de sus objetivos previstos. Configure las opciones que desea y luego guarde el archivo de configuración BGINFO personalizado usando el archivo | Guardar configuración.
Las siguientes opciones están disponibles para configurar qué información se mostrará y cómo aparece:
Botones:
- Campos: seleccione qué información debe recopilarse y mostrar. Puede elegir entre la lista de opciones estándar o crear sus propios campos personalizados, como puede ver en esta pantalla:
- Fondo: elija un color sólido o un fondo de pantalla para usar para el fondo. También puede optar por copiar la configuración existente, que permitirá al usuario seleccionar sus propios fondos mientras se muestra información BGINFO.
- Posición: puede elegir entre nueve posiciones de pantalla posibles y opciones para atender múltiples pantallas.
- Desktops: elija qué tipos de escritorio están actualizados por Bginfo: la pantalla de inicio de sesión, el escritorio de usuario local y el inicio de sesión de escritorio remoto.
- Vista previa: si selecciona este botón mientras está configurando las opciones, puede ver la imagen en segundo plano a medida que crea y cambia las opciones. Esta información se actualiza dinámicamente para garantizar que refleje con precisión sus opciones de configuración.
Menú superior:
- Archivo: este menú le permite guardar varias copias de los archivos y restaurarlos a la configuración predeterminada. También puede especificar una base de datos o archivo de texto que se puede usar para almacenar información que es recuperada por BGINFO, que puede ser muy útil si está intentando llevar a cabo una auditoría o verificar los cambios de configuración que están ocurriendo.
- Mapa de bits: la salida del archivo bginfo es una imagen de mapa de bits; Esta opción de menú permite configurar el tamaño y la calidad de la imagen.
- Editar: este menú le permite insertar una imagen, como el logotipo de su empresa.
- Formato: hay una amplia gama de opciones para modificar el tamaño, el estilo y el color del texto para adaptarse a sus preferencias.
Ahora debe tener un archivo .bgi personalizado que pueda usar para configurar otras computadoras. El siguiente paso le mostrará cómo implementar esto en todas sus computadoras.
Despliegue
Para implementar la solución, debe encontrar la forma más adecuada de transferir tanto el ejecutable BGINFO (.exe) como el archivo de configuración bginfo (.bgi) a las computadoras remotas, así como configurar el script apropiado para ejecutar al inicio/inicio. El método más simple es crear una acción en un servidor central que todos los clientes puedan alcanzar y luego cargar los dos archivos (.exe y .bgi). El siguiente paso es crear un script y ejecutarlo en cada computadora: en un entorno de anuncios, cree un script de inicio de sesión e implemente utilizando la política de grupo para dirigirse a las computadoras.
Las siguientes opciones de secuencias de comandos están disponibles para modificar el comportamiento de BGINFO cuando se ejecuta:
/Temporizador: Especifica el valor de tiempo de espera para el temporizador de cuenta regresiva, en segundos. Especificar cero actualizará la pantalla sin mostrar el cuadro de diálogo de configuración. Especificando 300 segundos o más deshabilita el temporizador por completo.
/PopUp: hace que BGINFO cree una ventana emergente que contenga la información configurada sin actualizar el escritorio. La información está formateada exactamente como lo haría si se muestra en el escritorio, pero reside en una ventana ajustada. Al usar esta opción, la base de datos del historial no se actualiza.
/Silencio: esta opción suprime cualquier mensaje de error; Eliminarlo al solucionar problemas con cualquier problema.
/Barra de tareas: hace que BGINFO coloque un icono en el área de estado de la barra de tareas sin actualizar el escritorio. Al hacer clic en el icono, la información configurada aparece en una ventana emergente. Al usar esta opción, la base de datos del historial no se actualiza.
/Todos: Especifica que BGINFO debe cambiar el fondo de pantalla para todos y todos los usuarios que actualmente iniciaron sesión en el sistema. Esta opción es útil dentro de un entorno de servicios terminales, o cuando BGINFO está programado para ejecutarse periódicamente en un sistema utilizado por más de una persona.
/Registro: BGINFO escribirá errores en el archivo de registro especificado en lugar de generar un cuadro de diálogo de advertencia. Esto es útil para rastrear errores que ocurren cuando BGINFO se ejecuta bajo el planificador.
/RTF: BGINFO escribirá su texto de salida en un archivo RTF. Se incluyen toda la información y los colores de formato.
Entonces, el comando resultante puede verse algo así:
REG ADD HKU \ .DEFAULT \ Software \ Sysinternals \ Bginfo /V EULAACCETED /T REG_DWORD /D
1 /F
\\ servidor \ share \ bginfo.exe \\ servidor \ share \ template.bgi /temporizador: 00 /nolicprompt
Introducción de PSTOOLS
El conjunto de herramientas de control remoto de Sysinternals también menciona en este artículo también. Los binarios de PTOols proporcionan un método para la administración remota del sistema utilizando la línea de comandos. Mientras que PowerShell llena la necesidad de potentes capacidades de remota de línea de comandos en Windows 10, las ediciones anteriores vienen con versiones más antiguas de PowerShell de forma predeterminada o ni siquiera lo vienen en absoluto.
La instalación es tan simple como descargar la suite Pstools de https://technet.microsoft.com/en-us/sysinternals/pstools.aspx y extrayendo el archivo zip.
Ejecutarlos en un símbolo del sistema elevado. Configurarlos como parte de la ruta de su sistema puede ser útil pero también un vector de ataque fácil, por lo que considera cuidadosamente el impacto antes de configurar.
Las herramientas en sí son binarios de línea de comandos ejecutables que realizan diferentes tareas del sistema; Muchos de ellos se pueden usar en sistemas remotos con facilidad. El zip contiene los siguientes binarios:
- PSEXEC: Ejecutar procesos en hosts remotos
- PSFILE: Mostrar archivos abridos de forma remota
- PSGETSID: Muestre el SID de una computadora o objeto de usuario
- Psinfo: Información de la lista sobre un host
- PSPing: mida el rendimiento de la red
- PSKill: Mata procesos por nombre o pid
- PSList: enumere información detallada sobre procesos en un host
- Psloggedon: vea quién ha iniciado sesión localmente y también a través de compartir
- PSLogList: registros de eventos de volcado
- PSPASSWD: Cambiar las contraseñas de la cuenta
- PSService: Ver y controlar servicios
- Psshutdown: apague y opcionalmente reinicie un host
- Pssuspend: suspender procesos
Como puede ver, estas son algunas herramientas poderosas que mejoran el cinturón de herramientas del administrador empresarial. Debido a esto, algunos administradores de redes y seguridad querrán bloquear estas herramientas para prevenir el abuso y los vectores de ataque. Esto es difícil de hacer ya que los puertos utilizados son los puertos TCP 135 y 445.
Estos pueden sonar familiares: el puerto 135 está designado para DCOMSCM y el puerto 445 está designado para los servicios de directorio de Microsoft. Específicamente, este puerto se utiliza para el intercambio de archivos del bloque de mensajes del servidor (SMB) y otros conceptos administrativos en Windows.
Como resultado, estos deben estar abiertos y en funcionamiento. El intercambio de archivos (IPC específicamente) debe estar disponible. El servicio de registro remoto también debe activarse para algunas acciones.
Si intenta bloquear esto, en esencia estará bloqueando el intercambio de archivos y la comunicación entre nodo de las máquinas de Windows. Vale la pena señalar que necesita conocimiento de las cuentas a nivel de administrador para usar PTools. Por lo tanto, es más importante practicar una buena seguridad y auditoría de cuentas que preocuparse por esta herramienta, suponiendo que todo lo demás sea lo mismo.
Instalación de pstools
PTools utiliza una sintaxis familiar si ya está acostumbrado a usar una línea de comandos en Windows. Simplemente abra un símbolo del sistema elevado en el directorio donde se desabrochó PTools.
Usando su símbolo del sistema elevado, escriba PSEXEC y presione Enter. Debe ser solicitado para el conjunto de software EULA del Sysinternals:
Para evitar golpear el aviso de Sysinternals EULA en cada sistema en el que lo use, use el interruptor -accteula. Esto es cierto para Process Explorer, Process Monitor y la mayoría de las herramientas de Sysinternals. Esto puede ser muy importante cuando queremos escribir una solución o ejecutar Procmon en una máquina remota. Mira este comando:
C: \ ptools> psexec \\ win81 -u illuminati \ demo -u p@ssword1 -c -f Procmon
Te da esto:
Y termina con:
Esta es la primera ejecución de este programa. Debes aceptar EULA para continuar.
Use -acceteula para aceptar EULA.
Procmon.exe salió en Win81 con el código de error 1.
Por lo tanto, una simple adición del conmutador le dará mejores resultados (tenga en cuenta que el - C es copiar el binario localmente y -f es especificar el archivo, que estaba en el mismo directorio que mi símbolo del sistema).
A veces es necesario encadenar los comandos. Por ejemplo, PSINFO requiere que el servicio de registro remoto esté habilitado. En Windows 8.1, se envía como un servicio deshabilitado. Entonces, si quisiéramos usar Psinfo Host Win81, necesitaríamos algo como esto:
C: \ ptools \ psservice \\ win81 setConfig remoteRegistry Auto && c: \ ptools \ psinfo
\\ win81
PSINFO V1.78 - Visor de información del sistema local y remoto
Copyright (c) 2001-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
Información del sistema para \\ Win81:
Tiempo de actividad: 0 días 0 horas 56 minutos 15 segundos
Versión del núcleo: Windows 8.1 Enterprise, multiprocesador gratis
Tipo de producto: profesional
Versión del producto: 6.3
Paquete de servicio: 0
Número de construcción del núcleo: 9600
Organización registrada:
Propietario registrado: Fred
IE Versión: 9.0000
Root del sistema: C: \ Windows
Procesadores: 4
Usando pstools
Como hay muchas herramientas para elegir, exploremos algunas de las más útiles para comprender dónde puede comenzar:
PSEXEC: Esto le permite ejecutar de forma remota un proceso en una o múltiples computadoras. La entrada y salida de cualquier aplicación de consola se redirigen para que parezcan ejecutarse localmente. Esto generalmente se usa para ejecutar un símbolo del sistema en una computadora remota, luego ingrese comandos como Ipconfig /All y vea la salida de esa computadora remota, lo que evita la necesidad de seguir la forma de usar escritorio remoto, iniciar sesión, iniciar, iniciar el símbolo del sistema, y luego encontrar una forma de extraer la salida. Esta opción también se puede utilizar para garantizar que cualquier aplicación que se inicie pueda ejecutarse en segundo plano, por lo que cuando un usuario o administrador se desactiva, el programa puede continuar ejecutándose.
La sintaxis básica para usar se ve así:
PSEXEC \\ CompuTername [Opciones] Programa [Argumentos]
Para ejecutar IPConfig en una computadora remota, puede ejecutar el siguiente comando:
psexec \\ client1 ipconfig /all
Si necesita usar credenciales alternativas, puede ejecutar este comando:
PSEXEC \\ CLIENT1 IPCONFIG /ALL -U "Domain \ userId" -P Password
Hay muchos interruptores disponibles con esta herramienta, y es una buena idea pasar algún tiempo revisándolos en las guías de ayuda para comprender completamente los usos potenciales.
PSFILE: El objetivo principal de esta herramienta es consultar una computadora para enumerar los archivos que están actualmente abiertos en sistemas remotos. Para ver archivos abiertos en un sistema remoto, use la siguiente sintaxis:
PSFile \\ CompuTername c: \ FilePath
Si necesita obtener acceso a un archivo que está bloqueado actualmente por un proceso, puede cerrar el archivo usando el comando -c, pero esto debe hacerse con precaución ya que cualquier datos no escritos puede perderse.
PSGETSID: los identificadores de seguridad de Windows (SIDS) permiten identidades únicas para computadora, grupos, usuarios y otros objetos del sistema. Si bien el nombre visible de un objeto puede cambiar, el SID siempre sigue siendo único para la vida del objeto. Cada computadora tiene una máquina SID, que se crea durante el proceso de configuración. Si la computadora se une a un dominio AD, entonces también tiene una identificación relativa (RID) para crear un SID único en el dominio. De esta manera, puede consultar información basada en una identidad muy específica sin depender de los nombres que pueden cambiarse o duplicarse.
La herramienta PSGETSID proporciona una forma simple de traducir del nombre a un SID o viceversa. Use la siguiente sintaxis de comando para mostrar el nombre de un nombre de cuenta dado:
nombre de cuenta de psgetsid
PSINFO: Esta herramienta reúne información clave sobre un sistema para comprender detalles como el sistema operativo, la versión del producto, el número y el tipo de procesadores, la memoria física y el controlador de video. Esta información puede ser útil para verificar la compatibilidad de un sistema antes de instalar actualizaciones de software o consultar todas las computadoras y encontrar aquellas que no cumplan con sus requisitos mínimos o aquellos que tienen una aplicación específica o instalado en Hot-Fix.
Psinfo \\ CompuTername
Para recopilar más información y controlar cómo se generan los informes, puede usar los siguientes comandos:
-C para enviar los resultados a un archivo CSV
-d para recopilar información sobre disco
-h para mostrar todos los hot fixes instalados
-s para enumerar todas las aplicaciones de software instaladas
-t usa esto para especificar un carácter de delimitador diferente
PSList: cuando necesita llevar a cabo una inspección detallada de una computadora remota, es útil comprender qué procesos se ejecutan actualmente en el sistema. La consideración más importante para esta herramienta es el uso de los argumentos de la línea de comandos que le permiten consultar información específica en lugar de ver cada proceso.
Por defecto, esta herramienta muestra solo información de CPU. Los siguientes comandos le permiten mostrar detalles adicionales sobre uno o más procesos. Debido a los detalles incluidos, es posible que desee ejecutarlos contra procesos específicos o exportarlos a un archivo CSV para comparar todos los procesos:
-d para mostrar detalles sobre los hilos para cada proceso
-m para mostrar la información de memoria sobre cada proceso
-x para mostrar información sobre CPU, hilo y memoria sobre cada proceso
Estos comandos se pueden combinar para mostrar información detallada sobre los procesos. El siguiente ejemplo muestra que PSList se está utilizando para enumerar todos los detalles sobre una aplicación específica en una computadora remota:
pslist \\ CompuTername -x -e AppName
También puede usar el comando -t para mostrar los procesos en una vista de árbol, para mostrar la relación padre/hijo (esto no se puede usar con los comandos -d, -m y -x).
PSKILL: Una vez que haya usado PSList para identificar procesos que se ejecutan en un sistema, puede usar PSKill para terminar el proceso. Esto se puede especificar por el nombre o el PID del proceso específico, o todo el árbol de proceso (proceso principal y todos los procesos infantiles). Esta es una herramienta poderosa que terminará el proceso de inmediato, lo que significa que no tendrá la oportunidad de apagar limpiamente, lo que podría dar como resultado una pérdida de datos o inestabilidad del sistema si se usa de manera inapropiada. El siguiente comando se conectará a la máquina especificada y matará el PID en la lista:
PSKill \\ CompuTername PID
Para terminar el árbol de proceso, especifique el interruptor -t.
PSService: con esta herramienta, puede ver y controlar de forma remota los servicios y controladores. Los controles básicos incluyen la capacidad de comenzar, detener, reiniciar y detener un servicio. Puede consultar servicios y controladores para obtener información específica, como servicios dependientes, configuraciones de seguridad y orden de carga (en el arranque). También puede configurar un servicio o controlador para cambiar detalles, como el nombre de la cuenta bajo el cual se ejecuta el servicio, o cambiar el orden de carga para que ocurra más temprano o posterior al siguiente arranque.
Una capacidad única de este servicio es la función de búsqueda. Usando el comando Find, puede buscar en su red todas las instancias de un servicio. Por ejemplo, para encontrar todas las computadoras que ejecutan el servicio del servidor DNS, use el siguiente comando:
PSService Encuentra "servidor DNS" todo
PSLOGGEDON: Otra cosa útil al investigar la actividad de la computadora del cliente es comprender si quien haya conectado a la computadora tiene como inicio de sesión directo o compartir remoto. Para mostrar una lista de todos los usuarios iniciados con una computadora específica, use este comando:
psloggedon \\ ComputerName
Alternativamente, puede usar esta herramienta para buscar todas las computadoras en el dominio o el grupo de trabajo local, pero tenga en cuenta que esto puede tardar un tiempo en completarse según la cantidad de computadoras y el tamaño de la red. Para hacer esto, especifique un nombre de usuario en lugar del nombre de la computadora:
nombre de usuario de psloggedon
Repositorio de código personalizado
Con todas estas herramientas y flexibilidad a manos de un administrador, o un equipo más probable de administradores en un entorno empresarial, existe un gran riesgo de duplicación de esfuerzo, ya que cada administrador solo ve un problema y prepara una solución de PowerShell, por ejemplo. Tener un repositorio de scripts y herramientas de GitHub ciertamente tiene sentido para que pueda mantener la verificación de los scripts de uso frecuente a medida que se iteran y mejoran. Además, debe asegurarse de que todos estén sincronizados con la forma en que se debe realizar scripts automatizados. El problema que está resolviendo con un repositorio es que John escribió un script y ahora no es ninguno de los problemas de arranque de las máquinas. Este es un mal lugar para estar; En general, estos son eventos rean y reanudan.
Resumen
Para resumir este capítulo, hemos aprendido de algunas opciones diferentes para administrar de forma remota su entorno empresarial. La clave para el aprendizaje de la automatización y la administración es hacer, pero hacer cuidadosamente. No podemos exagerar el riesgo de que se ejecute un script mal escrito en un entorno con credenciales de administración de dominio.