2024 Autor: Peter John Melton | [email protected]. Última modificación: 2024-01-09 10:24
PowerShell está bloqueado de forma predeterminada, por lo que tendrá que habilitar PowerShell Remoting antes de usarlo. Este proceso de configuración es un poco más complejo si utiliza un grupo de trabajo en lugar de un dominio, por ejemplo, en una red doméstica, pero lo guiaremos a través de él.
Habilite PowerShell Remoting en la PC a la que desea acceder de forma remota
El primer paso es habilitar PowerShell Remoting en la PC a la que desea realizar conexiones remotas. En esa PC, deberá abrir PowerShell con privilegios administrativos.
En Windows 10, presione Windows + X y luego elija PowerShell (Admin) en el menú Usuario avanzado.
Enable-PSRemoting -Force
-Force
parte del cmdlet le dice a PowerShell que realice estas acciones sin preguntarle por cada paso.
Si sus PC son parte de un dominio, esa es toda la configuración que tiene que hacer. Puedes saltarte adelante para probar tu conexión. Si sus computadoras forman parte de un grupo de trabajo, que probablemente se encuentran en una red doméstica o de una pequeña empresa, tiene un poco más de trabajo de configuración que hacer.
Nota: Su éxito en la configuración remota en un entorno de dominio depende completamente de la configuración de su red. La comunicación remota se puede deshabilitar, o incluso habilitar, automáticamente por la política de grupo configurada por un administrador. También es posible que no tenga los permisos que necesita para ejecutar PowerShell como administrador. Como siempre, verifique con sus administradores antes de intentar algo como esto. Pueden tener buenas razones para no permitir la práctica, o pueden estar dispuestos a configurarlo para usted.
Configure su grupo de trabajo
Si sus computadoras no están en un dominio, necesita realizar algunos pasos más para configurar las cosas. Debería haber habilitado Remoting en la PC a la que desea conectarse, como describimos en la sección anterior.
Nota: Para que PowerShell Remoting funcione en un entorno de grupo de trabajo, debe configurar su red como una red privada, no pública. Para obtener más información sobre la diferencia, y cómo cambiar a una red privada si ya tiene configurada una red pública, consulte nuestra guía en redes privadas y públicas.
A continuación, debe configurar los ajustes de TrustedHosts en la PC a la que desea conectarsey la PC (o PC) desde la que desea conectarse, por lo que las computadoras confiarán entre sí. Puedes hacer esto de una de dos maneras.
Si estás en una red doméstica en la que deseas seguir adelante y confiar en que cualquier PC se conecte de forma remota, puedes escribir el siguiente cmdlet en PowerShell (de nuevo, deberás ejecutarlo como Administrador).
Set-Item wsman:localhostclient rustedhosts *
El asterisco es un símbolo comodín para todas las PC. Si, en cambio, desea restringir las computadoras que pueden conectarse, puede reemplazar el asterisco con una lista de direcciones IP o nombres de computadora separados por comas para las PC aprobadas.
Después de ejecutar ese comando, deberá reiniciar el servicio WinRM para que su nueva configuración tenga efecto. Escriba el siguiente cmdlet y luego presione Enter:
Restart-Service WinRM
Prueba la conexión
Ahora que ya tiene sus PC configuradas para PowerShell Remoting, es hora de probar la conexión. En la PC desde la que desea acceder al sistema remoto, escriba el siguiente cmdlet en PowerShell (reemplazando "ORDENADOR" con el nombre o la dirección IP de la PC remota) y luego presione Intro:
Test-WsMan COMPUTER
Este sencillo comando prueba si el servicio WinRM se está ejecutando en la PC remota. Si se completa con éxito, verá información sobre el servicio WinRM de la computadora remota en la ventana, lo que significa que WinRM está habilitado y su PC puede comunicarse. Si el comando falla, aparecerá un mensaje de error.
Ejecutar un solo comando remoto
Para ejecutar un comando en el sistema remoto, use el
Invoke-Command
cmdlet usando la siguiente sintaxis:
Invoke-Command -ComputerName COMPUTER -ScriptBlock { COMMAND } -credential USERNAME
"ORDENADOR" representa el nombre de la PC remota o la dirección IP. "COMANDO" es el comando que desea ejecutar. "NOMBRE DE USUARIO" es el nombre de usuario con el que desea ejecutar el comando como en la computadora remota. Se te pedirá que ingreses una contraseña para el nombre de usuario.
Aquí hay un ejemplo. Quiero ver el contenido del directorio C: en una computadora remota con la dirección IP 10.0.0.22. Quiero usar el nombre de usuario "wjgle", así que usaría el siguiente comando:
Invoke-Command -ComputerName 10.0.0.22 -ScriptBlock { Get-ChildItem C: } -credential wjgle
Iniciar una sesión remota
Si tiene varios cmdlets que desea ejecutar en la PC remota, en lugar de escribir repetidamente el cmdlet Invoke-Command y la dirección IP remota, puede iniciar una sesión remota en su lugar. Solo escribe el siguiente cmdlet y luego presiona Enter:
Enter-PSSession -ComputerName COMPUTER -Credential USER
Nuevamente, reemplace "ORDENADOR" con el nombre o la dirección IP de la PC remota y reemplace "USUARIO" con el nombre de la cuenta de usuario que desea invocar.
Recomendado:
Cómo ejecutar comandos del símbolo del sistema desde un acceso directo de Windows
Los accesos directos son excelentes para brindarte acceso rápido a archivos, aplicaciones y carpetas. Pero, ¿sabía que también puede usarlos para ejecutar comandos del símbolo del sistema?
Cómo ejecutar comandos de sudo usando Touch ID en macOS
Escribir las contraseñas es para los tontos, por lo que la mejor parte de la última MacBook Pro es Touch ID. Saltar la pantalla de bloqueo con un toque rápido es fácilmente mi función favorita. Pero hay un lugar que aún requiere una contraseña: la Terminal, si desea usar sudo.
Cómo ejecutar cualquier comando de línea de comandos con Cortana
Es posible que Cortana no sea tan popular como esperaba Microsoft, pero puede ser útil. Ya no necesita estar al lado de su computadora para realizar una tarea; Puedes gritarlo desde el otro lado de la habitación. Sin embargo, hay algunas cosas que Cortana no puede hacer fuera de la caja.
Cómo usar mRemoteNG para administrar todas tus conexiones remotas
¿Alguna vez ha tenido la necesidad de conectarse a múltiples máquinas de varios tipos (RDP, SSH, VNC y más) simultáneamente? ¿Has encontrado que volver a escribir las credenciales es un dolor? Toma el tour de HTG de mRemoteNG.
Cómo reenviar unidades locales a máquinas remotas utilizando Escritorio remoto
¿Alguna vez ha tenido un archivo en una unidad flash que necesitaba usar en una máquina que se encuentra en otro edificio o incluso en la mitad del mundo? Puede hacerlo conectándolo a su máquina local y luego reenviando la unidad a través de su sesión remota a esa máquina. Aquí está cómo hacerlo.