이 영역을 누르면 첫 페이지로 이동
Nearer, Still Nearer 블로그의 첫 페이지로 이동

Nearer, Still Nearer

페이지 맨 위로 올라가기

Nearer, Still Nearer

Nearer, still nearer, close to Thy heart ...

저가 웹 페이지 운용 - 인증

  • 2013.12.20 15:10
  • IT

저가 웹 페이지 운용 - 인증

 

2022년 7월 31일 Update: 이 글에 소개된 방법은 오래된 방법으로 2022년 7월초부터 동작하지 않습니다.  개정판을 참조해 주시기 바랍니다.

 

S3를 이용해서 web page를 만들면서 사실 이 문제를 해결하는데 대부분의 시간을 소모했습니다.  이것 저것 해본것 중 제일 간단한 방법을 소개하도록 하겠습니다.

 

S3Auth 라는 open source project을 이용하는 방법인데, 설명이 제대로 되어 있지 않아 많이 애를 먹었습니다.  이 방법을 사용하기 위해 미리 알아 두어야 할 사항들은 다음과 같습니다.

  • 자신의 앞으로 등록된 domain이 있어야만 합니다.
  • S3의 bucket당 한개만의 username & password를 사용할 수 있습니다.
  • Bucket 전체에 보안이 걸립니다.  Open access로 유지할 부분은 별도의 bucket으로 잡아두세요.

 

벌어지는 과정은 대충 아래와 같습니다.  예를 들어 web browser 에서 goojs.us/test.htm 이라고 주소를 입력하면 goojs.us라는 domain이 AWS의 Route 53로 일단 가겠지요.  (사전에 설정한 것에 따라) Route 53에게 이걸 relay.s3auth.com 로 보내면, relay.s3auth.com은 (미리 등록된 내용을 이용해서) AWS IAM 이라는 security access control 을 통해 S3에 있는 test.htm을 보내달라고 요청합니다.  그럼 S3가 route.s3auth.com에 결과를 전달하고 이것이 최종적으로 web browser로 보내집니다.

 

 

자 그럼, 설정을 시작 해볼까요.  

 

AWS S3에 보안용 Bucket 만들기

 

제 경우에는 open access로 쓰는 goojs.us 외에 (위의 flow chart에서는 주소를 가급적 짧게 하느라고 goojs.us가 보안처리된 것으로 가정한 것이니 헷갈리지 마세요) 제 개인용 보안 bucket으로 secure.goojs.us, 타인과 공유할 보안 bucket으로 download.goojs.us 이렇게 2개를 추가로 만들었습니다.  Open access용과는 달리 보안용 bucket에는 "Static Web Hosting" 이나 "Add bucket policy"를 하지 마세요.

 

 

AWS Route 53에서 s3auth.com으로 보내기 설정

 

이미 설정된 goojs.us라는 hosted zone으로 가서 "Create Record Set"을 선택합니다.

 

 

 

보안용 bucket을 위해 (Name: secure.goojs.us & download.goojs.us) Type: CNAME, Alias: No, Value: relay.s3auth.com 으로 각각 record set을 만들어 줍니다.  즉 goojs.us로 오는 것은 직접 S3로 보내주고, secure.goojs.us & download.goojs.us는 relay.s3auth.com으로 보내주라고 설정한 것이지요.

 

 

 

AWS IAM에 암호 등록

 

보안용 bucket들은 앞에서 bucket policy를 공개로 설정하지 않았기 때문에 access를 하려면 암호가 필요합니다.  AWS 계정을 만들때 사용된 내 master password 외에 user를 추가할때 사용하는 것이 IAM 이라는 service입니다. 

 

 

제 경우에는 개인용 보안 bucket용으로 family라는 username을, 타인과 공유할 보안 bucket용으로 guest라는 username을 등록했습니다.  "Generate an access key"라는 option이 check되었는지 확인하세요.

 

 

그러면 아래와 같이 사용자가 성공적으로 생성되었다는 창이 뜹니다.  여기서 "Show User Security Credentials"를 누르고 20자인 Access Key ID와 40자인 Secret Access Key를 메모장에 copy/paste해서 기록해 두세요.

 

 

그 다음에는 내가 원하는 password를 지정합니다.  Option에서 "Assign a custom password"를 선택하세요.

 

 

