
Estoy pensando en bloquear una configuración de AWS existente. Por el momento, todo está dentro de una única VPC predeterminada (prueba, preparación, producción) y todo dentro de subredes públicas.
Mi plan es separar los 3 entornos en 3 VPC diferentes, utilizando subredes públicas y privadas.
También queremos restringir el acceso a los servidores, ya que actualmente tienen direcciones IP públicas y cualquiera puede acceder a ellas. Lo ideal sería hacer una lista blanca de IP; sin embargo, este es un equipo remoto y trabajan en todas partes, por lo que tengo que lidiar con IP dinámicas.
Mi plan es utilizar una instancia de OpenVPN y lograr que la gente se conecte a través de ella. Desde mi conocimiento extremadamente limitado (experiencia en ingeniería de software, experiencia en redes muy limitada), esto debería funcionar.
Mi pregunta es, tendremos 3 VPC y la instancia de VPN deberá residir en una de ellas. ¿Cuál es la mejor manera de permitir el acceso a las otras 2 VPC a través de la VPN? ¿Es ese el mejor enfoque (acceso directo) o debería tener una conexión VPN por VPC? Esto último parece excesivo, pero no estoy seguro.
Gracias.
Editar:¿O otra opción es tener una única VPC, pero aislar las pruebas, la preparación y la producción mediante subredes? Leí que algunas personas hacen esto, aunque no es lo ideal.
Respuesta1
La mejor opción es utilizar la VPN que AWS ya incluye en su configuración de VPC. Hablando de haber configurado ya lo que estás intentando hacer. Suponer que sus usuarios se conecten a una ubicación central, como una oficina o un centro de datos, es una opción. Si no es así, entonces funcionaría una versión ampliada de la configuración a continuación, agregando otra instancia de VPN para que las personas se conecten.
Si también necesita que las VPC se comuniquen entre sí, querrá configurar varias instancias de VPN, al menos una por VPC, preferiblemente más de una por redundancia, pero para hacerlo necesitaría otra instancia para controlar la conmutación por error y actualice las tablas de enrutamiento de AWS con la nueva ruta.
Opción 1:
Un servidor VPN central al que los usuarios pueden conectarse en AWS con túneles creados en él para enrutar el tráfico a sus otras VPC. Necesitaría otras instancias en VPC separadas para la creación del túnel VPN.
Opcion 2:
Un servidor VPN central al que los usuarios pueden conectarse en AWS. Una o más instancias de VPN por VPC configuradas con túneles para la conectividad con las otras VPC.
Opción 3:
Funcionalidad de AWS VPN a una oficina central o centro de datos donde se configura una VPN de usuario. Una o más instancias de VPN en AWS con túneles configurados para la conectividad entre VPC.
Lamentablemente, Amazon no tiene configuraciones para VPN entre VPC, por lo que en los casos en los que sugiero un túnel, por supuesto necesitarás un conjunto de instancias, al menos, para cada configuración de túnel.
Respuesta2
De hecho, creo que la respuesta se encuentra en esta AWS
documentación:Configuraciones con rutas a un bloque CIDR completo
Siguiendo esta configuración pude tener una única instancia de VPN ejecutándose
Agregue enrutamiento para la conexión de peering en la tabla de rutas asociada con la subred que tiene mi caja vpn, de la misma manera en la subred de la VPC emparejada donde residen las cajas a las que quiero acceder.
Pude ssh
entrar en esas cajas sin problemas.
Respuesta3
Siempre que todos los recursos (instancias EC2 y cualquier otro servicio como ElasticSearch o similares) estén en la misma región, puede hacerlo con Transit Gateways. Cree las 3 VPC (es posible que desee crearlas en cuentas separadas y unirlas mediante roles) y luego cree una única Transit Gateway. Conecte las 3 VPC al TG con archivos adjuntos de Transit Gateway individuales y luego adjunte una tabla de rutas a cada TGA. Cree una VPN (ya sea una puerta de enlace del cliente para un único dispositivo enrutador al que todos sus usuarios se conectan/ya están detrás; o un grupo de puntos finales de VPN del cliente) y luego use un archivo adjunto de puerta de enlace de tránsito para conectar esa VPN al TG también. Luego, asegúrese de que todas las rutas estén en las entradas de la tabla de enrutamiento TG y configure grupos de seguridad para sus reglas de firewall.
Sólo una nota: si tiene recursos en varias regiones (es decir, us-east1 y us-west1), esto no parece funcionar. De hecho, tengo una pregunta aquí para ver si es posible o no. Se supone que funciona con el peering, pero no parece funcionar.