웹기술

서비스 별 도메인 적용방법

토픽 웹기술 > 아마존 웹서비스

 EC2

  • EC2의 ip는 인스턴스를 stop/start 할 때마다 변경된다. 이러한 문제를 방지하기 위해서는 Elastic IP를 사용한다. Elastic IP는 사용료가 기본적으로 무료지만 Elastic IP를 생성하고 사용하지 않으면 과금이 된다.
  • 자신의 DNS A 레코드로 Elastic IP를 지정한다.
  • 서브도메인 방식을 사용하려는 경우 cname 레코드를 이용한다.

ELB

  • ELB의 IP는 AWS의 상황에 따라서 변경될 수 있다. 또 Elasitc IP와 같은 고정 IP를 제공하지도 않는다. 따라서 ELB에 도메인을 붙이기 위해서는 ELB의 A 레코드 이름을 자신의 DNS cname 레코드로 등록한다.
  • cname 레코드 방식은 서브 도메인만을 지원한다. 루트 도메인을 사용하기 위해서는 Route 53에서 A 레코드를 만들고 Alias의 값으로 ELB를 선택해야 한다.

ELB에 SSL 인증서 설치

ELB에 SSL 인증서를 설치하고 ELB와 EC2 사이의 구간을 http로 연결하면 클라이언트와 서버 사이에서 일어나는 SSL 통신 부하를 ELB가 감당하기 때문에 EC2의 부하를 경감시킨다. ELB에 가해지는 SSL 통신의 부하는 AWS에서 알아서 처리하고 과금도 되지 않기 때문에 EC2를 사용하는 중요한 이유가 된다. 

ELB에서 SSL 서비스를 제공하기 위해서는 ELB의 Listener에 HTTPS를 추가하면 된다. 아래는 SSL이 추가된 화면이다. 

SSL Certificate에서 (Change) 를 클릭하면 아래와 같은 화면이 나타난다.

위의 내용을 입력하기 위해서는 인증서를 이해하고, 인증서를 구입해야 한다. 인증서에 대한 내용은 도메인 수업의 SSL 수업으로 위임한다. 이 수업을 통해서 인증서에 대한 이론적/실무적인 지식을 얻을 수 있을 것이다. 위의 양식에 입력한 내용은 SSL 수업을 통해서 획득한 파일의 내용을 복사&붙여넣기를 하면 된다. 입력해야 할 정보는 아래와 같다. 

  • Certificate Name : 인증서 정보에 대한 이름, 
  • Private Key : ssl.key을 변환해야 한다. (아래 내용 참고
  • Public Key Certificate : ssl.crt
  • Certificate Chain : sub.class1.server.ca.pem

​private key는 ELB가 요구하는 형식에 맞게 변경해야 한다. ELB는 비밀번호가 제거된 private key를 사용하기 때문에 아래와 같은 명령을 사용해서 private key를 변환해줘야 한다. 아래의 명령을 실행하면 ssl.key 파일을 ssl.aws.key 파일로 변환한다. ssl.aws.key 파일의 내용을 사용해야 한다. 

openssl rsa -in ssl.key -out ssl.aws.key
등록을 마치고 창을 닫을 때 아래와 같은 메시지가 뜨는 경우가 있었다. 이런 경우 일단은 진행절차를 중단하고 다시 SSL 등록을 시도하면 잘 적용 되었다. 아마존 측의 버그가 아닐까 추정된다. 
Failed to change listener SSL certificate: Certificate not found. If you have just uploaded the certificate, try again shortly.

CloudFront

  • 클라우드 프론트 쪽에서 Alternative Domain Name의 값을 지정한다.
  • Route 53에서 A 레코드를 생성하고 원하는 클라우드 프론트를 선택한다.

댓글

댓글 본문
  1. 윤충기
    시작+R → cmd → ipconfig 하시면 아이피 확인 하실 수 있습니다.
    대화보기
    • 유튜브공
      sublime text에 제가 만든 html파일이 있는데 window기준으로 아이피 아는 법은 무엇인가요?
    • http로 들어갔을땐 웹사이트가 잘 작동하는데 https로 들어갔을땐 "Index of /" 라는 텍스트만 달랑 뜨고
      아무것도 웹사이트에 뜨질 않습니다 개발자 툴에서 확인해보아도 로드되는 파일들도 없고
      뭐가 잘못된걸까요?
    • hellokdw
      Route53을 이용하여 Alias에 ELB 값을 지정하는것을 참고할려고 합니다.
      이깨 Alias에 ELB를 하나밖에 지정을 못하는건지요?(ELB2개를 지정하는게 목적입니다.)
    • route53 의 작업 그대로 하였습니다. 중간에 실수가 있어서, 등록 도메인 다시 취소하고 처음부터 다시 하였거든요. 그런데 하루가 지나도 도메인을 주소창에 치면, 호스트를 찾을수 없다고 합니다. 네임서버 정상등록된거 확인 했고, A 레코드에 elastic ip적어주었고 루트도메인 사용하는걸로 적용했는데 하루 이상이 지나도 호스트를 연결할수 없다고 합니다. 연결이 안되고 있는데 이건 어떤 문제인지요?
    • egoing
      웹서버에서 www를 허용하고 있는지도 확인해보세요.
      대화보기
      • 지나가던이2
        route 53에서 후이즈에서 구매한 도메인을 등록했는데, 해당 도메인 접속이 잘되는데, 문제는 url에 www를 붙이면 접속이 안되네요. http://www.test.com 하면 안되고 test.com을 반드시 입력해야만 됩니다. route 53에서 domain name 에 *를 붙여줘도 접속이 안되네요. 이거 왜 그런거죠? 해결방법 없나요?
      • 지나가던이
        아마존에서 도메인 사야하나요? 기존에 쓰던 도메인으로 사용해도 되나요?
      • control
        ROUTE53을 적용하려면 자신의 EC2에 DNS를 구축해 놓아야 되는 것인가요?? 아니면 일반 도메인업체처럼 레코드로 제공을해주는 개념인가요??
      • egoing
        글쎄요. 질문하신 내용은 저도 잘 모르겠네요.
        대화보기
        • ksh368
          영어로 작성된 아마존 문서를 보면서 공부하는 것이 매우 어려웠습니다.
          여기서 이렇게 좋은 강의가 있어서 매우 도움이 되고 있습니다. 감사합니다.
          한가지 질문이 있습니다.
          Elastic IP로 EC2에 고정IP를 할당 할 수 있었습니다.
          Route 53 서비스를 이용하여 Elastic IP의 도메인을 설정하였습니다.
          여기서 도메인으로 접속하는 속도가 매우 느려졌습니다.
          이전에 Elastic IP를 사용하지 않고 EC2에 자동적으로 할당되는 Public DNS로 접속할 때보다 느려졌습니다.
          이 문제를 해결하는 데 도움을 주신다면 감사하겠습니다.
        • ppdrum
          항상 좋은강의 잘 보고 배우고있습니다.감사합니다.
          S3서비스에 도메인을 붙이는 방법도 올려주셨으면합니다.
          Route53과 S3강의 동영상을 모두 밨지만 S3에 도메인을 분이는 방법이없어 계속 다른서비스에 도메인 붙이는
          강의내용을보고 추측해서 이것저것해보고있는데 잘 되지않네요.^^
        • moonsookang
          안녕하세요. 개인홈페이지를 AWS로 전환 중인데요. 우연히 찾아오게 되었어요. 하나 궁금한건 Elastic IP에서 Scope가 vpc와 standard와 어떤 차이가 있는지 알고 계시나요?