1단계: 사전 조건 설정 - AWS CloudHSM

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

1단계: 사전 조건 설정

플랫폼마다 필요한 필수 조건이 다릅니다. 플랫폼에 맞는 아래의 사전 조건 섹션을 사용하세요.

클라이언트 SDK 사전 조건 5

클라이언트 SDK 5으로 웹 서버 SSL/TLS 오프로드를 설정하려면 다음이 필요합니다.

  • 두 개 이상의 하드웨어 보안 모듈(HSM)이 있는 활성 AWS CloudHSM 클러스터

    참고

    단일 HSM 클러스터를 사용할 수 있지만 먼저 클라이언트 키 내구성을 비활성화해야 합니다. 자세한 내용은 클라이언트 키 내구성 설정 관리클라이언트 SDK 5 구성 도구를 참조하세요.

  • 다음 소프트웨어가 설치된 Linux 운영 체제를 실행하는 Amazon EC2 인스턴스.

    • 웹 서버(NGINX 또는 아파치)

    • 클라이언트 SDK 5용 OpenSSL Dynamic Engine

  • HSM에서 웹 서버의 프라이빗 키를 소유하고 관리할 CU(Crypto User)입니다.

HSM에서 Linux 웹 서버 인스턴스를 설정하고 CU를 생성하려면
  1. AWS CloudHSM의 OpenSSL Dynamic Engine을 설치 및 구성합니다. OpenSSL 동적 엔진 설치에 대한 자세한 내용은 클라이언트용 OpenSSL 동적 엔진 SDK 5를 참조하세요.

  2. 클러스터에 액세스할 수 있는 EC2 Linux 인스턴스에서 NGINX 또는 Apache 웹 서버를 설치하세요.

    Amazon Linux
    • NGINX

      $ sudo yum install nginx
    • Apache

      $ sudo yum install httpd24 mod24_ssl
    Amazon Linux 2
    • Amazon Linux 2에서 최신 버전의 NGINX를 다운로드하는 방법에 대한 자세한 내용은 NGINX 웹 사이트를 참조하세요.

      Amazon Linux 2에서 사용할 수 있는 NGINX의 최신 버전은 OpenSSL의 시스템 버전보다 최신 버전의 OpenSSL을 사용합니다. NGINX를 설치한 후에는 OpenSSL Dynamic Engine 라이브러리에서 이 버전의 AWS CloudHSM OpenSSL이 예상하는 위치로 연결되는 심볼릭 링크를 생성해야 합니다.

      $ sudo ln -sf /opt/cloudhsm/lib/libcloudhsm_openssl_engine.so /usr/lib64/engines-1.1/cloudhsm.so
    • Apache

      $ sudo yum install httpd mod_ssl
    CentOS 7
    • CentOS 7에서 최신 버전의 NGINX를 다운로드하는 방법에 대한 자세한 내용은 NGINX 웹 사이트를 참조하세요.

      CentOS 7에서 사용할 수 있는 NGINX의 최신 버전은 OpenSSL의 시스템 버전보다 최신 버전의 OpenSSL을 사용합니다. NGINX를 설치한 후에는 OpenSSL Dynamic Engine 라이브러리에서 이 버전의 AWS CloudHSM OpenSSL이 예상하는 위치로 연결되는 심볼릭 링크를 생성해야 합니다.

      $ sudo ln -sf /opt/cloudhsm/lib/libcloudhsm_openssl_engine.so /usr/lib64/engines-1.1/cloudhsm.so
    • Apache

      $ sudo yum install httpd mod_ssl
    Red Hat 7
    • Red Hat 7에서 최신 버전의 NGINX를 다운로드하는 방법에 대한 자세한 내용은 NGINX 웹 사이트를 참조하세요.

      Red Hat 7에서 사용할 수 있는 NGINX의 최신 버전은 OpenSSL의 시스템 버전보다 최신 버전의 OpenSSL을 사용합니다. NGINX를 설치한 후에는 OpenSSL Dynamic Engine 라이브러리에서 이 버전의 AWS CloudHSM OpenSSL이 예상하는 위치로 연결되는 심볼릭 링크를 생성해야 합니다.

      $ sudo ln -sf /opt/cloudhsm/lib/libcloudhsm_openssl_engine.so /usr/lib64/engines-1.1/cloudhsm.so
    • Apache

      $ sudo yum install httpd mod_ssl
    CentOS 8
    • NGINX

      $ sudo yum install nginx
    • Apache

      $ sudo yum install httpd mod_ssl
    Red Hat 8
    • NGINX

      $ sudo yum install nginx
    • Apache

      $ sudo yum install httpd mod_ssl
    Ubuntu 18.04
    • NGINX

      $ sudo apt install nginx
    • Apache

      $ sudo apt install apache2
    Ubuntu 20.04
    • NGINX

      $ sudo apt install nginx
    • Apache

      $ sudo apt install apache2
    Ubuntu 22.04

    OpenSSL Dynamic Engine에 대한 지원은 아직 제공되지 않습니다.

  3. CloudHSM CLI를 사용하여 CU를 생성합니다. HSM 사용자 관리에 대한 자세한 내용은 CloudHSM CLI를 사용한 HSM 사용자 관리를 참조하십시오.

    작은 정보

    CU의 사용자 이름과 암호를 기록합니다. 나중에 웹 서버용 HTTPS 프라이빗 키와 인증서를 생성하거나 가져올 때 이 정보가 필요합니다.

