2016-06-08 1 views
1

Я не очень хорошо знаком с сетью, но вот моя проблема: мне нужно подключиться к MySQL-серверу из функции AWMS лямбда-функции, которая находится за брандмауэром, а к «белой» моей AWS-лямбде мне нужно знать, какой IP-адрес она использует ,какой ip AWS лямбда функция используется?

Как я понимаю, он варьируется в зависимости от подсети VPC. Правильно ли, что если моя подсеть CIDR VPC равна 172.31.16.0/20, IP может варьироваться от 172.31.16.0 до 172.31.16.254?

+0

Не используйте IP-адрес, используйте группы безопасности. https://aws.amazon.com/blogs/aws/new-access-resources-in-a-vpc-from-your-lambda-functions/ – ceejayoz

+1

Планируете ли вы использовать AWS RDS или MYSQL Server для экземпляра EC2? – error2007s

+0

Подсеть VPC будет иметь значение только в том случае, если сервер MySQL, к которому вы пытаетесь подключиться, также находится в VPC. И если сервер MySQL также находится в VPC, тогда вы все равно должны использовать группы безопасности, а не IP-адреса. –

ответ

5

У вас есть экземпляр MySQL, который не находится в инфраструктуре AWS. Вы хотите ограничить доступ к экземпляру MySQL IP-адресом функции Lambda для вашего экземпляра на месте. Для защиты экземпляра можно использовать только локальный брандмауэр.

С вашего случая использования требуется доступ в Интернет от Lambda к экземпляру MySQL на интернет-общественности, вам нужно будет сконфигурируйте NAT gateway for your Lambda function to access the internet.:

если ваша функция Lambda требуется доступ к Интернету ..., можно настроить экземпляр NAT внутри вашего VPC, или вы можете использовать шлюз NAT Amazon VPC. Для получения дополнительной информации см. NAT Gateways в Руководстве пользователя Amazon VPC.

Использование конфигурации шлюза NAT позволяет вашим запросам Лямбды поступать с фиксированного IP-адреса шлюза NAT. Если вы назначили и Elastic IP Number для NAT Gateway здесь, вы можете указать эту комбинацию IP/порт на своем брандмауэре для обеспечения доступа к вашему локальному экземпляру SQL.

+0

«Поскольку для вашего случая использования требуется доступ в Интернет от Lambda к экземпляру MySQL в общедоступном Интернете, вам необходимо настроить NAT-шлюз для вашей функции Lambda для доступа к Интернету», это не совсем так. Обычно функция Lambda имеет доступ к Интернету, если у нее не было доступа VPC. Я согласен с тем, что включение доступа VPC и принудительный интернет-трафик через NAT - лучший способ применить ограничение IP-адреса для функции Lambda. –

+0

Или экземпляр NAT, конечно. Это или шлюз являются единственными способами генерации Лямбда-трафика с известного, фиксированного общедоступного IP-адреса, который не является пулом общедоступных IP-адресов, разделяемых другими учетными записями, поэтому +1. –

+0

Спасибо большое! Это то, что я смотрел точно! –

0

IP-адреса в 172.31.16.0/20 являются частными, немаршрутизируемыми адресами. Если ваш сервер MySQL и брандмауэр не находятся в одном VPC, ваша Lambda сможет подключаться только через NAT и будет использовать эластичный IP-адрес, подключенный к вашему шлюзу NAT. Это единственный IP-адрес, который вам нужен для белого списка.

Кстати, для CIDR 172.31.16.0/20 вы можете ожидать IP-адреса от 172.31.16.0 до 172.31.31.255. 20 - количество бит маски, которое дает диапазон 4096 значений. Он отображает сетевую маску 255.255.240.0.

Смежные вопросы