Есть много концепций, которые нужно освоить для успешной карьеры в IT. Некоторые являются эндемичными для одного поставщика облачных услуг, другие, как и тема этой статьи, повсеместно распространяются на всю отрасль.
В этом посте мы обсудим виртуальные частные облака или VPC — что это такое, как они работают и почему они являются одним из основных элементов современной облачной инфраструктуры.
Основы VPC
Что такое VPC?
Если вы когда-нибудь видели фильм с типичным снимком банковского хранилища, обычно это большая охраняемая комната с множеством отдельных сейфов.
VPC — это отдельный отсек в общедоступном облаке определенного провайдера, по сути, депозитная ячейка в хранилище банка. Само хранилище является общедоступным, и время от времени к нему обращаются многие клиенты банка. У них даже могут быть ящики в том же хранилище, что и у вас. Но для них ваш ящик неприкасаем или даже невидим. Только у вас есть ключ, чтобы открыть его, а это означает, что никто другой не может получить к нему доступ, если вы этого не пожелаете.
Конечно, в отличие от банка VPC — AWS, Google Cloud или Azure — обслуживается буквально ордой инженеров, а коробки разделены не армированной сталью, а логическими элементами.
В AWS и GCP VPC так и называется VPC, в Azure это на самом деле называется виртуальной сетью (виртуальная сеть Azure). Все они реализуют аналогичные функции и меры безопасности.
Особенности и изоляция
VPC предоставляет вам место для развертывания услуг и предложений общедоступного облака с жестким контролем доступа. Он может охватывать несколько регионов и их зон доступности, позволяя развертывать инфраструктуру ближе к клиентам или защищаться от сбоев в одном месте.
Тема изоляции поднимается довольно часто, и это потому, что это на самом деле самая важная черта из всех. Ваши данные отделены от данных других клиентов. Все, что вы решите изолировать, изолировано от внешнего мира, и доступ к развернутым ресурсам может быть легко предоставлен только тем, кого вы назначите.
Наиболее часто используемые механизмы изоляции — общедоступные/частные подсети, группы безопасности и списки контроля доступа, о которых мы поговорим ниже.
Выгоды
Чем выгоден для вас выбор VPC вместо общедоступного облака? Вы можете извлечь много пользы из того, чтобы быть отдельной организацией, управляемой вашими правилами, но при этом являющейся частью «большой картины», защищенной выбранным вами облачным провайдером.
Как всегда, безопасность превыше всего. Вам предоставляется доступ к множеству решений, которые вы ожидаете от традиционного общедоступного облака, но с гораздо большей гибкостью. Дополнительные инструменты наблюдения, детальный контроль доступа и множество мер безопасности и механизмов, встроенных в саму концепцию, в значительной степени способствуют безопасности и конфиденциальности вашей инфраструктуры и данных.
Еще одним преимуществом является то, что VPC намного дешевле, чем традиционное частное облако, но они предоставляют вам множество функций, за которые вам придется заплатить довольно много.
Ресурсы, доступные для развертывания внутри VPC, являются обычными предложениями общедоступного облака, поэтому, как и в случае с общедоступными облаками, вы можете легко и дешево масштабировать.
Конфигурация: сетевые ACL, группы безопасности и подсети
Правильная настройка доступа к вашему VPC полностью зависит от вас и поддержание изоляции данных имеет решающее значение. Это означает, что вы должны делать это правильно, каждый раз. Эти механизмы помогут вам в этом.
Подсети
Подсети являются наиболее традиционным способом разделения сетевых объектов. Если вы когда-либо настраивали маршрутизатор дома или работали с любыми сетями, вы определенно сталкивались с этим. По сути, это блок IP-адресов, которые вы можете выделить своим ресурсам. Он получен из основного сетевого пула вашего VPC — что-то вроде ситуации «кусок кусочка».
Существует два типичных вида подсетей: частные и общедоступные. Частная подсеть отключена от Интернета, если только вы не настроите устройство NAT для работы в качестве своего рода «переводчика».
Общедоступная подсеть может выходить в Интернет, как правило, с помощью интернет-шлюза, действующего как впускной/выпускной клапан. Шлюз предоставляет IP-адрес, доступный извне, что дает вам точку, к которой вы можете подключиться.
Сетевые ACL
Сетевой ACL — это дополнительная часть логики подсети. Он действует как упорядоченный реестр правил, определяющих, какой тип трафика может входить/исходить, через какой порт и даже откуда/куда.
Вы всегда должны следить за порядком этих правил, даже небольшая ошибка может привести к утечке.
Группы безопасности
Группы безопасности используют другой подход: вместо того, чтобы контролировать определенные подсети, они работают с такими ресурсами, как экземпляры. В отличие от сетевых ACL, вы не можете явно создать правило «запретить», группы безопасности считают все, что не определено как разрешенное, запрещенным по умолчанию. Вам также не нужно явно разрешать ответный трафик, если что-то втекает, ответу разрешается вытекать.
Порядок правил, указанных для группы безопасности, также не имеет значения, весь набор правил оценивается при поступлении трафика. Вы можете прикрепить к ресурсу несколько групп безопасности, и (по крайней мере, с AWS), если вы этого не сделаете, для вас автоматически прикрепится группа по умолчанию.
К счастью, на вопрос о том, какой метод управления доступом следует использовать, ответить несложно. Вы должны использовать их все. В общем, положить как можно больше слоев между собой и темным, холодным пространством всемирной паутины — это хорошая практика, которую вы обязательно должны принять близко к сердцу.
VPC на практике: 4 вывода
Ниже приведены четыре совета, которые помогут вам максимально эффективно использовать VPC с меньшими трудностями.
1. AWS предоставляет вам VPC по умолчанию, когда настройка вашей учетной записи завершена. Хотя он технически готов к использованию, проверьте настройки безопасности, упомянутые выше, и убедитесь, что они соответствуют вашим потребностям, чтобы избежать неприятных сюрпризов. Дополнительная информация для операторов Terraform: ресурс VPC по умолчанию кардинально отличается от типового!
2. Подготовить VPC очень просто, однако управление группами безопасности и сетевыми ACL усложняется по мере увеличения количества правил. Будьте осторожны, если вы не хотите, чтобы вас похоронили под кучей нечитаемых правил или позволили чему-то проникнуть в давно забытую брешь.
3. Если вы используете группы безопасности и сетевые ACL, чтобы разрешить доступ к вашей среде для ваших товарищей по команде или коллег, убедитесь, что адреса, которые вы вносите в белый список, либо статичны, либо очень-очень часто обновляются.
В противном случае однажды разрешенный адрес может внезапно оказаться в руках злоумышленника, который не прочь пошуршать. Это можно решить несколькими способами, в том числе с помощью различных инструментов.
4. Количество VPC, которые вы можете предоставить практически в каждом общедоступном облаке, ограничено. Если вы хотите предоставить клиентам их собственные клиентские пространства, если только это не микромасштаб, другие решения (удостоверения IAM, дополнительные учетные записи пользователей и т. д.) окажутся гораздо лучшей альтернативой.
Компания Mainton - разработка и тестирование программного обеспечения под заказ, SEO и реклама в интернете с 2004 года.