Solucionar el problema de que el menú Inicio deje de responder en Windows Server en RDS

En algunos servidores Windows de un entorno RDS, el menú Inicio puede dejar de funcionar: resulta imposible abrirlo, no responden los clics e impide que los usuarios realicen sus tareas diarias. Este problema a veces afecta a toda la granja de servidores RDS y persiste incluso después de reiniciar el servidor o instalar actualizaciones.

La causa suele estar relacionada con la corrupción o la acumulación excesiva de reglas de firewall en el registro de Windows, lo que impide que el proceso StartMenuExperienceHost funcione correctamente. Afortunadamente, existe una solución sencilla y eficaz para corregir este error y restaurar inmediatamente el menú Inicio para todos los usuarios.

Identificar el problema

En pocas palabras, cuando pulsas el botón de Inicio, no pasa nada.

Abra el editor del registro y compruebe las siguientes claves:

  • HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules
  • HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System
  • HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\AppIso\FirewallRule

Como puede ver, cada clave contiene varios miles de cadenas de valores que corresponden a reglas del firewall de Windows.

Claves de registro de copia de seguridad

Avant de nettoyer le registre, on va sauvegarder les données pour deux raisons :

  • Restaure los datos si esto no resuelve el problema o si genera otros comportamientos indeseables.
  • Analiza los valores para averiguar por qué hay tantas reglas de firewall.

Cómo crear una carpeta de copia de seguridad en la raíz de la unidad C.

Comience creando una carpeta de copia de seguridad en la raíz de la unidad C.

Introduzca el siguiente comando para realizar la copia de seguridad:

reg export "HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy" C:\Backup\FirewallPolicy.reg

Esperando a que se complete el guardado; ¡a mí me tardó casi una hora!

Como puedes ver a continuación, mi archivo de copia de seguridad pesa 430 MB, lo cual empieza a ser mucho para un texto.

Eliminar claves de registro

Ahora procederemos a eliminar las claves del registro; introduzca los siguientes comandos:

reg delete HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\AppIso\FirewallRules /va /f

Aquí también tendrás que esperar unas cuantas decenas de minutos…

Una vez eliminadas las claves, debería poder acceder de nuevo al menú Inicio sin necesidad de reiniciar el servidor.

Diagnosticar la causa

Para comprender por qué se crean valores en el registro, abra el archivo de copia de seguridad y analice los valores para ver el motivo.

Este paso será específico para cada entorno.

Configura Windows para que elimine las reglas cuando el usuario cierre sesión.

Es posible eliminar automáticamente las reglas cuando el usuario cierra sesión agregando la siguiente clave de registro:

# Remove firewall rules users at logoff
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy" -Type DWord -Name DeleteUserAppContainersOnLogoff -Value 1 -ErrorAction SilentlyContinue

Automatizar la limpieza

Si no puede identificar la causa y no desea volver a experimentar este bloqueo, es posible crear una tarea programada que se ejecute al inicio y limpie el registro.

Para ello, cree una tarea programada que ejecute un script de PowerShell que contenga las 3 líneas anteriores.

Romain Drouche
Arquitecto de sistemas | MCSE: Infraestructura básica
Experto en infraestructura de TI con más de 15 años de experiencia en el sector. Actualmente, como Gerente de Proyectos de Sistemas y Redes y experto en Seguridad de Sistemas de Información (ISS), utilizo mi experiencia para garantizar la fiabilidad y seguridad de los entornos tecnológicos.

Deja un comentario