Configure los componentes necesarios para ejecutarse CodeBuild en un servidor proxy - AWS CodeBuild

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configure los componentes necesarios para ejecutarse CodeBuild en un servidor proxy

Necesita estos componentes para ejecutarse AWS CodeBuild en un servidor proxy transparente o explícito:

  • VPCA.

  • Una subred pública en VPC su servidor proxy.

  • Una subred privada en su nombre. VPC CodeBuild

  • Una puerta de enlace a Internet que permite la comunicación entre Internet VPC e Internet.

En el siguiente diagrama, se muestran cómo interactúan los componentes.

El diagrama muestra cómo interactúan los componentes.

Configure unaVPC, subredes y una puerta de enlace de red

Los siguientes pasos son necesarios para ejecutarse AWS CodeBuild en un servidor proxy transparente o explícito.

  1. Crea unVPC. Para obtener más información, consulta Cómo crear un VPC en la Guía del VPC usuario de Amazon.

  2. Cree dos subredes en su. VPC Una será una subred pública llamada Public Subnet en la que se ejecutará el servidor proxy. La otra es una subred privada denominada Private Subnet en la que se CodeBuild ejecuta.

    Para obtener más información, consulte Crear una subred en su. VPC

  3. Cree y adjunte una puerta de enlace de Internet a su. VPC Para obtener más información, consulte Creación y asociación de una gateway de Internet.

  4. Agregue una regla a la tabla de rutas predeterminada que dirija el tráfico saliente desde la VPC (0.0.0.0/0) a la puerta de enlace de Internet. Para obtener más información, consulte Adición y eliminación de rutas de una tabla de enrutamiento.

  5. Agregue una regla a su grupo de seguridad predeterminado VPC que permita la entrada de SSH tráfico (TCP22) desde su (0.0.0.0/0). VPC

  6. Siga las instrucciones de Lanzamiento de una instancia mediante el asistente de lanzamiento de instancias de la Guía del EC2 usuario de Amazon para lanzar una instancia de Amazon Linux. Cuando el asistente esté en ejecución, seleccione las siguientes opciones:

    • En Elegir un tipo de instancia, elija una Amazon Machine Image (AMI) de Amazon Linux.

    • En Subnet (Subred), seleccione la subred pública que creó anteriormente en este tema. Si utilizó el nombre recomendado, se llamará Public Subnet (Subred pública).

    • En Auto-assign Public IP (IP de asignación automática), elija Enable (Habilitar).

    • En la página Configure Security Group (Configurar grupo de seguridad), en Assign a security group (Asignar un grupo de seguridad), seleccione Select an existing security group (Seleccionar un grupo de seguridad existente). A continuación, seleccione el grupo de seguridad predeterminado.

    • Cuando haga clic en Launch (Lanzar), seleccione un par de claves existente o cree uno.

    Seleccione la configuración predeterminada de todas las demás opciones.

  7. Una vez que la EC2 instancia esté en ejecución, deshabilite las comprobaciones de origen y destino. Para obtener más información, consulta Cómo deshabilitar las comprobaciones de origen y destino en la Guía del usuario de Amazon VPC.

  8. Cree una tabla de rutas en su. VPC Agregue una regla a la tabla de enrutamiento que direccione el tráfico destinado a Internet al servidor proxy. Asocie esta tabla de enrutamiento con la subred privada. Esto es necesario para que las solicitudes salientes de las instancias de tu subred privada, donde CodeBuild se ejecuta, siempre se enruten a través del servidor proxy.

Instalación y configuración de un servidor proxy

Existen muchos servidores proxy entre los que elegir. Aquí se utiliza un servidor proxy de código abierto, Squid, para demostrar cómo se AWS CodeBuild ejecuta en un servidor proxy. Puede emplear estos mismos conceptos con otros servidores proxy.

Para instalar Squid, utilice un repositorio yum ejecutando los siguientes comandos:

sudo yum update -y sudo yum install -y squid

Después de instalar Squid, edite el archivo squid.conf siguiendo las instrucciones que se indican más adelante en este tema.

Configura Squid para el tráfico HTTPS

En este HTTPS caso, el HTTP tráfico se encapsula en una conexión de Transport Layer Security (TLS). Squid utiliza una función llamada SslPeekAndSplicepara recuperar la indicación del nombre del servidor (SNI) desde el TLS inicio que contiene el servidor de Internet solicitado. Esto es obligatorio para que Squid no necesite descifrar HTTPS el tráfico. Para habilitarlo SslPeekAndSplice, Squid necesita un certificado. Cree este certificado mediante OpenSSL:

sudo mkdir /etc/squid/ssl cd /etc/squid/ssl sudo openssl genrsa -out squid.key 2048 sudo openssl req -new -key squid.key -out squid.csr -subj "/C=XX/ST=XX/L=squid/O=squid/CN=squid" sudo openssl x509 -req -days 3650 -in squid.csr -signkey squid.key -out squid.crt sudo cat squid.key squid.crt | sudo tee squid.pem
nota

ParaHTTP, Squid no requiere configuración. De todos los mensajes de solicitud de HTTP /1.1, puede recuperar el campo de encabezado del host, que especifica el host de Internet que se está solicitando.