Conceptos avanzados

Creación de una imagen de máquina de Amazon (AMI) VPX en SC2S

Colaboradores

Autor: Jill Fetscher, Arquitecto

SC2S es una instancia de AWS aislada (air-gapped) sin acceso a un AWS Marketplace. Todas las imágenes de máquina de Amazon (AMI) deben cargarse manualmente en el entorno utilizando la herramienta vmimport. Debido a la naturaleza del dispositivo Citrix ADC VPX, el archivo de imagen es demasiado grande para usar la herramienta vmimport. La AMI VPX debe crearse de forma que sea arrancable para uso futuro. Hemos creado el siguiente método específicamente para SC2S, pero puede utilizarse para futuros casos de uso de esta naturaleza, donde no exista un Marketplace, o no haya una oferta de AMI VPX disponible en el Marketplace.

Crear una VPX en SC2S: Pasos en el entorno comercial (AWS comercial)

  1. Cree una VPC y una subred en UC2S (comercial) utilizando el mismo bloque CIDR que la VPC donde reside el Citrix ADC en SC2S. (por ejemplo, cree una VPC de tamaño 10.0.0.0/16, con una única subred pública de tamaño 10.0.0.0/24 utilizando el Asistente de VPC.)

    Esto se puede hacer de dos maneras:

    • Cree una VPC de prueba en SC2S con el CIDR y el subredes básicos
    • Copie el CIDR y el subredes que se utilizan en SC2S

    Nota:

    Para C2S, la creación de VPC se realiza a través de un servicio y se asigna automáticamente un espacio IP de la superred. En este caso, el segundo método es necesario. Para GovCloud, espere más instrucciones, o descargue la última versión de VPX desde el Marketplace.

    imagen del panel de VPC

    imagen del asistente de configuración de VPC, paso 1

    imagen del asistente de VPC, paso 2

  2. Implemente una instancia EC2 desde la AMI de Citrix ADC en AWS Marketplace. La instancia debe tener licencia de cliente. Utilice una instancia no basada en Nitro (por ejemplo, m4.xlarge).

    imagen del paso 1, elegir AMI

    imagen del paso 2, elegir tipo de instancia

    Elija la VPC que creó en los pasos anteriores. Deshabilite Asignar IP pública automáticamente. imagen del paso 3, configurar detalles de la instancia

    Asigne a la instancia un nombre fácilmente reconocible. Crearemos muchas instancias en los siguientes pasos y es necesario identificar cada instancia para su posterior configuración.

    El grupo de seguridad se rellena automáticamente. Haga clic en Siguiente para el resto de los pasos para el lanzamiento de la instancia.

    imagen del asistente

  3. Cree un host bastión base de Windows Server 2019 o 2016 para acceder a su instancia VPX.

    Esta instancia puede ser un m4.xlarge, y debe construirse en la misma VPC y AZ que el Citrix ADC, con una IP pública asignada automáticamente. El volumen raíz requiere un mínimo de 45 GiB, SSD de propósito general (gp2).

    Nota:

    Si el entorno permite la creación de IP elásticas (EIP), puede omitir la creación del host bastión, y la instancia VPX se puede conectar directamente desde la red o Internet. Recomendamos el uso de un host bastión por motivos de seguridad y la falta de disponibilidad de EIP en entornos aislados.

    imagen del paso 1, elegir AMI

    Asigne a la instancia un nombre reconocible (por ejemplo, SC2S: WS2016 Bastion Low).

    imagen del paso 5, añadir etiquetas

    Para simplificar, cree un grupo de seguridad que permita Todo el tráfico. Puede restringir este grupo de seguridad más adelante.

    imagen del paso 6, configurar grupo de seguridad

    Una vez que la instancia esté lista, acceda a la máquina mediante RDP utilizando la IP pública. Luego, descargue PuTTY y WinSCP, y copie el par de claves que se utilizó para crear la instancia VPX. Esto requiere la conversión del archivo .pem a .ppk, utilizando PuTTYgen. En el Administrador del servidor, deshabilite el Firewall de Windows y la Seguridad mejorada de Internet Explorer. Con PuTTY, verifique que puede acceder por SSH al nuevo dispositivo Citrix ADC implementado. Anote la contraseña nsroot de la instancia. Por defecto, esta es la InstanceID de AWS. Anote la IP privada de la instancia, ya que será necesaria en un paso posterior. En esta etapa, ya tiene un dispositivo Citrix ADC en funcionamiento.

    Nota:

    ¡No configure este VPX! Simplemente inicie sesión como nsroot para verificar la funcionalidad.

  4. Apague la instancia de Citrix ADC desde la consola de AWS. Desvincule el volumen raíz de EBS de la instancia de Citrix ADC.

    nueva imagen de EC2

    Para desvincular el volumen raíz, haga clic en el dispositivo raíz /dev/sda1 y, a continuación, haga clic en el ID del volumen. En la pestaña Volumen, seleccione el volumen, asígnele un nombre reconocible (por ejemplo, SC2S: Commercial Root Vol) y anote el ID del volumen. Haga clic en Acciones > Desvincular volumen > Aceptar. El estado del volumen ahora debería ser Disponible.

    imagen de detalles de la instancia

  5. Implemente una nueva instancia de Amazon Linux EC2 (Amazon Linux 2 AMI (HVM), tipo de volumen SSD, 64 bits, con respaldo EBS, habilitada para ENA). Esta instancia debe ser del mismo tipo de instancia que la instancia VPX implementada anteriormente (por ejemplo, m4.xlarge), y debe estar en la misma VPC y subred, con la configuración “Asignar IP pública automáticamente” deshabilitada. Asigne a la instancia un nombre reconocible (por ejemplo, SC2S: Linux Low). Configure el Grupo de seguridad para permitir todo el tráfico por ahora. Una vez que la instancia se inicie, apáguela.

    imagen de añadir etiquetas

  6. Adjunte el volumen raíz de EBS desvinculado del VPX a la instancia de Linux EC2.

    nueva imagen de EC2

    Elija la instancia de Linux que creó haciendo clic en Instancia > Adjuntar.

    imagen de adjuntar volumen

  7. Cree un volumen con una capacidad superior a la del volumen raíz de VPX. La capacidad del volumen raíz de VPX es de 30 GiB. Cree el volumen con una capacidad de 35 GiB. Establezca el tipo de volumen en SSD de uso general (gp2) y asígnele un nombre reconocible (por ejemplo, SC2S: Copy Low Vol). Adjunte el nuevo volumen a la instancia de Linux.

    crear y adjuntar volúmenes

    crear y adjuntar volúmenes

    crear y adjuntar volúmenes

  8. Encienda la instancia de Linux y conéctese a ella por SSH desde el host bastión usando el archivo de clave privada. Inicie sesión como ec2-user*.

  9. Cree una partición en el NUEVO volumen EBS.

    Nota:

    En este ejemplo, el volumen raíz de VPX SC2S: Commercial Root Vol es /dev/sdf y el volumen de 35 GiB recién creado SC2S: Copy Low Vol es /dev/sdg. La partición debe crearse solo en SC2S: Copy Low Vol. En la consola de AWS, estos dispositivos de bloque se denotan mediante enlaces simbólicos. En la instancia de Linux, /dev/sdf y /dev/sdg se denominan /dev/xvdf y /dev/xvdg, respectivamente.

    En la CLI de Linux, verifique que no haya ningún sistema de archivos. La respuesta debe ser solo data.

    sudo file –s /dev/xvdg
    <!--NeedCopy-->
    

    Cree un sistema de archivos.

    sudo mkfs -t xfs /dev/xvdg
    <!--NeedCopy-->
    

    Cree un punto de montaje y monte el dispositivo.

    sudo mkdir /copy
    <!--NeedCopy-->
    
    sudo mount  /dev/svdg /copy
    <!--NeedCopy-->
    

    Verifique que el dispositivo se haya montado, y que haya tres dispositivos (por ejemplo, xvda, xvdf y xvdg).

    lsblk
    <!--NeedCopy-->
    

    Cree la partición usando fdisk, eligiendo n para nuevo, p para partición primaria, 1 para el número de partición, y los valores predeterminados para el primer y último sector (INTRO, INTRO). Presione CTRL+C para salir.

    sudo fdisk /dev/xvdg
    >n
    >p
    >1
    >enter
    >enter
    >CTRL+C
    <!--NeedCopy-->
    
  10. Copie el volumen raíz de VPX al nuevo volumen EBS a nivel de bloque (por ejemplo, copie SC2S: Commercial Root Vol a SC2S: Copy Low Vol). El archivo creado aquí, citrixADC.img, se puede mover luego al entorno SC2S.

    sudo dd if=/dev/xvdf of=/copy/citrixADC.img status=progress
    <!--NeedCopy-->
    

    Esta copia puede tardar varias horas.

    Una vez completada la copia del archivo, verifique que el archivo esté en el directorio /copy, y cambie los permisos del archivo para permitir lectura, escritura y ejecución.

    ls /copy
    sudo chmod 777 /copy/citrixADC.img
    <!--NeedCopy-->
    
  11. Use WinSCP para transferir el archivo citrixADC.img a una ubicación donde pueda ser DTO’ed a la parte superior. Si es necesario, el bastión es lo suficientemente grande como para copiar el archivo de imagen.

