Ограничить доступ к статическому сайту S3 только после VPN-подключения

У меня есть статический сайт, размещенный на S3 для внешнего интерфейса. Я также настроил клиентскую VPN AWS, где назначил частный IP CIDR 172.10.0.0/24.

Я также настроил свои серверные приложения, размещенные на EC2, для доступа только после VPN-подключения, и они отлично работают.

Я также использовал Cloudfront и WAF для статического сайта S3. Я попытался ограничиться политикой сегмента S3, но она работает только с общедоступными IP-адресами. Кроме того, я также пробовал с WAF. Но это не работает.

Может ли кто-нибудь помочь мне решить эту проблему?

1 ответ

Вы можете сделать свой сегмент S2 приватным и ограничить доступ с помощью идентификатора Origin Access. См. https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html.

Чтобы ограничить доступ к контенту, который вы обслуживаете из корзин Amazon S3, выполните следующие действия:

  1. Создайте специального пользователя CloudFront, называемого идентификатором доступа источника (OAI), и свяжите его с вашим распределением.

  2. Настройте разрешения корзины S3, чтобы CloudFront мог использовать OAI для доступа к файлам в корзине и предоставления их вашим пользователям. Убедитесь, что пользователи не могут использовать прямой URL-адрес корзины S3 для доступа к файлу там.

После того, как вы выполните эти шаги, пользователи смогут получать доступ к вашим файлам только через CloudFront, а не напрямую из корзины S3.

В общем, если вы используете корзину Amazon S3 в качестве источника для распространения CloudFront, вы можете либо разрешить всем иметь доступ к файлам, находящимся там, либо ограничить доступ. Если вы ограничиваете доступ, используя, например, подписанные URL-адреса CloudFront или подписанные файлы cookie, вам также не нужно, чтобы люди могли просматривать файлы, просто используя прямой URL-адрес Amazon S3 для файла. Вместо этого вы хотите, чтобы они получали доступ к файлам только с помощью URL-адреса CloudFront, чтобы ваши средства защиты работали.

С этой опцией ваш URL-адрес CloudFront становится общедоступным, но затем он обращается к S3 через частный канал, и ваша корзина S3 не является общедоступной напрямую.

Другие вопросы по тегам