728x90
1. Amazon S3 - 버킷 생성
- Amazon S3 검색 >> 버킷 >> 버킷 만들기
- 버킷 이름, 리전 선택 >> 생성
- 모든 퍼블릭 엑세스 차단 해제
- 차단을 해제하지 않으면 정적 웹사이트 호스팅 후 도메인 접근 시 'Access Denied' 에러가 뜬다.
- 생성된 버킷 선택 >> 속성 >> 하단 정적 웹 사이트 호스팅 편집
- 정적 웹 사이트 호스팅 활성화, 인텍스 문서 설정
- 권한 >> 버킷 정책 편집
- 버킷 접근에 대한 정책 설정을 위해 다음 내용을 삽입한다.
- [버킷 ARN] 부분은 정책 에디터 상단에 표시된 버킷 ARN을 복사하여 붙혀 넣는다.
{
"Version": "2012-10-17",
"Id": "Policy1662277569063",
"Statement": [
{
"Sid": "Stmt1662277568046",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "[버킷 ARN]/*"
}
]
}
2. AWS Certificate Manager(ACM) - SSL 인증서 생성
※ 사전에 도메인이 준비되어야 한다. 도메인은 Amazon Route53 - 도메인 등록을 통해 구매할 수 있다.
해당 실습에선 사전에 구매되어 있던 jigeumgo.com 도메인을 예시로 사용해보겠다.
- ACM 검색 >> 인증서 요청 >> 퍼블릭 인증서 요청
- 미국 동부(버지니아 북부) 리전에서만 요청 가능하다.
- 도메인 이름을 다음과 같이 설정 >> 요청
- 도메인 앞에 *을 붙힌 이름으로 인증서를 생성하면 모든 서브 도메인에 대해 공통적으로 적용할 수 있다.
- 요청된 인증서 선택 >> Route 53에서 레코드 생성 버튼 >> 레코드 생성
3. Amazon CloudFront - S3버킷 배포
- CloudFront 검색 >> 배포 >> 배포 생성
- 원본 도메인으로 이전에 만든 S3 버킷 도메인 선택
- 기본 캐시 동작 > 뷰어 - 뷰어 프로토콜 정책, 허용된 HTTP 방법 변경
- 뷰어 프로토콜 정책: Redirect HTTP to HTTPS 선택
- 허용된 HTTP 방법: GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE 선택
- 설정 > 대체 도메인 이름(CNAME), 사용자 정의 SSL 인증서 설정
- 대체 도메인 이름(CNAME): www 서브 도메인 입력
- 사용자 정의 SSL 인증서: 이전에 생성한 SSL 인증서 선택
- 배포 생성 후 index.html을 포함한 배포 파일 업로드
4. Amazon Route 53 - CloudFront로 연결될 도메인 레코드 추가
- Route 53 검색 >> 호스팅 영역 >> (호스팅 영역 생성) >> 도메인 선택 >> 레코드 생성
- 빠른 레코드 생성
- 먼저 '별칭' check bar를 활성화 해준다.
- 레코드 이름: CloudFront에 설정한 대체 도메인 이름(CNAME)과 같은 서브 도메인명 입력
- 트래픽 라우팅 대상: CloudFront 배포에 대한 별칭 선택
- 배포 선택: 이전에 생성한 CloudFront 도메인 선택
5. 도메인 접속
- 연결한 www 도메인으로 접속 테스트
728x90