반응형

Hi Orchid,

오늘은 AWS의 Elastic Load Balancer (ELB)에 인증서 추가하는 방법을 알려줄게.

어제 얘기했듯이 ELB는 아래처럼 3가지 유형이 있는데,

https(443 port) 프로토콜을 이용하고 웹사이트 인증서를 이용하려면

Application layer를 다룰 수 있는 Application LB(ALB) 혹은 Classic LB(CLB)를 이용해야해.

둘 다 세팅방법은 유사한데, https web site의 load balancing과 확장된 기능을 고려할 수 있도록

Application에 기능이 포커스된 ALB에서 세팅을 해볼게.

 

 

메뉴 선택 단계,

AWS Console > EC2 > Load Balancer(로드밸런서) 메뉴로 가서 "Load Balancer 생성"을 클릭

 

ELB에 인증서 추가

 

 

LB 유형 선택에서 Application Load Balancer를 선택

 

ELB에 인증서 추가

 

 

설정 1단계 : 기본구성, 리스너, 가용영역, 추가서비스

 - 체계에서, "인터넷 경계"는 외부 사용자 대상의 웹 인터넷 서비스용, "내부"는 말 그대로 내부망(사설망)에서 시스템들간 요청 처리용도

 - 인증서 등록 위해 "리스너 추가" 클릭하고 "HTTPS" 선택

 

ELB에 인증서 추가

 

 

 - 가용영역은, 로드밸런싱할 EC2 host들이 포함된 모든 subnet을 선택해준다. 복수개 subnet 선택이 필수.

 - 추가 서비스는, http/https 가속(액셀러레이터) 기능을 추가할 경우 선택 (요금추가)

 

ELB에 인증서 추가

 

 

설정 2단계 보안 설정 구성 : 기본 인증서 선택, 보안정책 선택

 - 인증서 유형에서,
    기존 AWS에 등록해둔 인증서가 있다면 "선택" 항목에서 선택하면 되고
    신규 등록이라면 "업로드"항목을 선택하고, 빈칸에 맞는 인증서 텍스트를 복사해서 붙여준다.

 

ELB에 인증서 추가

 

   인증서에서 복사할 텍스트 내용은
   "-----BEGIN CERTIFICATE-----" 부터 "-----END CERTIFICATE-----"까지 포함한 텍스트를 붙여 넣어야한다.

   * 주의할 점은, 인증서 발급회사마다 제공하는 파일이 조금씩 다른데,
      예1) 프라이빗키(***_key.pem), 인증서본문(***_crt.pem), 인증서체인(***_chain**.pem) 파일을 각각 분리하여
             제공하는 업체가 있는데, 이 경우는 각 파일을 열어서 텍스트를 붙여주면 된다.

 

ELB에 인증서 추가 예1

 

      예2) 프라이빗키파일(***_key.pem) + 인증서본문과 체인이 결합된 파일(***_crt.pem)로 제공하는 업체가 있다.
             이 경우는 위 그림처럼 각 부분을 잘라서 붙여주면 된다.

 

ELB에 인증서 추가 예2

 

 - 보안정책 선택에서는, 어떤 프로토콜(SSL, TLS1.0, TLS1.1, TLS1.2 등)을 사용할지 Preset을 선택하는 부분이다.
    TLS 1.1과 TLS 1.2를 같이 선택하려면 아래와 같이 하면 되고,

 

ELB에 인증서 추가

 

   각 preset에 어떤 옵션이 있는지는 여기 링크 문서 참조 --> [Application Load Balancer용 HTTPS 리스너 생성]  
   필요에 맞게 선택하면 되고, 나중에 수정할 수 있다.

 

Application Load Balancer용 HTTPS 리스너 생성 - Elastic Load Balancing

ACM은 4096 키 길이의 RSA 및 EC 인증서를 지원합니다. 하지만, ACM.과의 통합을 통해 로드 밸런서에 이러한 인증서를 설치할 수는 없습니다. 로드 밸런서와 함께 사용하기 위해서는 이러한 인증서를

docs.aws.amazon.com

 

설정 3단계 : 보안 그룹 구성

   기존 보안 그룹을 선택하거나, 새 보안 그룹을 선택하고, http/https를 허용하는 보안그룹을 만든다.

 

ELB에 인증서 추가

 

   * 보안그룹 만드는 상세 설명은 여기 링크 문서 참조    --> [보안 그룹 작업]

 

보안 그룹 작업 - Amazon Elastic Compute Cloud

보안 그룹 작업 인스턴스를 시작할 때 인스턴스에 보안 그룹을 할당할 수 있습니다. 규칙을 추가하거나 제거하면 해당 보안 그룹을 할당한 모든 인스턴스에 변경 내용이 자동으로 적용됩니다. �

docs.aws.amazon.com

설정 4단계 : 라우팅 구성

- 로드밸런싱할 대상 (EC2 host 등)들을 어떤 프로토콜로 체크하여 요청을 넘겨줄 건지 정한다.
    대상의 유형을 지정해야 한다. 인스턴스(EC2 host), IP (EC2 등에 지정된 IP), Lambda함수를 선택할 수 있다.

 

ELB에 인증서 추가

 

 

설정 5단계 : 대상 등록 (EC2 인스턴스의 경우)

앞서 선택한 subnet들에 있는 running 중인 인스턴스들이 나타나면, 로드밸런싱할 인스턴스들을 선택해서
"등록된 항목에 추가" 클릭

 

ELB에 인증서 추가

 

 

6단계 : 검토

- 설정한 값들이 맞는지 최종 확인하고 "생성"클릭

 

ELB에 인증서 추가

 

 

이렇게 해서 Application Load Balancer 설정을 완료.

미션 컴플릿!

 

#LoadBalancer #인증서 #pem파일 #awsloadbalancersetting #ApplicationLoadBalancer #로드밸런서 #ELB

 

반응형
반응형

웹페이지 제작을 bitnami/WordPress를 이용하는 경우에,

웹어플리케이션 서버는 apache를 이용하지만, 인증서 설정은 bitnami 환경설정에 작성해야 한다.

절차는,

1. 인증서 파일을 특정위치에 업로드/복사

   - 업로드/복사 방법은 scp, ftp, wget 등의 방법을 활용할 수 있겠다. 자세한 방법은 생략한다.

2. bitnami.conf 파일에 인증서파일 위치를 지정

  - https를 사용할테니, 443 설정부분에 SSL...예제설정이 들어있는데, 이 부분을 수정해준다.  

$ sudo vi /opt/bitnami/apache2/conf/bitnami/bitnami.conf
  
# bitnami.conf 
...
<VirtualHost _default_:443>
DocumentRoot "/opt/bitnami/apache2/htdocs"
SSLEngine on
# SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"         // --> 예제설정을 comment 처리
# SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"      // --> 예제설정을 comment 처리
SSLCertificateFile "/opt/bitnami/apache2/conf/www.doremifa.com_crt.pem"     // --> crt 파일 등록 
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/www.doremifa.com_key.pem"  // --> key 파일 등록 
SSLCACertificateFile "/opt/bitnami/apache2/conf/www.doremifa.com_fullchain.pem"  // --> chain 파일 등록
                        //  패스워드없는 인증서의 경우에는 chain 파일 등록이 필요없을 수도 있다
...

 

3. apache 재시작

$ sudo /opt/bitnami/ctlscript.sh restart apache

 

4. 확인

 - https 도메인 주소를 웹브라우저에서 열었을 때, 주소창 옆에 자물쇠모양(secured mark)이 표시되면 정상

WordPress에 인증서 등록 완료

 

반응형

+ Recent posts