Crear un VPX en SC2S - Pasos en el lado de alta seguridad

  1. Cree una VPC con el mismo bloque CIDR y subred que en el paso 1 para el lado de baja seguridad, o utilice la VPC existente. En este ejemplo, el CIDR de la VPC es 10.0.0.0/16 y el espacio IP de la subred es 10.0.0.0/16. Esto es extremadamente importante, porque el VPX final que se crea debe tener la misma IP que el original del Marketplace comercial.

    marcador de posición de imagen

  2. En la nueva VPC y subred, inicie una instancia de Amazon Linux (Amazon Linux 2 AMI (HVM), tipo de volumen SSD, con respaldo EBS, ENA-Enabled, 64 bits) del MISMO tipo de instancia que la instancia de Citrix ADC implementada en el lado de baja seguridad (por ejemplo, m4.xlarge). Asigne un nombre reconocible a la instancia (por ejemplo, SC2S: Linux High). Cuando la instancia esté lista, apáguela.

    marcador de posición de imagen

  3. Agregue dos volúmenes EBS con una capacidad superior al tamaño del archivo transferido (por ejemplo, 35 GiB). Estos volúmenes deben ser del mismo tipo SSD (gp2) que el creado en el lado de baja seguridad.
    1. El primer volumen es para la copia del lado de baja seguridad. Asigne un nombre reconocible al volumen (por ejemplo, “SC2S: Copy High Vol”). Adjunte este volumen a la nueva instancia de Linux en SC2S como /dev/sdf. Este es el enlace simbólico para /dev/xvdf en la instancia.

    marcador de posición de imagen

    1. El segundo volumen se convierte en el volumen raíz para el nuevo VPX. Asigne un nombre reconocible al volumen (por ejemplo, “SC2S: Final VPX Vol”). Adjunte este volumen a la nueva instancia de Linux en SC2S como /dev/sdg. Este es el enlace simbólico para /dev/xvdg en la instancia.

    marcador de posición de imagen

    La instancia ahora tiene tres dispositivos de bloque adjuntos, incluido el dispositivo raíz. Encienda la instancia.

    marcador de posición de imagen

  4. Cree un host bastión base de Windows Server 2019 o 2016 de alta seguridad de la misma manera que el bastión de baja seguridad. Esta instancia debe estar en la VPC y subred recién creadas, y debe tener al menos 45 GiB para transferencias de archivos. Establezca “Asignar IP pública automáticamente” en habilitado. Asigne un nombre reconocible a la instancia (por ejemplo, “SC2S: WS2016 Bastion_High”) y configure el Grupo de seguridad para permitir “Todo el tráfico” por ahora.

  5. Una vez que el host bastión esté listo, acceda a la máquina mediante RDP utilizando la IP pública, descargue PuTTY y WinSCP, y copie el par de claves que se utilizó para crear la instancia VPX. Esto requiere la conversión del archivo .pem a .ppk, utilizando PuTTYgen. En el Administrador del servidor, deshabilite el Firewall de Windows y la Seguridad mejorada de Internet Explorer por ahora.

  6. Copie el archivo citrixADC.img en el nuevo host bastión.

  7. Inicie una sesión PuTTY en la nueva instancia de Linux (por ejemplo, “SC2S: Linux High”) desde el host bastión, utilizando la clave privada de AWS con el nombre de usuario ec2-user.

  8. Utilice lsblk para verificar que todos los dispositivos estén presentes en la instancia.

    marcador de posición de imagen

  9. Verifique que el dispositivo /dev/xvdf no tenga un sistema de archivos y, a continuación, cree uno.

    Nota:

    NO cree un sistema de archivos en el dispositivo /dev/xvdg.

    sudo file –s /dev/xvdf
    sudo mkfs –t xfs /dev/xvdf
    <!--NeedCopy-->
    

    marcador de posición de imagen

  10. Cree un punto de montaje para el dispositivo, monte el dispositivo y verifique que el punto de montaje del volumen sea /copy.

    sudo mkdir /copy
    sudo mount /dev/xvdf /copy
    lsblk
    <!--NeedCopy-->
    

    marcador de posición de imagen

  11. Cree una partición utilizando fdisk.

    sudo fdisk /dev/xvdf
     >n
     >p
     >1
     >enter
     >enter
     >CTRL+C
    <!--NeedCopy-->
    

    marcador de posición de imagen

  12. Cambie los permisos del directorio /copy.

    sudo chmod 777 /copy
    <!--NeedCopy-->
    

    marcador de posición de imagen

  13. Utilizando WinSCP en el host bastión, conéctese a la instancia de Linux. Copie el archivo citrixADC.img al directorio /copy. Una vez copiado el archivo, cambie los permisos para permitir la lectura, escritura y ejecución para todos desde la consola de WinSCP.

  14. En la CLI de Linux, copie el archivo de imagen al dispositivo /dev/xvdg utilizando el siguiente comando:

    sudo dd if=/copy/citrixADC.img of=/dev/xvdg status=progress
    <!--NeedCopy-->
    

    marcador de posición de imagen

  15. Una vez completada la copia, ejecute el comando lsblk para verificar que las particiones de Citrix ADC se muestran en el dispositivo /dev/xvdg.

    lsblk
    <!--NeedCopy-->
    

    marcador de posición de imagen

  16. Apague la instancia de Linux y desvincule el volumen /dev/xvdg (/dev/sdg) (por ejemplo, «SC2S: Final VPX Vol»).

    marcador de posición de imagen

    marcador de posición de imagen

  17. Implemente una nueva instancia de Linux del MISMO tipo de instancia EXACTO que el VPX en el lado bajo, en la misma VPC y subred que se creó en el lado alto (Amazon Linux 2 AMI (HVM), tipo de volumen SSD, con respaldo EBS, habilitado para ENA, 64 bits, m4.xlarge, Grupo de seguridad configurado para permitir «Todo el tráfico»). Durante la configuración, establezca la IP IGUAL que la del VPX en el lado bajo, que se indicó en la sección anterior de este documento. Una vez que la instancia esté lista, apáguela.

    marcador de posición de imagen

  18. Desvincule el volumen raíz de la instancia de Linux recién implementada y vincule el volumen desvinculado (por ejemplo, «SC2S: Final VPX Vol»). Durante la vinculación, especifique el dispositivo como el volumen raíz (es decir, /dev/xvda).

    marcador de posición de imagen

  19. Encienda la instancia. Usando el host bastión del lado alto, conéctese por PuTTY/SSH a la instancia para verificar la funcionalidad del VPX. Inicie sesión como nsroot con la contraseña de ID de instancia indicada en la sección anterior de este documento, y ejecute un comando simple.

    sh version
    <!--NeedCopy-->
    

    marcador de posición de imagen

