Examinar el log de eventos con PowerShell

Scripting en MS Win con PowerShell

1. Todos los eventos en la computadora local 2. Obtener X entradas más recientes 3. Filtrar por tipo 4. Filtrar por tipo y gravedad 5. Eventos con una palabra clave 6. Mostrar las propiedades de un evento 7. Eventos en un intervalor de tiempo 8. Enlaces internos 9. Enlaces externos Para acceder en modo gráfico Win+R y ejecuta eventvwr. Los siguientes comandos son básicos, PS permite cosas interesantes como consultar el log de eventos de máquinas remotas. []

Buscar archivos no accedidos en X días

Scripts PowerShell

En mi portal de PSFabrik encontrarás más referencias agrupadas por temás. Llega el fin de año y queremos comenzar el nuevo con buenos propósitos, dentro de la guía de buenas prácticas de gestión de documentos en el repositorio compartido está la sugerencía de retirar todos los archivos no accedidos en varios años y guardarlos en un trastero digital, me pongo manos a la obra y programo un script (muy mejorable) pero sólo me lleva unos minutos consultando aquí y allá, el script debe aceptar dos parámetros, la ruta donde debemos buscar y el número de días que lleva el archivo sin ser accedido, el resultado se exporta a un fichero CSV para que los responsables de cada carpeta tomen cartas en el asunto, una mejora futura es que mueva estos archivos a otra ubicación (manteniendo la ruta actual). []

Inventario de equipos remotos con PowerShell

Administración equipos y sistemas

WMI es una tecnología para recabar información sobre equipos, es especialmente útil para monitorizar diversos parámetros de un equipo remoto, si quieres saber más consulta este enlace. El siguiente cmdlet recaba información de uno o varios equipos en red: Nombre de computadora, fabricante, modelo, procesador, tipo sistema, sistema operativo, versión del sistema operativo, número de serie, dirección de red, último usuario logeado, espacio en disco, etc. La función Get-Inventory recibe como parámetro uno o varios equipos: []

Trabajando con ficheros de texto

Powershell scripting

Manipulación de texto con PowerShell Existen una serie de cmdlets para para manipular ficheros de texto Add-Content, Clear-Content, Get-Content y Set-Content. Además Out-File puede crear un fichero de texto o escribir contenido. Creando un fichero Se pueden usar ambas, Add-Content y Set-Content, pero necesitan que se indique el contenido de texto. $txt = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ut enim in libero vehicula viverra. Ut at enim quis justo lacinia euismod nec eget urna. []

Añadir una cuenta a un grupo de Active Directory con PowerShell

Administración de grupos de directorio activo

Hoy me ha tocado añadir una cuenta de usuario a un grupo de Active Directory, ni corto ni perezoso he decidido hacerlo con PowerShell. Acceso remoto con PS Lo primero es establecer una sesión remota de PowerShell al servidor de dominio (algunos datos los he cambiado para no mostrar mi nombre de usuario o el nombre del servidor): PS> enter-pssession -computername servidor-ad -credential Cuenta-Usuario A continuación cargo el módulo de Active Directory en PS para acceder a las utilidades. []

Verfificar una contraseña de dominio

Scripting PowerShell en Active Directory

Con PowerShell es muy sencillo verificar si la contraseña de un equipo corresponde con la del dominio AD (Active Directory), el cmdlet retorna un valor lógico $True si es correcta, o $False en caso contrario. El cmdlet no funciona con cuentas locales, obtiene el nombre de usuario con el que estamos logeados en el equipo donde se ejecuta el cmdlet y el nombre del dominio de las variables de entorno, a continuación solicita la contraseña y la comprueba usando la función ValidateCredentials(). []

Detectar y notificar claves que expiran de un dominio MS Active Directory

Cmdlet en PowerShell

Introducción Script en PS (PowerShell) que busca las contraseñas de usuarios de un dominio que expiran antes de N días (seleccionable) desde el moment de su ejecución y los notifica vía correo electrónico para que establezcan una nueva contraseña. El script está divido en dos funciones, la principal AccountExpiresNextDays que se llama desde la ejecución principal del script pasandole como parámetro de entrada el número de días. Desde la función principal se invoca otra función llamada SendMail cuyo único propósito es mandar un correo a los usuarios de aquellas cuentas cuyas contraseñas expiran antes de N días desde hoy. []