Habilitar WINRM en Windows Server 2019
Windows Remote Management o WinRM se trata de un componente de Windows, que permite trabajar de forma local y remotamente entre diferentes equipos y tecnologías. A nivel de Windows Server 2019 viene implementado y no es necesario realizar ninguna instalación adicional, pero no está habilitado por defecto.
Lo que quiero mostraros es como habilitarlo para poder trabajar con él. Así que abrimos una consola de Powershell y lanzamos los siguientes comandos:
1 |
Enable-PSRemoting –force |
Ponemos el servicio en automático:
1 |
Set-Service WinRM -StartMode Automatic |
Comprobamos que está arriba:
1 2 3 4 5 6 7 8 9 10 |
Get-WmiObject -Class win32_service | Where-Object {$_.name -like "WinRM"} PS C:\Users\Administrator> Get-WmiObject -Class win32_service | Where-Object {$_.name -like "WinRM"} ExitCode : 0 Name : WinRM ProcessId : 1672 StartMode : Auto State : Running Status : OK |
Arrancamos el servicio:
1 |
Start-Service WinRM |
Si entre el cliente y el servidor hay un firewall, necesitaremos habilitar los siguientes puertos:
1 |
Puertos 5985 HTTP / 5986 HTTPS |
Aunque no es necesario, podríamos habilitar el acceso a los hosts que nos interesen o a todos:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# Trust all hosts Set-Item WSMan:localhost\client\trustedhosts -value * PS C:\Users\Administrator> Set-Item WSMan:localhost\client\trustedhosts -value * WinRM Security Configuration. This command modifies the TrustedHosts list for the WinRM client. The computers in the TrustedHosts list might not be authenticated. The client might send credential information to these computers. Are you sure that you want to modify this list? [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): # Verify trusted hosts configuration Get-Item WSMan:\localhost\Client\TrustedHosts |
Para abrir una sesión remota lanzaríamos el siguiente comando:
1 |
$ConAD=New-PSSession -ComputerName neguad01.negu.local |
Una vez iniciada la sesión remota, podremos lanzar diferentes comandos referenciando a la misma:
1 2 3 4 5 |
PS C:\Users\runzue> Invoke-Command -Session $ConAD {Get-ADGroupMember “CITRIXKILL” -recursive | Select-Object name} name PSComputerName RunspaceId ---- -------------- ---------- runzue neguad01.negu.local ac801093-85af-4e79-8fc7-575e556d7553 |
Podemos consultar las sesiones abiertas:
1 2 3 4 5 |
PS C:\Users\runzue> Get-PSSession Id Name ComputerName ComputerType State ConfigurationName Availability -- ---- ------------ ------------ ----- ----------------- ------------ 11 WinRM11 neguad01.neg... RemoteMachine Opened Microsoft.PowerShell Available |
Y podemos cerrarlas:
1 |
Get-PSSession | Disconnect-PSSession |
¿Te ha gustado la entrada SÍGUENOS EN TWITTER?
Te ha gustado la entrada SGUENOS EN TWITTER O INVITANOS A UN CAFE?
te tienes que currar mas la presentacion. te quedas corto en la explicacion