Implementación manual de Windows Admin Center en Azure para administrar varios servidores

En este artículo se describe cómo implementar manualmente Windows Admin Center en una máquina virtual de Azure para su uso en la administración de varias máquinas virtuales de Azure. Para administrar una sola máquina virtual, use en su lugar la funcionalidad de Windows Admin Center integrada en Azure Portal, como se describe en Uso de Windows Admin Center en Azure Portal.

Implementación mediante un script

Puede descargar Deploy-WACAzVM.ps1 que se ejecuta desde Azure Cloud Shell para configurar una puerta de enlace de Windows Admin Center en Azure. Este script puede crear todo el entorno, incluido el grupo de recursos.

Salto a los pasos de implementación manual

Requisitos previos

  • Configure su cuenta en Azure Cloud Shell. Si es la primera vez que usa Cloud Shell, se le pedirá que asocie o cree una cuenta de Azure Storage con Cloud Shell.
  • En Cloud Shell de PowerShell, vaya al directorio principal: PS Azure:\> cd ~.
  • Para cargar el archivo Deploy-WACAzVM.ps1, arrástrelo desde la máquina local y colóquelo en cualquier lugar de la ventana de Cloud Shell.

Si especifica su propio certificado:

  • Cargue el certificado en Azure Key Vault. En primer lugar, cree un almacén de claves en Azure Portal y cargue en él el certificado. Como alternativa, puede usar Azure Portal para generar un certificado automáticamente.

Parámetros de script

  • ResourceGroupName - [String] Especifica el nombre del grupo de recursos donde se creará la máquina virtual.

  • Name - [String] Especifica el nombre de la máquina virtual.

  • Credencial: [PSCredential] Especifica las credenciales de la máquina virtual.

  • MsiPath - [String] Especifica la ruta de acceso local de MSI de Windows Admin Center al implementar Windows Admin Center en una máquina virtual existente. Si se omite, el valor predeterminado es la versión de https://aka.ms/WACDownload.

  • VaultName : [String] Especifica el nombre del almacén de claves que contiene el certificado.

  • CertName - [String] Especifica el nombre del certificado que se va a usar para la instalación de MSI.

  • GenerateSslCert - [Switch] True si MSI debe generar un certificado SSL autofirmado.

  • PortNumber - [int] Especifica el número de puerto SSL para el servicio Windows Admin Center. Si se omite, el valor predeterminado es 443.

  • OpenPorts : [int[]] Especifica los puertos abiertos para la máquina virtual.

  • Location - [String] Especifica la ubicación de la máquina virtual.

  • Size - [String] Especifica el tamaño de la máquina virtual. Si se omite, el valor predeterminado es "Standard_DS1_v2".

  • Image - [String] Especifica la imagen de la máquina virtual. Si se omite, el valor predeterminado es "Win2016Datacenter".

  • VirtualNetworkName - [String] Especifica el nombre de la red virtual para la máquina virtual.

  • SubnetName - [String] Especifica el nombre de la subred de la máquina virtual.

  • SecurityGroupName - [String] Especifica el nombre del grupo de seguridad de la máquina virtual.

  • PublicIpAddressName - [String] Especifica el nombre de la dirección IP pública de la máquina virtual.

  • InstallWACOnly - [Switch] Se establece en True si WAC debe instalarse en una máquina virtual de Azure ya existente.

Hay dos opciones diferentes para que MSI implemente el certificado usado para su instalación. MSI se puede descargar desde aka.ms/WACDownload o, si se implementa en una máquina virtual existente, se puede proporcionar la ruta de acceso de archivo de un MSI localmente en la máquina virtual. El certificado se puede encontrar en Azure Key Vault o MSI generará uno autofirmado.

Ejemplos de script

En primer lugar, defina las variables comunes necesarias para los parámetros del script.

$ResourceGroupName = "wac-rg1"
$VirtualNetworkName = "wac-vnet"
$SecurityGroupName = "wac-nsg"
$SubnetName = "wac-subnet"
$VaultName = "wac-key-vault"
$CertName = "wac-cert"
$Location = "westus"
$PublicIpAddressName = "wac-public-ip"
$Size = "Standard_D4s_v3"
$Image = "Win2016Datacenter"
$Credential = Get-Credential

Ejemplo 1: Use el script para implementar la puerta de enlace WAC en una nueva máquina virtual en una nueva red virtual y un grupo de recursos. Use MSI de aka.ms/WACDownload y un certificado autofirmado de MSI.

$scriptParams = @{
    ResourceGroupName = $ResourceGroupName
    Name = "wac-vm1"
    Credential = $Credential
    VirtualNetworkName = $VirtualNetworkName
    SubnetName = $SubnetName
    GenerateSslCert = $true
}
./Deploy-WACAzVM.ps1 @scriptParams

Ejemplo 2: Igual que el 1, pero con un certificado de Azure Key Vault.

$scriptParams = @{
    ResourceGroupName = $ResourceGroupName
    Name = "wac-vm2"
    Credential = $Credential
    VirtualNetworkName = $VirtualNetworkName
    SubnetName = $SubnetName
    VaultName = $VaultName
    CertName = $CertName
}
./Deploy-WACAzVM.ps1 @scriptParams

Ejemplo 3: Uso de un MSI local en una máquina virtual existente para implementar WAC.

