SSL/TLS를 사용하여 Lightsail MySQL 데이터베이스에 안전하게 연결 - Amazon Lightsail

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

SSL/TLS를 사용하여 Lightsail MySQL 데이터베이스에 안전하게 연결

Amazon Lightsail은 SSL 인증서를 생성하여 MySQL 관리형 데이터베이스에 프로비저닝할 때 이를 설치합니다. 인증서는 인증 기관(CA)에 의해 서명되고, SSL 인증서에 스푸핑 공격으로부터 보호해주는 SSL 인증서를 위한 일반 이름(CN)으로 데이터베이스 엔드포인트를 포함합니다.

Lightsail에서 생성한 SSL 인증서는 신뢰할 수 있는 루트 엔티티이며 대부분의 경우 작동하지만 애플리케이션이 인증서 체인을 허용하지 않는 경우 실패할 수 있습니다. 애플리케이션에서 인증서 체인을 허용하지 않는 경우 중간 인증서로 사용 중인 AWS 리전에 연결해야 할 수도 있습니다.

관리형 데이터베이스의 CA 인증서, 지원되는 AWS 리전및 애플리케이션에 대한 중간 인증서를 다운로드하는 방법에 대한 자세한 내용은 관리형 데이터베이스의 SSL 인증서 다운로드를 참조하세요

지원되는 연결

MySQL은 다음과 같은 버전에서 보안 연결을 위해 yaSSL을 사용합니다.

  • MySQL 버전 5.7.19 및 5.7 이전 버전

  • MySQL 버전 5.6.37 및 5.6 이전 버전

  • MySQL 버전 5.5.57 및 5.5 이전 버전

MySQL은 다음과 같은 버전에서 보안 연결을 위해 OpenSSL을 사용합니다.

  • MySQL 버전 8.0

  • MySQL 버전 5.7.21 및 5.7 이후 버전

  • MySQL 버전 5.6.39 및 5.6 이후 버전

  • MySQL 버전 5.5.59 및 5.5 이후 버전

MySQL 관리형 데이터베이스는 TLS(전송 계층 보안) 버전 1.0, 1.1 및 1.2를 지원합니다. 다음 목록은 MySQL 버전에 대한 TLS 지원을 보여줍니다.

  • MySQL 8.0 - TLS1.0, TLS 1.1 및 TLS 1.2

  • MySQL 5.7 - TLS1.0 및 TLS 1.1 TLS 1.2는 MySQL 5.7.21 이후 버전에서만 지원됩니다.

  • MySQL 5.6 - TLS1.0

  • MySQL 5.5 - TLS1.0

사전 조건 

SSL을 사용하여 MySQL 데이터베이스에 연결

SSL을 사용하여 MySQL 데이터베이스에 연결하려면 다음 단계를 수행합니다.

  1. 터미널 또는 명령 프롬프트 창을 엽니다.

  2. MySQL 데이터베이스 버전에 따라 다음 명령 중 하나를 입력합니다.

    • MySQL 5.7 이후 버전의 데이터베이스에 연결하려면 다음 명령을 입력합니다.

      mysql -h DatabaseEndpoint --ssl-ca=/path/to/certificate/rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u UserName -p

      명령에서 다음과 같이 바꿉니다.

      • DatabaseEndpoint데이터베이스의 엔드포인트와 함께.

      • /path/to/certificate/ rds-combined-ca-bundle .pem (데이터베이스용 인증서를 다운로드하고 저장한 로컬 경로 포함)

      • UserName데이터베이스의 사용자 이름과 함께.

      예:

      mysql -h ls-1c51a7c70a4fb55e542829a4e4e0d735ba42.czowadgeezqi.us-west-2.rds.amazonaws.com --ssl-ca=/home/ec2-user/rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u dbmasteruser -p
    • MySQL 6.7 이전 버전의 데이터베이스에 연결하려면 다음 명령을 입력합니다.

      mysql -h DatabaseEndpoint --ssl-ca=/path/to/certificate/rds-combined-ca-bundle.pem --ssl-verify-server-cert -u UserName -p

      명령에서 다음과 같이 바꿉니다.

      • DatabaseEndpoint데이터베이스의 엔드포인트와 함께.

      • /path/to/certificate/ rds-combined-ca-bundle .pem (데이터베이스용 인증서를 다운로드하고 저장한 로컬 경로 포함)

      • UserName데이터베이스의 사용자 이름과 함께.

      예:

      mysql -h ls-1c51a7c70a4fb55e542829a4e4e0d735ba42.czowadgeezqi.us-west-2.rds.amazonaws.com --ssl-ca=/home/ec2-user/rds-combined-ca-bundle.pem --ssl-verify-server-cert -u dbmasteruser -p
  3. 메시지가 나타나면 이전 명령에서 지정한 데이터베이스 사용자의 암호를 입력하고 Enter 키를 누릅니다.

    다음 예와 비슷한 결과가 나타나야 합니다.

    MySQL database connection.
  4. status를 입력하고 Enter 키를 눌러 연결 상태를 확인합니다.

    SSL 옆에 “사용 중인 암호” 값이 표시되면 연결이 암호화된 것입니다.

    MySQL database connection status.