В этом руководстве я покажу вам шаг за шагом, как подключить & доступ к ведру S3 из экземпляра EC2 с помощью ролей IAM.
- Шаг-1) Создайте профиль экземпляра IAM, предоставляющий доступ к Amazon S3.
- Шаг-2) Создание экземпляра EC2 и прикрепление профиля экземпляра IAM к этому экземпляру
- Шаг-3) Проверьте S3, чтобы проверить разрешения, если к нему прикреплена какая-либо политика отрицания.
- Шаг 4) Проверьте сетевое подключение экземпляра EC2 к Amazon S3.
- Шаг-5) Проверка доступа к ведрам S3
- Связаться со мной
Шаг-1) Создайте профиль экземпляра IAM, предоставляющий доступ к Amazon S3.
- Откройте консоль IAM.
- Выберите Роли, а затем выберите Создать роль.
- Выберите AWS Service, а затем выберите EC2.
- Выберите Далее: Разрешения.
- Создайте пользовательскую политику, которая предоставляет минимально необходимые разрешения для доступа к ведру S3.
Примечание: Создание политики с минимально необходимыми разрешениями является лучшей практикой безопасности. Однако чтобы разрешить EC2 доступ ко всем ведрам Amazon S3, вы можете использовать управляемую IAM-политику AmazonS3ReadOnlyAccess или AmazonS3FullAccess.
- Выберите Далее: Теги, а затем выберите Далее: Обзор.
- Введите имя роли, а затем выберите Создать роль.
Шаг-2) Создание экземпляра EC2 и прикрепление профиля экземпляра IAM к этому экземпляру
- Создайте экземпляр EC2 (Запуск экземпляра EC2 за 1 минуту).
-
Для этого установите флажок на этом экземпляре и перейдите на вкладку Actions > Security > Modify IAM role.
-
Теперь выберите роль IAM, которую вы создали в шаге 1, и сохраните ее. Это назначит роль IAM вашему экземпляру ec2.
Шаг-3) Проверьте S3, чтобы проверить разрешения, если к нему прикреплена какая-либо политика отрицания.
- Перейдите в раздел Permissions>Bucket Policy, затем найдите Effect:Deny.
- Теперь в политике ведра отредактируйте или удалите все Effect: Deny утверждения, которые запрещают профилю экземпляра IAM доступ к вашему ведру.
Шаг 4) Проверьте сетевое подключение экземпляра EC2 к Amazon S3.
- Проверьте, есть ли у EC2 сетевое подключение к конечным точкам S3.
- Мы должны убедиться, что наш экземпляр должен обладать одним из следующих качеств
- [] Экземпляр EC2 с публичным IP-адресом и записью в таблице маршрутизации с маршрутом по умолчанию, указывающим на интернет-шлюз.
- [] Частный экземпляр EC2 с маршрутом по умолчанию через шлюз NAT.
- [] Частный экземпляр EC2 с подключением к Amazon S3 с помощью конечной точки шлюза VPC.
Шаг-5) Проверка доступа к ведрам S3
- Сначала нам нужно установить AWS CLI Установите или обновите AWS CLI.
- Чтобы проверить доступ к ведрам S3, выполните следующую команду. Замените BUCKET-NAME на имя вашего ведра S3. Эта команда выведет список всех объектов в вашем ведре:
aws s3 ls s3://BUCKET-NAME
Примечание: Выполните команду AWS s3 cp для копирования файлов в ведро S3 и наоборот, но не забудьте дать IAM роль AmazonS3FullAccess или AdminsterAccess.
Теперь, поскольку мы также установили командную строку aws, вы можете просто использовать следующие команды для копирования файлов в ведро S3 из EC2.
# To List the S3 Bucket
aws s3 ls s3://<S3bucketName>
# To copy the files from EC2 to S3
aws s3 cp <Fully Qualified Local filename> s3://<S3BucketName>
Добавление ресурсов:
- https://aws.amazon.com/premiumsupport/knowledge-center/ec2-instance-access-s3-bucket/
- https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
- https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-troubleshooting.html
Связаться со мной
- Github