$MsiPath = "C:\Users\<username>\Downloads\WindowsAdminCenter<version>.msi"
$scriptParams = @{
    ResourceGroupName = $ResourceGroupName
    Name = "wac-vm3"
    Credential = $Credential
    MsiPath = $MsiPath
    InstallWACOnly = $true
    GenerateSslCert = $true
}
./Deploy-WACAzVM.ps1 @scriptParams

Requisitos para la máquina virtual que ejecuta la puerta de enlace de Windows Admin Center

El puerto 443 (HTTPS) debe estar abierto. Con las mismas variables definidas para el script, puede usar el código siguiente en Azure Cloud Shell para actualizar el grupo de seguridad de red:

$nsg = Get-AzNetworkSecurityGroup -Name $SecurityGroupName -ResourceGroupName $ResourceGroupName
$newNSG = Add-AzNetworkSecurityRuleConfig -NetworkSecurityGroup $nsg -Name ssl-rule -Description "Allow SSL" -Access Allow -Protocol Tcp -Direction Inbound -Priority 100 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 443
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $newNSG

Requisitos para las máquinas virtuales administradas de Azure

El puerto 5985 (WinRM a través de HTTP) debe estar abierto y tener un cliente de escucha activo. Puede usar el código siguiente en Azure Cloud Shell para actualizar los nodos administrados. $ResourceGroupName y $Name usan las mismas variables que el script de implementación, pero deberá usar el objeto $Credential específico de la máquina virtual que administra.

Enable-AzVMPSRemoting -ResourceGroupName $ResourceGroupName -Name $Name
Invoke-AzVMCommand -ResourceGroupName $ResourceGroupName -Name $Name -ScriptBlock {Set-NetFirewallRule -Name WINRM-HTTP-In-TCP-PUBLIC -RemoteAddress Any} -Credential $Credential
Invoke-AzVMCommand -ResourceGroupName $ResourceGroupName -Name $Name -ScriptBlock {winrm create winrm/config/Listener?Address=*+Transport=HTTP} -Credential $Credential

Implementación manual en una máquina virtual de Azure existente

Antes de instalar Windows Admin Center en la máquina virtual de puerta de enlace deseada, instale un certificado SSL para usar la comunicación HTTPS; también puede optar por usar un certificado autofirmado generado por Windows Admin Center. Sin embargo, si elige esta opción, al intentar conectarse desde un explorador recibirá una advertencia. Para omitir esta advertencia en Edge, haga clic en Detalles > Ir a la página web o, en Chrome, seleccione Avanzadas > Continuar a [página web]. Se recomienda usar solo certificados autofirmados para entornos de prueba.

Nota

Estas instrucciones son para la instalación en Windows Server con Experiencia de escritorio, no en una instalación de Server Core.

  1. Descargue Windows Admin Center en el equipo local.

  2. Establezca una conexión de Escritorio remoto a la máquina virtual y, luego, copie el MSI de la máquina local y péguelo en la máquina virtual.

  3. Haga doble clic en el MSI para comenzar la instalación y siga las instrucciones del asistente. Tenga en cuenta lo siguiente:

    • De forma predeterminada, el instalador usa el puerto recomendado 443 (HTTPS). Si quiere seleccionar otro puerto, tenga en cuenta que también debe abrir ese puerto en el firewall.

    • Si ya ha instalado un certificado SSL en la máquina virtual, asegúrese de seleccionar esa opción e introduzca la huella digital.

  4. Inicie el servicio Windows Admin Center (ejecute C:/Archivos de programa/Windows Admin Center/sme.exe).

Más información sobre la implementación de Windows Admin Center.

Configure la máquina virtual de puerta de enlace para habilitar el acceso mediante el puerto HTTPS:

  1. Vaya a la máquina virtual en Azure Portal y seleccione Redes.

  2. Seleccione Agregar regla de puerto de entrada y, en Servicio, elija HTTPS.

Nota

Si eligió un puerto distinto de 443, el predeterminado, elija Personalizado en Servicio y escriba el puerto que eligió en el paso 3 en Intervalos de puertos.

Acceso a una puerta de enlace de Windows Admin Center instalada en una máquina virtual de Azure

En este momento, debería poder acceder a Windows Admin Center desde un explorador moderno (Edge o Chrome) en el equipo local; para ello, vaya al nombre DNS de la máquina virtual de puerta de enlace.

Nota

Si seleccionó un puerto distinto de 443, puede acceder a Windows Admin Center; para ello, vaya a https://<nombre DNS de la máquina virtual>:<puerto personalizado>.

Al intentar acceder a Windows Admin Center, el explorador solicitará las credenciales para acceder a la máquina virtual en la que está instalado Windows Admin Center. Aquí deberá especificar las credenciales que se encuentran en el grupo Usuarios locales o Administradores locales de la máquina virtual.

Para agregar otras máquinas virtuales a la red virtual, ejecute el siguiente comando en PowerShell o en el símbolo del sistema de la máquina virtual de destino: winrm quickconfig para asegurarse de que WinRM se ejecuta en dicha máquina.

Si no ha unido a un dominio la máquina virtual de Azure, esta se comporta como un servidor en el grupo de trabajo, por lo que deberá asegurarse de usar Windows Admin Center en un grupo de trabajo.