En esta sección se describe el uso del comando de PowerShell para implementar Unified Access Gateway 2111 o una versión posterior en Amazon Web Services Elastic Compute Cloud (EC2) y los pasos para preparar el entorno de EC2 antes de crear cualquier instancia de Unified Access Gateway.
Requisitos para implementar Unified Access Gateway en Amazon AWS EC2
-
Cuenta de AWS con privilegios suficientes para implementar la instancia de EC2. Para obtener información más detallada, consulte la Documentación de Amazon AWS.
-
Asegúrese de permitir las siguientes directivas en los roles de IAM para que la implementación se realice correctamente.
s3:PutObject s3:PutObjectAcl s3:GetBucketLocation ec2:DescribeNetworkInterfaces ec2:ModifyNetworkInterfaceAttribute ec2:CreateNetworkInterface ec2:DescribeInstances ec2:RunInstances ec2:TerminateInstances ec2:DescribeSubnets ec2:DescribeSecurityGroups ec2:DescribeAddresses ec2:AssociateAddress ec2:DescribeRegions ec2:DescribeImages ec2:CreateTags
Sistemas operativos recomendados para ejecutar el script de implementación de PowerShell
En esta tabla se indican los sistemas operativos desde los que se puede ejecutar la implementación de Unified Access Gateway basada en PowerShell en Amazon AWS EC2. Esto no se refiere al sistema operativo del dispositivo Unified Access Gateway en sí.
| Sistema operativo | Versión de sistema operativo recomendada | Versión de PowerShell |
|---|---|---|
| Windows | 10 y 11 | 5 y 7 |
| Ubuntu | 20.04, 22.04, 24.04 | 7 |
Procedimiento
- Preparar el equipo cliente para PowerShell
- Configurar el perfil y la región de AWS en la máquina cliente
- Cargar la imagen de Unified Access Gateway con PowerShell
- Preparar un archivo INI para AWS
- Implementar Unified Access Gateway en Amazon AWS EC2
Paso 1. Preparar el equipo cliente para PowerShell
Instale AWSPowerShell en su máquina. Consulte Instalar AWS Tools para PowerShell en Windows.
- Abra la ventana de comandos de PowerShell con derechos administrativos.
- Ejecute estos comandos.
Windows Ubuntu Install-Module -Name AWSPowerShell -Force
Install-Package 7Zip4PowerShellInstall-Module -Name AWS.Tools.Common
Install-AWSToolsModule
AWS.Tools.EC2,AWS.Tools.S3 -CleanUp
Paso 2. Configurar el perfil y la región de AWS en la máquina cliente
- En la consola de AWS, cree una clave de acceso y obtenga el identificador de clave de acceso y la clave de acceso secreta. Establézcalos en el perfil.
- Ejecute este comando para almacenar las credenciales.
- Para almacenar las credenciales en un perfil
- Cuando las credenciales tienen un sessionToken
Set-AWSCredential -AccessKey <accesskey> -SecretKey <secretkey> -StoreAs <profile_name>Set-AWSCredential -AccessKey <accesskey> -SecretKey <secretkey> -sessionToken <sessionToken> -StoreAs <profile_name> - Ejecute este comando para inicializar el perfil.
- Establezca su región de AWS.
Nota: Puede utilizar el comando Get-AWSRegion para identificar la región que desea utilizar.Set-DefaultAWSRegion -Region us-west - Cree un bucket en Amazon S3 para almacenar imágenes de Unified Access Gateway
.vmdksi aún no existe ninguno. Para obtener más información, consulte Crear un bucket.
Por ejemplo, puede crear un bucket con el nombre "uag-images".$bucket="uag-images"
New-S3Bucket -BucketName $bucket -Region us-east-2 - Cree un rol de IAM en Amazon AWS llamado
vmimporty aplique una política el rol.$importPolicyDocument = @" { "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"vmie.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "sts:ExternalId":"vmimport" } } } ] } "@New-IAMRole -RoleName vmimport -AssumeRolePolicyDocument $importPolicyDocument $bucket="uag-images" $rolePolicyDocument = @" { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::$bucket", "arn:aws:s3:::$bucket/*" ] }, { "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] } "@Write-IAMRolePolicy -RoleName vmimport -PolicyName vmimport -PolicyDocument $rolePolicyDocument
- (Opcional) Prepare el entorno de red en EC2.
Nota: Estos pasos se pueden realizar desde la consola de administración de EC2 o con PowerShell. Solo se deben realizar una vez para preparar el entorno de EC2 para las implementaciones de Unified Access Gateway. Para ello, se necesita al menos una subred. Para implementaciones de Unified Access Gateway de varias NIC, cada NIC puede estar en la misma subred o en subredes diferentes. - (Opcional) Cree una subred. Para obtener más información, consulte Crear subredes.
- (Opcional) Cree un grupo de seguridad para cada tipo de NIC.
Un grupo de seguridad contiene un conjunto de reglas de firewall para restringir el acceso a los puertos TCP y UDP. Un grupo de seguridad se puede compartir entre varios dispositivos Unified Access Gateway. Por ejemplo, puede crear un grupo de seguridad denominado UAG-Internet para
eth0y asociarlo con la primera NIC automáticamente cuando se crea el dispositivo Unified Access Gateway.
Para el uso de Horizon, el primer (UAG-Internet) podría permitir los puertos TCP 80, 443, 8443, 4172 y los puertos UDP 443, 8443 y 4172 desde cualquier cliente. Si desea permitir el accesossha Unified Access Gateway, debe especificarsshEnabled=trueen la sección [General] de cada archivo.ini. Por lo general, SSH solo debe habilitarse para fines de prueba y no para una implementación de producción. También debe asegurarse de que el acceso asshen el puerto TCP 22 esté restringido en el grupo de seguridad a direcciones IP de origen individuales, de modo que no esté abierto a todos. Para obtener más información, consulte Crear un grupo de seguridad.
- Si se puede acceder directamente al dispositivo Unified Access Gateway desde Internet, cada NIC que requiera acceso también debe tener una dirección IP pública asociada, conocida como IP elástica. Para obtener más información, consulte Asignar una dirección IP elástica.
- Para cada NIC, determine el identificador de subred, el identificador del grupo de seguridad y el identificador de asignación de IP pública.
Si no especifica un identificador de grupo de seguridad para cualquier NIC, se utilizará el grupo de seguridad predeterminado.
Si no especifica un identificador de IP pública, no habrá una dirección IP pública para la NIC y no se podrá acceder directamente a ella desde Internet. Este podría ser el caso si se utiliza un equilibrador de carga frente a un grupo de dispositivos Unified Access Gateway.
Set-AWSCredential -ProfileName <profile_name>
Paso 3. Cargar la imagen de Unified Access Gateway con PowerShell
Descargue el archivo de imagen .ova de Unified Access Gateway del portal Customer Connect.
Opción 1: Utilizar el script integrado para crear automáticamente una nueva AMI. Vaya al Paso 4 para continuar.
Opción 2: Crear manualmente una nueva AMI mediante la imagen .vmdk.
-
Extraiga la imagen
.vmdkdel archivo.ova.Windows Ubuntu
Por ejemplo,expand-7zip ova-filename target-locationeuc-unified-access-gateway-x.y.0.0-12345678_OVF10.ovaes el archivo descargado, dondex-yes el número de versión y12345678es el número de compilación. Para extraer el archivo.vmdkenC:\temp, ejecute el siguiente comando:expand-7zip C:\uag\euc-unified-access-gateway-x.y.0.0-12345678_OVF10.ova C:\uag\
Por ejemplo,tar -xvf ova-filenametar -xvf euc-unified-access-gateway-x.y.0.0-12345678_OVF10.ova -
Cargue la imagen .
vmdkal bucket S3.$vmdkImage="euc-unified-access-gateway-x.y.0.0-12345678-system.vmdk" $bucket="uag-images" $region="us-east-2" $params = @{ "BucketName"=$bucket "File"="C:\uag\"+$vmdkImage "key"="/"+$vmdkImage "Region"=$region } Write-S3Object @params -
Importe la instantánea de EC2.
$params = @{ "DiskContainer_Format"="VMDK" "DiskContainer_S3Bucket"=$bucket "DiskContainer_S3Key"=$vmdkImage "Region"=$region } $impId=Import-EC2Snapshot @params -
Para realizar un seguimiento de la importación, ejecute periódicamente el siguiente comando para obtener el estado de progreso.
Nota: La importación tardará varios minutos.(Get-EC2ImportSnapshotTask -ImportTaskId ` $impId.ImportTaskId).SnapshotTaskDetail -
Cuando finalice, el siguiente comando debe mostrar SnapshotId.
(Get-EC2ImportSnapshotTask -ImportTaskId ` $impId.ImportTaskId).SnapshotTaskDetail.SnapshotId -
Registre la imagen como AMI (Amazon Machine Image).
$bdm=New-Object Amazon.EC2.Model.BlockDeviceMapping $bd=New-Object Amazon.EC2.Model.EbsBlockDevice $bd.SnapshotId=(Get-EC2ImportSnapshotTask ` -ImportTaskId $impId.ImportTaskId).SnapshotTaskDetail.SnapshotId $bd.DeleteOnTermination=$true $bdm.DeviceName="/dev/sda1" $bdm.Ebs=$bd $params = @{ "BlockDeviceMapping"=$bdm "RootDeviceName"="/dev/sda1" "Name"=$vmdkImage "Architecture"="x86_64" "VirtualizationType"="hvm" "EnaSupport"=$true } Register-EC2Image @params
En la consola de AWS, debería ver la imagen importada en Imágenes AMI de EC2.

Paso 4. Preparar un archivo INI para AWS
Ajustes de la sección [General]
Configure los ajustes necesarios en la sección [General]. Consulte Parámetros de implementación de PowerShell.
Ajustes adicionales de la sección [General] para ejecutar el script
| Ajuste | Descripción |
|---|---|
| source | Introduzca la ubicación del archivo ova de origen.
Ejemplo: C:\Users\User1\Downloads\ova\euc-unified-access-gateway-25.03.0.0-13143769531_OVF10.ova |
| vmdkExtractionDir | Introduzca la ubicación del archivo vmdk extraído. Si no especifica la ruta, el archivo vmdk se descargará en la ubicación donde reside el archivo ova. |
Ajustes de la sección [General] que no se utilizan
Para las implementaciones de AWS EC2, no se utilizan los siguientes ajustes de la sección [General].
diskModedsfoldernetInternetnetManagementNetworknetmask0,netmask1,netmask2netBackendNetworktargetip0,defaultGateway,netmask0,ipmode0v6ip0,v6ipprefix0,v6DefaultGateway
Ajustes de la sección [AmazonEC2]
| Valor | Ejemplo | Descripción |
|---|---|---|
s3Bucket | s3Bucket=uag-bucket | Introduzca el nombre del bucket S3 para almacenar la imagen .vmdk de Unified Access Gateway. |
amiId | amiId= |
La imagen de máquina de Amazon (AMI) de Unified Access Gateway.
|
credentialProfileName | credentialProfileName=MyUAGProfile | El nombre del perfil de credenciales que contiene el identificador de clave de acceso y la clave de acceso secreta. Debe configurarse en primer lugar. Si no se establece, la implementación intentará utilizar el perfil de credenciales predeterminado. |
instanceType | instanceType=c4.large | Tipo de instancia de AWS EC2. El valor predeterminado es c4.large. |
region | region=us-east-2 | El nombre de la región de AWS EC2.
Nota: Es un ajuste obligatorio. |
ipv6AddressCount0
ipv6AddressCount1
ipv6AddressCount2 | ipv6AddressCount0=1 | Recuento de direcciones IPv6 utilizadas por DHCP de EC2 para eth0, eth1 o eth2.
Este campo es opcional. Si se requiere IPv6 para cualquier NIC, el valor de este campo se puede establecer en 1.
Si no se especifica ningún valor, el valor predeterminado es 0 para cada NIC. |
privateIPAddress0
privateIPAddress1
privateIPAddress2 | privateIPAddress1= 172.31.7.222 |
Dirección IP fija opcional utilizada por DHCP de EC2 para eth0, eth1 o eth2. Normalmente, este valor no es necesario, pero se puede utilizar para establecer una dirección IP privada estática en lugar de una dinámica. |
publicIPId0
publicIPId1
publicIPId2 |
publicIPId0=eipalloc-027afa45f34984c87
|
Identificador de dirección IP pública elástica de AWS EC2 asociado con eth0, eth1 o eth2. Este ajuste es opcional para cada NIC. |
securityGroupId0
securityGroupId1
securityGroupId2 | securityGroupId0=sg-00877c33656609407 |
Identificador de grupo de seguridad de AWS EC2 asociado con eth0, eth1 o eth2. Varias instancias de Unified Access Gateway pueden utilizar el mismo grupo de seguridad.
Nota: Este ajuste es opcional. Si no se especifica esta opción, se utilizará el grupo de seguridad de EC2 predeterminado. |
subnetId0
subnetId1
subnetId2 | subnetId1=subnet-5c980935 |
Identificador de subred de AWS EC2 asociado con eth0, eth1 o eth2.
|
Ejemplo de definición de archivo INI
[General]
name=uag-auto-deployment
uagName=uag-auto-deployment
deploymentOption=onenic
sshEnabled=true
sshKeyAccessEnabled=true
sshPasswordAccessEnabled=true
allowedHostHeaderValues=ws1uag.uagad.com,userws1.uagad.com,encrypted.uagad.com,unencrypted.uagad.com,adminsaml.uagad.com,uagsaml.uagad.com,104.211.224.216
source=C:\Users\User1\Downloads\ova\euc-unified-access-gateway-25.03.0.0-13143769531_OVF10.ova
vmdkExtractionDir=C:\Users\User1\Downloads\ova\vmdk
[AmazonEC2]
s3Bucket=uag-bucket
# authentication
credentialProfileName=profile1
# type, region and image
instanceType=c5.2xlarge
instanceType=c4.large
region=us-east-2
amiId=
# eth0 settings
ipv6AddressCount0=0
subnetId0=subnet-04dfec81f4eeb7722
securityGroupId0=sg-0fb1c6059c7e3e1f2
publicIPId0=eipalloc-07a5b07b13ced2a45
Paso 5: Implementar Unified Access Gateway en Amazon AWS EC2
-
En Omnissa Customer Connect, vaya al archivo Unified Access Gateway (UAG) PowerShell Scripts y haga clic en DESCARGAR AHORA.
Se descargará el archivo zipuagdeploy-xx.xx.x.x-xxxxxxxxen su equipo local. -
Extraiga el contenido del archivo zip. Asegúrese de que los siguientes scripts de PowerShell estén disponibles en su máquina.
uagdeployec2.ps1yuagdeploy.psm1 -
Abra la ventana de PowerShell y ejecute el comando.
uagdeployec2.ps1 <file_name>.iniDonde
file_namees el nombre de su archivo INI.
4. Introduzca la contraseña del administrador. Para obtener más información sobre los requisitos de la contraseña del administrador y del usuario raíz, consulte Requisitos de contraseña.
Ahora podrá acceder a la interfaz de usuario del administrador de UAG mediante la dirección IP pública.

-
Para comprobar si se completó la implementación, inicie sesión en UAG mediante SSH y ejecute el comando:
tail /opt/omnissa/gateway/logs/admin.log -
Inicie sesión en la interfaz de usuario del administrador mediante
https://uag-ipoFQDN:9443/adminy configure los ajustes en función de sus requisitos.
Qué hacer a continuación
- Detenga la instancia de Unified Access Gateway.
- Borre el valor
userDatade la instancia actual de Unified Access Gateway mediante el siguiente comando:
edit-EC2InstanceAttribute -InstanceId i-12345678 -Attribute userData -Value "blank"
¿Le resultó útil esta página?