Powershell

¿Está deshabilitada la ejecución de scripts de PowerShell?

By Hervé , on 25 junio 2024 , updated on 25 junio 2024 - 10 minutes to read
Partager cet article :

Cuando se trabaja con scripts de PowerShell, es esencial asegurarse de que la ejecución del script no esté deshabilitada. De hecho, esta funcionalidad puede afectar directamente al correcto funcionamiento de sus tareas automatizadas. Aprenda en este artículo cómo verificar si la ejecución de scripts de PowerShell está habilitada o deshabilitada en su sistema y cómo solucionarlo de manera efectiva.

Verifique la configuración de ejecución del script de PowerShell

PowerShell es una poderosa herramienta para automatizar y administrar sistemas Windows. Sin embargo, su ejecución de script Puede estar deshabilitado de forma predeterminada por razones de seguridad. Por lo tanto, es fundamental saber cómo verificar y ajustar estas configuraciones para permitir o restringir la ejecución del script.

para comprobar el parámetros de ejecución scripts de PowerShell, primero abra una ventana de PowerShell con Privilegios administrativos. Esto le permite cambiar la configuración de seguridad si es necesario.

Utilice el siguiente comando para descubrir el nivel actual de parámetros de ejecución :


Get-ExecutionPolicy

Este comando devolverá uno de los siguientes cuatro parámetros:

  • Restringido – No se puede ejecutar ningún script.
  • Todo firmado – Todos los scripts deben estar firmados por un editor de confianza.
  • Firmado remoto – Los scripts cargados deben estar firmados por un editor confiable.
  • Irrestricto – Los scripts pueden ejecutarse sin restricciones.

Para cambiar el nivel de configuración de tiempo de ejecución, utilice el siguiente comando:


Establecer política de ejecución Nuevo valor

Reemplazar Nuevo valor por uno de los niveles de parámetros de ejecución deseados. Por ejemplo, para permitir que se ejecuten todos los scripts, utilice:


Set-ExecutionPolicy sin restricciones

Para mejorar la seguridad, puede optar por:


Set-ExecutionPolicyRemoteSigned

Siempre verifique la configuración después de cambiar con el comando Get-ExecutionPolicy para asegurarse de que los cambios se hayan aplicado correctamente.

Verifique la configuración a través del Administrador de políticas de grupo

A veces es necesario comprobar la configuración de ejecución del script de PowerShell para asegurarse de que todo funcione como se esperaba. Esta operación se puede llevar a cabo de varias maneras, incluido el uso de lo que se llama Administrador de políticas de grupo.

Para verificar la configuración de ejecución del script de PowerShell a través de un Sesión de PowerShell, puede abrir PowerShell y ejecutar el siguiente comando:



Get-ExecutionPolicy


La salida de este comando dará la nivel de restricción actualmente aplicado, de las siguientes opciones:

  • Restringido – No se pueden ejecutar scripts.
  • Todo firmado – Sólo se pueden ejecutar scripts firmados digitalmente.
  • Firmado remoto – Los scripts cargados deben estar firmados por un editor confiable.
  • Irrestricto – No hay scripts restringidos.
  • Derivación – Ejecuta todos los scripts sin restricciones.

Para ver y modificar la configuración de ejecución del script de PowerShell mediante el Administrador de políticas de grupo, sigue estos pasos:

  1. Abre el Consola de administración de políticas de grupo (gpmc.msc).
  2. Navegar a: Configuración del equipo -> Políticas -> Plantillas administrativas -> Componentes de Windows -> Windows PowerShell
  3. Haga clic en la opción Habilitar la ejecución de scripts.
  4. Elija entre las opciones disponibles para configurar el nivel de restricción desear.

Si sigue estos pasos, podrá ajustar y controlar eficazmente cómo se ejecutan los scripts de PowerShell en su entorno Windows.

Verifique la configuración a través del Editor de políticas de grupo local

Ejecución de scripts Potencia Shell puede estar restringido o deshabilitado por razones de seguridad. para comprobar el parámetros de ejecución y asegúrese de que todo esté en orden, hay varios métodos disponibles.

Para comenzar, abra PowerShell con derechos de administrador y ejecute el siguiente comando:


Get-ExecutionPolicy

Este comando devuelve el nivel de política de ejecución aplicado actualmente. Los niveles posibles son:

  • Restringido : No se permite la ejecución de scripts.
  • Todo firmado : Sólo se pueden ejecutar scripts firmados por un editor confiable.
  • Firmado remoto : Los scripts cargados deben estar firmados por un editor confiable.
  • Irrestricto : No se restringe ningún script, pero se muestra una alerta.
  • Derivación : Sin restricciones ni alertas.
  • Indefinido : No se define ninguna política de ejecución.