Creación de una AMI a partir de la instancia VPX lanzada

  1. Inicie sesión en la instancia de Citrix ADC. Acceda a la shell para realizar las modificaciones necesarias como root.

    shell
    <!--NeedCopy-->
    

    marcador de posición de imagen

  2. Elimine de forma forzada y recursiva los siguientes directorios y archivos del software ADC manualmente. Para eliminar los archivos y directorios manualmente, añada rm –rf delante de cada uno. ‘/nsconfig/ns.conf’ ‘/nsconfig/ssh/’ ‘/nsconfig/ssl/’ ‘/nsconfig/aws_bootstrap’ ‘/nsconfig/rainman.conf’ ‘/var/nslog’ ‘/var/log/messages’ ‘/var/log/.log’ ‘/var/core/’ ‘/nsconfig/.AWS/’ ‘/var/db’ ‘/etc/resolv.conf’ ‘/flash/BUILD’ ‘/mpsconfig/pgxl/.ssh/id_rsa.pub’ ‘/var/pubkey/nsroot/.ssh/authorized_keys’ ‘/var/pubkey/root/.ssh/authorized_keys’

    marcador de posición de imagen: rm -rf

    o ejecute este script:

    #!/bin/sh -x
    rm -rf    /nsconfig/ns.conf*
    rm -rf    /nsconfig/ssh/*
    rm -rf    /nsconfig/ssl/*
    rm -rf    /nsconfig/aws_bootstrap
    rm -rf    /nsconfig/rainman.conf
    rm -rf    /var/nslog
    rm -rf    /var/log/messages*
    rm -rf    /var/log/*.log
    rm -rf    /var/core/*
    rm -rf    /nsconfig/.AWS/
    rm -rf    /var/db
    rm -rf    /etc/resolv.conf
    rm -rf    /flash/BUILD
    rm -rf    /mpsconfig/pgxl/.ssh/id_rsa.pub
    rm -rf    /var/pubkey/nsroot/.ssh/authorized_keys
    rm -rf    /var/pubkey/root/.ssh/authorized_keys
    <!--NeedCopy-->
    
  3. Cambie los permisos del directorio /flash/nsconfig a 755.

    chmod 755 /flash/nsconfig
    <!--NeedCopy-->
    

    marcador de posición de imagen

  4. Verifique que no queden claves residuales. Si las hay, elimínelas de forma forzada y recursiva.

    find / -type f -name “authorized*”
    rm -rf <filename>
    <!--NeedCopy-->
    

    marcador de posición de imagen

  5. Verifique que no existan licencias residuales en /nsconfig/license. Si las hay, elimínelas de forma forzada y recursiva.

    Nota:

    Habrá otros directorios y archivos en esta carpeta (por ejemplo, SSL y XML), solo elimine los archivos de licencia si están presentes.

    ls /nsconfig/license
    ls /nsconfig/license/ssl
    ls /nsconfig/license/xml
    <!--NeedCopy-->
    

    marcador de posición de imagen

  6. Apague la máquina desde la consola de AWS. Una vez que la instancia se haya detenido, cree una AMI a partir de la instancia.

    marcador de posición de imagen

    Asigne a la instancia un nombre reconocible para TODOS, ya que se comparte públicamente con todos los administradores de SC2S (por ejemplo, “Citrix ADC VPX 13.0–47.24”)

    marcador de posición de imagen

  7. Una vez que la AMI esté lista, implemente una instancia a partir de ella para verificar la funcionalidad.

    marcador de posición de imagen

  8. Establezca los permisos de la AMI en Public, para que esté disponible para todos los administradores de SC2S.

Para actualizar a una nueva versión

  • Para los Citrix ADC VPX existentes en SC2S: Actualice el VPX utilizando el software de actualización disponible en https://citrix.com/downloads, transfiera el archivo al lado de alta seguridad. Siga las instrucciones de Actualizar un dispositivo Citrix ADC independiente para la instalación. El método de actualización recomendado es usar la línea de comandos.

  • Para los nuevos Citrix ADC VPX en SC2S: Cree una AMI para compartir públicamente. Inicie una instancia desde la AMI existente, actualice la máquina como se indica en la sección anterior y realice los pasos de la sección “Creación de una AMI a partir de la instancia VPX iniciada” en este documento.

Creación de una imagen de máquina de Amazon (AMI) VPX en SC2S