끝으로 "Permissions" tab으로 이동해 "Attach User Policy"를 click하세요.  Option중에 "Custom Policy" -> "Select"를 선택하고 적당한 Policy Name을 입력하고 Policy Document 항목란에 다음 내용을 추가하세요.  여기서 secure_bucket_name은 제경우 secure.goojs.us 혹은 download.goojs.us 가 되겠습니다. 

{

   "Statement": [

      {

         "Effect": "Allow",

         "Action": ["s3:GetObject", "s3:GetBucketWebsite"],

         "Resource": [

           "arn:aws:s3:::secure_bucket_name/*"

         ]

      }

   ]

}

 

한 username 으로 여러개의 bucket을 access할 때에는 다음과 같이 합니다. 

{

   "Statement": [

      {

         "Effect": "Allow",

         "Action": ["s3:GetObject", "s3:GetBucketWebsite"],

         "Resource": [

           "arn:aws:s3:::secure_bucket_name_1/*",

           "arn:aws:s3:::secure_bucket_name_2/*",

           "arn:aws:s3:::secure_bucket_name_3/*"

         ]

      }

   ]

}

 

 

S3Auth에 정보 등록

 

이제 http://www.s3auth.com/ 으로 이동해 보겠습니다.  이 site를 이용하려면 Facebook이나 Gmail account로 login을 해야 하는데 정보 유출 우려로 찜찜하실 수 있으니 임시 account를 하나 만들어 이 목적으로만 사용하기를 추천합니다. (통상 쓰는 account 에서 logout하시고 임시 account로 login한 상태에서 진행하세요)

 

 

등록 양식에 따라 S3 의 secure bucket information을 넣오주고 "Submit"하면 끝납니다.  여기서 submit form은 AWS key (master) 를 넣으라고 하지만 IAM에서 생성한 user 용을 넣는것이 맞으니 조심하세요. (잘못된 내용인데 수정을 하지 않네요)

 

 

 

.htpasswd File 만들기

 

마지막으로 .htpasswd 라는 file을 만들어 S3 bucket 의 root 에 upload해야합니다.  

 

한줄짜리 ASCII text file인데 내용은 http://aspirine.org/htpasswd_en.html  로 가서 아래와 같이 username (예: family) & password (예: wearehappy) 를 입력하고 algorithm은 "SHA-1"을 선택하여 "Generate htpasswd content"를 누르면 encrypted된 결과가 나옵니다.  그 내용을 copy/past하여 .htpasswd를 만드세요.   여기서 username & password는 앞서 IAM에서 입력한 것들입니다.

 

 

[관련 글]

  • 저가 웹 페이지 운용 - S3
  • 저가 웹 페이지 운용 - 내 도메인
  • 저가 웹 페이지 운용 - 인증 (개정판)
  • 저가 웹 페이지 운용 - 클라우드 프론트와 내 도메인의 연결

 

저작자표시
  • 카카오스토리
  • 트위터
  • 페이스북

'IT' 카테고리의 다른 글

Adobe Genuine Software Integrity Service 제거  (54) 2019.10.08
Macbook Pro 수리후 재활용  (0) 2018.07.30
Xfinity Mobile 사용기  (3) 2017.10.23
선불 유심 (USIM) 사용기: 일본  (0) 2015.10.11
선불 유심 (USIM) 사용기: 한국  (0) 2015.10.03
선불 유심 (USIM) 사용기: 노르웨이, 프랑스  (0) 2015.07.09
G-Mail: 첨부파일을 맨 위로  (0) 2015.07.04
외국에서의 핸드폰 사용 (Using Cellphones Abroad)  (4) 2015.05.13
저가 웹 페이지 운용 - 내 도메인  (0) 2013.12.19
저가 웹 페이지 운용 - S3  (0) 2013.12.18
Amazon Web Service, Amazon Web Services, Authentication, s3auth, 보안, 인증, 홈페이지제작

댓글

방문자 정보

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • G-Mail: 첨부파일을 맨 위로

    G-Mail: 첨부파일을 맨 위로

    2015.07.04
  • 외국에서의 핸드폰 사용 (Using Cellphones Abroad)

    외국에서의 핸드폰 사용 (Using Cellphones Abroad)

    2015.05.13
  • 저가 웹 페이지 운용 - 내 도메인

    저가 웹 페이지 운용 - 내 도메인

    2013.12.19
  • 저가 웹 페이지 운용 - S3

    저가 웹 페이지 운용 - S3

    2013.12.18
