AWS EC2 Instance Metadata
- EC2 인스턴스가 스스로 학습하도록 해서 IAM 역할이 필요하지 않음
- URL은 http://169.254.169.254/latest/meta-data/ 이며 AWS의 내부 IP로 실행되지 않고 EC2 인스턴스에서만 실행
- URL을 사용하면 메타 데이터에서 IAM 역할 이름을 검색할 수 있지만 IAM 정책은 검색할 수 없음
- IAM 정책을 테스트하는 유일한 방법은 정책 시뮬레이터나 드라이 런 옵션을 사용
- 메타데이터는 EC2 인스턴스에 관한 정보이고
사용자데이터는 EC2 인스턴스의 스크립트를 실행하는 것이므로 완전히 다른 개념
<AWS EC2 인스턴스 메타데이터 실습>
- EC2 인스턴스 메타데이터로 할 수 있는 것
EC2 인스턴스를 킨 후 URL을 쿼리하기 위해 curl과 http://169.254.169.254을 입력하면 수많은 숫자와 날짜가 나타남
이는 바로 API curl의 버전
지금은 API curl의 버전은 중요하지 않으므로 /latest/까지 입력하면 dynamic과 meta-data, user-data 필드를 얻게 됨
그러므로 메타 데이터와 사용자 데이터를 검색할 수 있음
다음으로는 메타 데이터를 추가하도록 하여 /meta-data/까지 입력하면 다양한 옵션을 얻을 수 있게 됨
끝에 /가 없으면 값이라는 뜻이며, 끝에 /가 있으면 무언가 더 있다는 뜻
예1) instance-id의 경우 curl과 instance-id를 입력하고 실행하면 인스턴스 ID를 얻게 됨
예2) local-ipv4의 경우 curl과 local-ipv4를 입력하고 실행하면 로컬 ipv4를 얻게 됨
예3) hostname의 경우 호스트 이름을 얻고 iam을 입력하면 security credientials과 info와 같은 많은 값을 얻을 수 있음
예4) 위에서 security credientials을 입력하면 MyFirstEC2Role이라는 역할명을 얻게 되며 이는 첫 번째 EC2 역할을 뜻함
예5) IAM 역할을 EC2 인스턴스에 연결하고 API 호출을 실행하려면 MyFirstEC2Role을 입력하여 전체 URL을 쿼리하면 됨
그러면 secret access key와 token을 얻게 되며 보안 인증의 기간이 짧다는 것과 만료 날짜 등을 알 수 있게 되며
이를 통해 EC2 인스턴스가 연결된 IAM 역할을 통해 임시 보안 인증을 얻을 수 있는 것
여기서 알 수 있는 것을 위와 같은 정보를 얻기 위해서 IAM 역할로 권한을 부여하지 않아도 자유롭게 얻을 수 있다는 것임
그러므로 IAM 역할이 없는 EC2 인스턴스는 모든 정보를 요청할 수 있으며 그 방법을 꼭 학습해야 하므로 자동화하면 정말 유용
'Cloud > AWS' 카테고리의 다른 글
[SAA] S3 MFA Delete (0) | 2022.03.27 |
---|---|
[SAA] AWS SDK 개요 (0) | 2022.03.23 |
[SAA] S3 일관성 모델 (0) | 2022.03.23 |
[SAA] S3 CORS (0) | 2022.03.23 |
[SAA] S3 웹사이트 (0) | 2022.03.23 |