es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Conéctese a AWS EC2 a través de SSH desde GitLab Runner sin permitir acceso desde cualquier ubicación.

Tengo un pipeline de implementación en GitLab para implementar una aplicación de node.js en una instancia de AWS EC2. Todo funciona bien, porque configuré el grupo de seguridad de EC2 para ser accesible a través de SSH desde cualquier lugar. Cuando desactivo la regla de “acceso desde cualquier lugar”, GitLab obviamente ya no puede hacer ssh en la instancia de EC2.

Pero no quiero tener un grupo de seguridad completamente abierto. ¿Existe alguna solución para esto sin configurar un GitLab Runner en AWS mismo?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una solución a esto sin configurar un GitLab Runner en AWS. Una forma de lograr esto es utilizando un host bastión, también conocido como servidor de salto, que actúa como intermediario entre la tubería de CI/CD de GitLab y la instancia de EC2.

    Para configurar un host bastión, deberás crear una nueva instancia de EC2 y configurarla para permitir el acceso SSH. Una vez que tengas el host bastión en funcionamiento, puedes configurar el grupo de seguridad en la instancia de EC2 que ejecuta la aplicación node.js para permitir solo tráfico entrante del host bastión.

    Luego, en tu tubería de CI/CD de GitLab, puedes usar el reenvío de SSH para tunelizar la conexión SSH a través del host bastión. Esto se puede hacer agregando la opción -o "ProxyCommand ssh user@bastion_host nc %h %p" a tu comando SSH en la tubería.

    Con esta configuración, tu instancia de EC2 ya no es accesible directamente desde internet, pero aún se puede acceder de forma segura a través del host bastión. Esto ayuda a mejorar tu postura de seguridad sin sacrificar la comodidad de una tubería de CI/CD de GitLab.

Comments are closed.