Para modificar la política de ejecución, utilice el siguiente comando:


Set-ExecutionPolicyRemoteSigned

Para entornos más seguros, se recomienda verificar y configurar los ajustes a través delEditor de políticas de grupo local.

Acceda al Editor de políticas de grupo local escribiendo


gpedit.msc

en la barra de búsqueda de Windows y presionando Entrada.

Una vez que el Editor esté abierto, siga la ruta a continuación:


Configuración del equipo > Plantillas administrativas > Componentes de Windows > Windows PowerShell

A continuación, busca la opción. Configurar scripts de PowerShell. Haga doble clic en él para cambiar la configuración. Seleccione las opciones adecuadas según sus necesidades de seguridad y secuencias de comandos.

El script de PowerShell está habilitado
El script de PowerShell está deshabilitado
  • 👎🏽
    • Los scripts de PowerShell no se pueden ejecutar en el sistema
    • La seguridad ha sido mejorada, pero algunas funciones pueden ser limitadas

  • Los scripts de PowerShell no se pueden ejecutar en el sistema
  • La seguridad ha sido mejorada, pero algunas funciones pueden ser limitadas
  • No 👍🏽
    • Los scripts de PowerShell se pueden ejecutar normalmente
    • Todas las funciones están disponibles, pero puede haber riesgos de seguridad.

  • Los scripts de PowerShell se pueden ejecutar normalmente
  • Todas las funciones están disponibles, pero puede haber riesgos de seguridad.
  • Los scripts de PowerShell no se pueden ejecutar en el sistema
  • La seguridad ha sido mejorada, pero algunas funciones pueden ser limitadas
  • Los scripts de PowerShell se pueden ejecutar normalmente
  • Todas las funciones están disponibles, pero puede haber riesgos de seguridad.

Habilitar la ejecución de scripts de PowerShell

Para muchas tareas de administración del sistema, el Potencia Shell es una herramienta esencial. Sin embargo, de forma predeterminada, la ejecución de scripts de PowerShell puede estar deshabilitada en algunos sistemas por razones de seguridad. A continuación veremos cómo verificar y habilitar la ejecución de scripts de PowerShell.

Para comenzar, abra una ventana de PowerShell en modo administrador. Puede hacerlo buscando “PowerShell” en el menú Inicio, luego haciendo clic derecho y seleccionando “Ejecutar como administrador”.

Luego use el siguiente comando para verificar la política de ejecución actual:


Get-ExecutionPolicy

Los valores posibles son: Restringido, AllSigned, RemoteSigned, Sin restricciones, Bypass, Indefinido. Si el valor es “Restringido”, significa que la ejecución del script está deshabilitada.

Para habilitar la ejecución de scripts de PowerShell, utilice uno de los siguientes comandos según el nivel de seguridad que desee:

  • Todo firmado : permite ejecutar únicamente scripts firmados. Utilice el comando:
    Set-ExecutionPolicy AllSigned
  • Firmado remoto : Permite scripts locales sin firmar y scripts no locales si están firmados. Utilice el comando:
    Set-ExecutionPolicyRemoteSigned
  • Irrestricto : permite que se ejecuten todos los scripts, pero muestra una advertencia para los scripts descargados. Utilice el comando:
    Set-ExecutionPolicy sin restricciones
  • Derivación : Ningún proceso bloquea la ejecución de scripts. Utilice el comando:
    Omisión de Set-ExecutionPolicy

Por razones de seguridad, se recomienda evitar el uso de “Sin restricciones” o “Bypass” a menos que sea absolutamente necesario.

Finalmente, luego de aplicar la nueva política, puedes verificar la configuración nuevamente con:


Get-ExecutionPolicy

Esto le permite asegurarse de que la política esté configurada correctamente.

Habilitar la ejecución de script para el usuario actual

Si tiene dificultades para realizar una secuencia de comandos de PowerShell, es probable que la ejecución del script esté deshabilitada en su máquina. Este problema de seguridad se encuentra comúnmente, pero se puede resolver fácilmente cambiando el política de ejecución.

Para permitir que los scripts de PowerShell se ejecuten duranteusuario actual, sigue estos pasos:

Abre una ventana Potencia Shell con derechos de administrador. Puede hacerlo buscando “PowerShell” en el menú Inicio, haciendo clic derecho en Windows PowerShell y seleccionando “Ejecutar como administrador”.

Escriba el siguiente comando y presione Entrar:


Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

