1 Simplificando las tareas de administración mediante el uso de Powershell Pablo Campos Sáez MCT, MCTS, RHCT pacampos@alx.cl http://geeks.ms/blogs/pcampos Alejandro Pacheco Microsoft Chile Alejandro.pacheco @microsoft.com http:// blogs .msdn.com/a pacheco
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
Simplificando las tareas de administración mediante el uso de Powershell
Pablo Campos SáezMCT, MCTS, [email protected] http://geeks.ms/blogs/pcampos
Alejandro Pacheco Microsoft [email protected]://blogs.msdn.com/apacheco
Qué es y para quién es !Objetos, Objetos, Objetos, Objetos! Seguridad Cmdlets y su salida |pipes| Arreglos Estructuras de iteración WMI Remoting Demos Demos Demos
3
PowerShell
Qué?
Shell Interactiva
Nuevo Language de Scripting
Por qué?
Completo set de comandos
Orientada a Objetos
Revolucionaria
4
Objetos“Un objecto es una colección de
partes y cómo usarlas ”
PartesPropiedades
Manubrio
Ruedas
Pedales
Frenos
Marco
UsarlasMetodos
Pedalear
Giro Derecho
Giro Izquierdo
Presionar Freno Delantero
Presionar Freno Delantero
PartesCómo se
Usan
5
Objetos
Nombre del Servicio
PartesPropiedades
Estado
Descripción
Stop()
Cómo UsarlasMétodos
Start()
Pause()WindowsService
6
Ejemplo:Cambiando el aspecto de la shell
GreenGreenForegroundColorForegroundColor
$Host.UI.RawUI$Host.UI.RawUI
$host.UI.RawUI
Real-World ObjectReal-World Object
HandlesHandles DataData
.ForegroundColor = “Green”
GreenGreenForegroundColorForegroundColor
$Host.UI.RawUI$Host.UI.RawUI
$host.UI.RawUI.ForegroundColor = “Green”
7
Los Cmdlets usan una notación estandar cmdlets: Verbos-SustantivoTipos de Parámetros: integer, string, date, etc.
CmdletParameter
NameParameter
Value
Cmdlets y sus parámetros
Get-Process -name lsass
Get-Process lsass (Parameter Name Optional)
8
Demo: Propiedades y métodos de un cmdletGet-Process
Get-Process | Get-Member
Get-Process | Get-Member | more
Get-Process | Get-Member -MemberType Property | more
Get-Process | Get-Member -MemberType Properties | more
Get-Process | Get-Member -MemberType Method | more
9
Demostración: Listar los Cmdlets disponibles (Get-Command)
Get-Command
Get-Command -Verb Get
Get-Command -Noun Variable
Get-Command *Object
10
Salida de un CmdletPowerShell por defecto no emite texto
Cmdlets emiten objetosEl formato de salida de los objetos da la ilusion de que es texto, pero no lo es
Comandos más ComunesEstructuras de decisión Estructuras de iteración y Filtros
19
Windows PowerShell Default Security Settings .
PS C:> Get-ExecutionPolicy
RestrictedPS C:> Set-ExecutionPolicy RemoteSigned
20
¿ Qué es WMI?
WMI – Windows Management Instrumentation
Implementación de Microsoft WBEM (“Web-Based Enterprise Management ”)CIM (“Common Information Model”)
Es el método para administrar remotamente las máquinas
21
Arquitectura
Object Provider
CIM Object Manager
WMI Objects
SNMP Objects
Win32 Objects
DMI Objects
Aplicación
Repositorio de Datos Estáticos, dinámicamente referenciados
WMI SNMP WIN32 RPC
COM/DCOM Wbem Services
COM/DCOM Wbem Services
22
WMI y PowerShell
CIMV2Namespace
VirtualizationNamespace
Class
Class
Class
Class
PowerShell
23
Get-WMIObject
Parámetros Básicos-Namespace – Especifíca el repositorio WMI donde esta almacenada la clase-Class – Especifíca el nombre de la clase WMI a consultar-List – Muestra todas las clases del espacio de nombre-ComputerName – Especifíca el computador a conectar-Credential – Especifíca las credenciales del host remoto
Get-WMIObject
24
Demos
25
Habilitar remoting
PS C:\> Enable-PSRemoting1. Iniciar o reiniciar (si ya esta iniciado) el servicio WinRM 2. Establecer el tipo del servicio WinRM en inicio automático 3. Crear una escucha para aceptar solicitudes en cualquier dirección IP 4. Habilitar una excepción de firewall para el tráfico WS-Management (sólo para http).