다른 글 더 둘러보기

정보

Nearer, Still Nearer 블로그의 첫 페이지로 이동

Nearer, Still Nearer

  • Nearer, Still Nearer의 첫 페이지로 이동

검색

메뉴

  • HOME
  • 모든 글 보기
  • TAG
  • Admin

카테고리

  • 전체보기 (1055)
    • 묵상 (67)
    • 선교 & 선교단체 (18)
    • CCM & 성가 (39)
    • 내 생각에는... (75)
    • 이런 것은 나누고 싶어... (74)
    • 사진&동영상 (97)
    • 여행스케치 (188)
      • 미국 San Francisco (8)
      • 미국 California (48)
      • 미국 Utah & Arizona (20)
      • Iceland & Faroe 2022 (33)
      • Norway & Paris 2015 (36)
      • 홋카이도 겨울 2018 (11)
      • 홋카이도 겨울 2017 (10)
      • 홋카이도 여름 2016 (3)
      • 홋카이도 가을 2015 (4)
      • 홋카이도 이른봄 2015 (9)
      • 일본 칸토(関東) (2)
      • 한국 (4)
    • 이것저것 (116)
    • 미국생활 (52)
    • 서재(書齋) (24)
    • 발자취... (11)
    • 빛 바랜 앨범 (15)
    • 음악 (57)
    • 밴드 음향 (7)
    • 영화&드라마 (44)
    • 음식 (44)
    • 맛집 (24)
    • IT (26)
    • 쇼핑 가이드 (7)
    • ㅋㅋㅋ (47)
    • 1면기사에 대한 斷想 (21)

최근 글

  • 음악이 과학을 만났을 때 (When Music met Science)

    음악이 과학을 만났을 때 (When Music met Science)

    2023.01.31
  • 어느 작곡과 지도 교수

    어느 작곡과 지도 교수

    2023.01.29
  • "두시탈출 컬투쇼" 사연 레전드 (2)

    "두시탈출 컬투쇼" 사연 레전드 (2)

    2023.01.27
  • 성경의 관점에서 보는 인류 역사 (4) : 노아의 방주

    성경의 관점에서 보는 인류 역사 (4) : 노아의 방주

    2023.01.25

인기 글

  • 음악이 과학을 만났을 때 (When Music met Science)

    음악이 과학을 만났을 때 (When Music met Science)

    2023.01.31
  • 어느 작곡과 지도 교수

    어느 작곡과 지도 교수

    2023.01.29
  • What a Beautiful Name (그 이름 아름답도다) 악보

    What a Beautiful Name (그 이름 아름답도다) 악보

    2019.05.25
  • "두시탈출 컬투쇼" 사연 레전드 (2)

    "두시탈출 컬투쇼" 사연 레전드 (2)

    2023.01.27

댓글

  • 긴글 읽어주셔서 감사합니다~ 고차원이라뇨? 저도 그냥 몇개 찾아 읽고⋯
  • 감사합니다. Nikon D800 Nikkor AF-S 24-70m⋯
  • 저는 노아의 방주가 역사적 사실이라는 것을 이 게시물을 읽으면서 확증하게⋯
  • 사진 너무 좋네요... 카메라 정보 알 수 있을까요?

공지사항

  • 공지 - Nearer, Still Nearer

아카이브

  • 2023/01
  • 2022/12
  • 2022/11
  • 2022/10
  • 2022/09

태그

  • 묵상
  • 캘리포니아
  • 홋카이도 여행
  • 미국
  • 사진
  • California
  • 기독교
  • 홋카이도

나의 외부 링크

  • Eugene & Julia 찬양사역
  • 목수의 졸개
  • 별의 세계
  • 제주도 수제버거카페 두봄
  • 앤의 그림일기
  • Our Journey Together
  • Psalm1Logos
  • 물 흐르듯 흐르는 세월 앞에서
  • 프라치노 공간
  • 우선생의 베이스

정보

더가까이의 Nearer, Still Nearer

Nearer, Still Nearer

더가까이

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자 727,103
  • 오늘 111
  • 어제 293

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © 더가까이. Designed by Fraccino.

티스토리툴바