Este comando cambia la política de ejecución para el usuario actual al permitir la ejecución de scripts descargados de Internet, siempre que estén firmados por un editor confiable.

Se le pedirá que confirme esta acción. Escriba “Y” y presione Entrar para confirmar. Ahora puedes correr secuencias de comandos de PowerShell para’usuario actual.

Para verificar que la política ha sido modificada, use el siguiente comando:


Get-ExecutionPolicy-List

Este comando muestra una lista de políticas de ejecución aplicadas en diferentes niveles de alcance. Asegúrese de que la configuración Usuario actual se establece en Firmado remoto.

Con estos comandos, puede habilitar y verificar la ejecución de scripts de PowerShell para su usuario actual. Esto le permitirá hacer un uso completo de los scripts para automatizar tareas y administrar sus sistemas Windows.

Habilitar la ejecución de scripts en todo el sistema

Cuando intentas ejecutar un secuencia de comandos de PowerShell y recibe un mensaje de error que indica que la ejecución del script está deshabilitada, probablemente se deba a la política de ejecución desde PowerShell. Esta política se puede configurar para restringir la ejecución de scripts de varias maneras para proteger su sistema contra scripts maliciosos.

Para habilitar la ejecución de scripts de PowerShell, primero debe iniciar sesión en PowerShell como administrador. Para hacer esto, haga clic en el botón Comenzar, luego busca Potencia Shell. Haga clic derecho en WindowsPowerShell y seleccione Ejecutar como administrador.

Una vez que PowerShell esté abierto, puede verificar la política de ejecución actual ingresando el siguiente comando:


Get-ExecutionPolicy

Para modificar esta política y permitir la ejecución de scripts, debe utilizar el siguiente comando:


Set-ExecutionPolicyRemoteSigned

Este comando ajusta la política de ejecución para permitir scripts firmados descargados y cualquier script creado localmente. Una vez que ejecute este comando, aparecerá un mensaje para confirmar su elección. Tipo oh para y presione Entrada.

Para habilitar la ejecución de scripts para todo el sistema, debes usar la directiva Alcance específicamente de la siguiente manera:


Set-ExecutionPolicy RemoteSigned -Scope LocalMachine

Este comando ajusta la política de ejecución para todos los usuarios del sistema. Nuevamente, deberá confirmar este cambio escribiendo oh para y presionando Entrada.

También es posible definir niveles de política de ejecución más restrictivos o más permisivos según sus necesidades:

  • Restringido – No se permite la ejecución de scripts.
  • Todo firmado – Todos los scripts deben estar firmados por un editor de confianza.
  • Firmado remoto – Los scripts cargados deben estar firmados por un editor confiable.
  • Irrestricto – Los scripts se pueden ejecutar sin restricciones.

Con esta configuración, puede ajustar la seguridad de su entorno de PowerShell para satisfacer sus necesidades específicas y, al mismo tiempo, evitar errores causados ​​por restringir la ejecución de scripts.

  • Holger Schwichtenberg Windows Scripting. Automatisierte Systemadministration Mit Dem Windows Script Host Und Der Windows Powershell (2 Bände Im Schuber)
    Binding : Gebundene Ausgabe, Edition : 1, Label : Addison-Wesley Verlag, Publisher : Addison-Wesley Verlag, medium : Gebundene Ausgabe, numberOfPages : 1460, publicationDate : 2007-03-19, authors : Holger Schwichtenberg, languages : german, ISBN : 3827324238
  • Holger Schwichtenberg Windows Scripting Lernen - Von Windows Script Host Und Visual Basic Script Bis Zur Windows Powershell: Windows Script Host, Visual Basic Script, Windows Powershell (Net.Com)
    Binding : Taschenbuch, Edition : 1, Label : Addison-Wesley Verlag, Publisher : Addison-Wesley Verlag, medium : Taschenbuch, numberOfPages : 512, publicationDate : 2012-10-29, authors : Holger Schwichtenberg, languages : german, ISBN : 3827332052
  • Holger Schwichtenberg Windows Scripting Lernen. Von Windows Script Host Und Visual Basic Script Bis Zur Windows Powershell. Aktuell Zu Windows Vista.
    Binding : Broschiert, Edition : 3.Aufl., Label : Addison-Wesley Verlag, Publisher : Addison-Wesley Verlag, medium : Broschiert, numberOfPages : 463, publicationDate : 2007-06-01, authors : Holger Schwichtenberg, languages : german, ISBN : 3827324246
Avatar

Hervé

Comments

Leave a comment

Your comment will be revised by the site if needed.