이 단계들을 완료한 후 단계 2: 프라이빗 키 및 SSL/TLS 인증서 생성 또는 가져오기으로 이동합니다.

주의

  • 보안이 강화된 리눅스(SELinux) 및 웹 서버를 사용하려면 클라이언트 SDK 5가 HSM과 통신하는 데 사용하는 포트인 포트 2223에서 아웃바운드 TCP 연결을 허용해야 합니다.

  • 클러스터를 생성 및 활성화하고 EC2 인스턴스에 클러스터 액세스 권한을 부여하려면 AWS CloudHSM 시작하기의 단계를 완료하십시오. 시작하기에서는 HSM 1개와 Amazon EC2 클라이언트 인스턴스 1개로 활성 클러스터를 생성하는 방법에 대한 단계별 지침을 제공합니다. 이 클라이언트 인스턴스를 웹 서버로 사용할 수 있습니다.

  • 클라이언트 키 내구성을 비활성화하지 않으려면 클러스터에 HSM을 두 개 이상 추가하십시오. 자세한 내용은 HSM 추가 섹션을 참조하세요.

  • SSH 또는 PuTTY를 사용하여 클라이언트 인스턴스에 연결할 수 있습니다. 자세한 정보는 Amazon EC2 설명서의 SSH를 사용하여 Linux 인스턴스에 연결PuTTY를 사용하여 Windows에서 Linux 인스턴스에 연결 단원을 참조하세요.

Client SDK 3의 필요 조건

클라이언트 SDK 3으로 웹 서버 SSL/TLS 오프로드를 설정하려면 다음이 필요합니다.

  • HSM이 하나 이상 있는 활성 AWS CloudHSM 클러스터

  • 다음 소프트웨어가 설치된 Linux 운영 체제를 실행하는 Amazon EC2 인스턴스.

    • AWS CloudHSM 클라이언트 및 명령줄 도구

    • NGINX 또는 Apache 웹 서버 애플리케이션.

    • OpenSSL용 AWS CloudHSM Dynamic Engine

  • HSM에서 웹 서버의 프라이빗 키를 소유하고 관리할 CU(Crypto User)입니다.

HSM에서 Linux 웹 서버 인스턴스를 설정하고 CU를 생성하려면
  1. 시작하기의 단계를 수행합니다. 그러면 하나의 HSM과 Amazon EC2 클라이언트 인스턴스가 있는 활성 클러스터가 생깁니다. EC2 인스턴스는 명령줄 도구를 사용하여 구성됩니다. 이 클라이언트 인스턴스를 웹 서버로 사용합니다.

  2. 클라이언트 인스턴스에 연결합니다. 자세한 정보는 Amazon EC2 설명서의 SSH를 사용하여 Linux 인스턴스에 연결PuTTY를 사용하여 Windows에서 Linux 인스턴스에 연결 단원을 참조하세요.

  3. 클러스터에 액세스할 수 있는 EC2 Linux 인스턴스에서 NGINX 또는 Apache 웹 서버를 설치하세요.

    Amazon Linux
    • NGINX

      $ sudo yum install nginx
    • Apache

      $ sudo yum install httpd24 mod24_ssl
    Amazon Linux 2
    • NGINX 버전 1.19는 Amazon Linux 2의 클라이언트 SDK 3 엔진과 호환되는 NGINX의 최신 버전입니다.

      자세한 내용을 확인하고 NGINX 버전 1.19를 다운로드하려면 NGINX 웹 사이트를 참조하세요.

    • Apache

      $ sudo yum install httpd mod_ssl
    CentOS 7
    • NGINX 버전 1.19는 CentOS 7의 클라이언트 SDK 3 엔진과 호환되는 NGINX의 최신 버전입니다.

      자세한 내용을 확인하고 NGINX 버전 1.19를 다운로드하려면 NGINX 웹 사이트를 참조하세요.

    • Apache

      $ sudo yum install httpd mod_ssl
    Red Hat 7
    • NGINX 버전 1.19는 Red Hat 7의 클라이언트 SDK 3 엔진과 호환되는 NGINX의 최신 버전입니다.

      자세한 내용을 확인하고 NGINX 버전 1.19를 다운로드하려면 NGINX 웹 사이트를 참조하세요.

    • Apache

      $ sudo yum install httpd mod_ssl
    Ubuntu 16.04
    • NGINX

      $ sudo apt install nginx
    • Apache

      $ sudo apt install apache2
    Ubuntu 18.04
    • NGINX

      $ sudo apt install nginx
    • Apache

      $ sudo apt install apache2
  4. (선택 사항) 클러스터에 HSM을 더 추가합니다. 자세한 내용은 HSM 추가 섹션을 참조하세요.

  5. cloudhsm_mgmt_util을 사용하여 CU를 생성합니다. 자세한 내용은 HSM 사용자 관리 섹션을 참조하세요. CU의 사용자 이름과 암호를 기록합니다. 나중에 웹 서버용 HTTPS 프라이빗 키와 인증서를 생성하거나 가져올 때 이 정보가 필요합니다.

이 단계들을 완료한 후 단계 2: 프라이빗 키 및 SSL/TLS 인증서 생성 또는 가져오기으로 이동합니다.