Я использую две общедоступные подсети в двух зонах доступности, а затем две частные подсети в тех же зонах доступности. У меня есть эластичный балансировщик нагрузки, который перенаправляет трафик на мои экземпляры EC2 в частных подсетях.
У меня есть сервер-бастион в общедоступной подсети, и именно так я могу связаться с экземплярами в частных подсетях.
Я могу подключиться по SSH к серверу-бастиону, по SSH к серверам оттуда в частных подсетях, и на этих серверах я могу успешно запустить sudo yum update, мой балансировщик нагрузки может разговаривать с ними и т.д., НО я не могу git pull из Bitbucket (это просто зависает) ...
Я даже попытался обновить сетевой ACL в частных подсетях, чтобы разрешить весь трафик, но это тоже не сработало, поэтому проблема, похоже, не в сетевом ACL.
РЕДАКТИРОВАТЬ: я забыл упомянуть, что у меня настроены шлюзы NAT, и я могу делать запросы HTTP и HTTPS во внешний мир из моей частной подсети ...
РЕДАКТИРОВАТЬ (скриншоты таблиц маршрутов):
Приватный стол 1:
Приватный стол 2:
Публичный стол:
РЕДАКТИРОВАТЬ (сетевые ACL):
Частный входящий:
Частный исходящий:
Общедоступный входящий:
Общедоступный исходящий:
Есть идеи, почему я не могу git pull?
Что в твоем Частная подсеть Таблица маршрутов? Я сильно подозреваю, что у вас нет NAT-шлюз настроен и маршрут в Интернет настроен через NAT.
См. Здесь дополнительную информацию о том, зачем вам может понадобиться шлюз NAT для частных подсетей: Шлюз NAT для инстансов EC2
Надеюсь, это поможет :)
Основная проблема заключалась в том, что сетевой трафик выходил из частной подсети, а не в общую подсеть (откуда он должен был уходить в общедоступный Интернет). Мне пришлось обновить правила SSH в сетевом ACL в публичной подсети.