사설 엔드포인트 사용

2세대

2세대 Cloud Databases 는 가상 사설 엔드포인트(VPE)를 통해 활성화된 사설 연결을 사용하여 ‘기본적으로 보안이 유지되는’ 방식을 구현합니다.

IBM Cloud® 내부 네트워크에 대한 액세스를 제한하는 비공개 엔드포인트를 사용하여, 원치 않는 액세스 및 보안 취약점으로부터 데이터와 애플리케이션을 보호합니다.

또한 프라이빗 엔드포인트는 데이터베이스로 전송되는 네트워크 트래픽에 대한 제어력을 높여 가시성을 향상시킬 뿐만 아니라, 규정 준수 및 규제 요건을 충족하고 있음을 입증할 수 있게 해줍니다.

이 문서는 2세대 Cloud Databases 의 모든 모델( Databases for PostgreSQL 및 Databases for MongoDB )을 다룹니다. 가상 사설 엔드포인트를 설정하면 비용이 발생하며, 사설 엔드포인트를 사용하는 IBM Cloud VPC 서비스에는 네트워크 전송 요금이 부과됩니다. 요금은 전송된 데이터 양에 따라 산정되며, 단계별 요금제를 따릅니다. 비용 산정 도구를 사용하여 예상 사용량을 바탕으로 견적을 산출해 보세요.

사설 엔드포인트를 통해 VPC 인스턴스에 연결하는 방법

사설 엔드포인트를 통해 로컬 장치나 VPC 외부의 클라이언트에서 인스턴스에 액세스할 수 있습니다. VPE for VPC 에 연결하여 VPC 네트워크에서 시작되는 서비스 및 인스턴스에 대한 안전한 연결을 제공하십시오. Gen 2 (VPC) 인스턴스에 연결하는 방법은 연결하는 위치와 애플리케이션이 실행되는 위치에 따라 다릅니다.

  1. VSI를 통한 VPE - 이 방법은 가상 사설 클라우드(VPC) 내에 위치한 가상 서버 인스턴스(VSI)를 사용하고, 가상 사설 엔드포인트(VPE)를 활용하여 VPC 내 리소스와 외부 IBM Cloud 서비스 간에 안전하고 사적인 연결을 제공합니다.
  2. VPE(클라이언트-사이트)를 통해 설정된 VPN 연결을 사용하십시오. 이 VPN을 사용하면 VPC/VPE를 통해 로컬 노트북이나 클라이언트에서 연결하고 관리할 수 있습니다. 자세한 내용은 ‘클라이언트에서 사이트로’를 참조하십시오.
  3. VPC/VPN 게이트웨이를 사용하여 클라우드 리소스에 대한 안전하고 비공개적인 온프레미스 액세스를 구현하십시오. 자세한 내용은 사이트 간 을 참조하십시오.

VSI를 통한 가상 사설 엔드포인트 구축

1단계: VPC 생성

IBM Cloud 의 지침에 따라 가상 사설 클라우드(VPC)를 생성하십시오. VPC가 데이터베이스 배포와 동일한 리전에 있는지 확인하십시오.

2단계: VSI 및 SSH 키 생성

  1. VPC UI용 가상 서버 인스턴스가상 서버 인스턴스 생성 방법 를 사용하여 VPC 내에서 VSI를 프로비저닝합니다. VSI에 플로팅 IP를 할당하여 외부에서 SSH로 접속할 수 있도록 합니다(테스트용으로는 선택 사항).
  2. 보안 로그인을 위해 SSH 키를 생성하고 첨부하세요. SSH 키 쌍을 생성하는 방법에 대한 자세한 지침은 “SSH 키 시작하기”를 참조하십시오.
  3. 키 쌍이 준비되면, 안전한 SSH 키 관리에 대한 모범 사례를 따르기 위해 개인 키를 로컬 머신의 ~/.ssh 디렉터리로 이동하십시오.
  4. 개인 키의 권한을 변경하십시오. 이렇게 하면 파일 소유자에게는 해당 키가 읽기 전용으로 설정됩니다. macOS, 와 같은 Unix 계열 시스템에서는 다음 명령을 실행하십시오:

$ chmod 400 ~/.ssh/<NAME_OF_THE_SSH_KEY>

  1. 다음 명령어를 사용하여 VSI에 SSH로 접속하십시오:

$ ssh -i ~/.ssh/<NAME_OF_THE_SSH_KEY> root@<FLOATING_IP_ADDRESS>

3단계: VPE 생성

IBM Cloud 콘솔에서 메뉴 아이콘을 클릭한 다음, VPC 인프라 > 네트워크 > 가상 사설 엔드포인트 게이트웨이를 선택합니다. 이 지침 에 따라 Cloud Databases 인스턴스용 VPE를 생성하십시오.

VPE를 VPC 및 서브넷에 연결하십시오.

4단계: VPC 보안 그룹 업데이트

VSI에서 데이터베이스 인스턴스로의 아웃바운드 트래픽이 허용되도록 보안 그룹을 수정하십시오. 데이터베이스(예: PostgreSQL 또는 MongoDB )에 필요한 포트가 열려 있는지 확인하십시오.

5단계: 데이터베이스용 서비스 키 생성하기

IBM Cloud 의 CLI 또는 UI를 사용하여 데이터베이스용 서비스 키를 생성하십시오. 서비스 키에는 데이터베이스에 접근하는 데 필요한 정보가 포함되어 있습니다.

6단계: 비공개 엔드포인트를 사용하여 데이터베이스에 연결하기

필요한 데이터베이스 클라이언트를 설치하고 정상 작동 여부를 확인한 후, 서비스 키에 명시된 연결 정보를 사용하여 데이터베이스에 연결하십시오. 이 명령어는 데이터베이스에 따라 달라집니다. 데이터베이스별로 필요한 지침은 아래 표에 나열되어 있습니다.

비공개 액세스를 위한 클라이언트 도구 및 연결 명령어 예시
Service 클라이언트 도구 샘플 명령
Databases for PostgreSQL psql 로컬 컴퓨터에서 VSI로 루트 인증서를 전송하면 로컬 환경에서 VSI에 연결할 수 있습니다.$ PGPASSWORD=$PASSWORD psql “<PASSWORD> 다음 명령어를 사용하여 연결 상태를 확인할 수 있습니다(선택 사항):$ /list
Databases for MongoDB mongosh 다음 명령어를 사용하여 연결 상태를 확인할 수 있습니다:--eval "db.stats()"

VPN 연결을 사용하여 가상 사설 엔드포인트 설정하기

VPN을 사용하여 VPC에 연결하고 VPE에 액세스합니다. 이 VPN을 사용하면 로컬 노트북이나 클라이언트에서 VPC 내의 가상 사설 엔드포인트를 통해 인스턴스에 연결하고 관리할 수 있습니다.

1단계: VPC 생성

IBM Cloud 의 지침에 따라 가상 사설 클라우드(VPC)를 생성하십시오. VPC가 데이터베이스 배포와 동일한 리전에 있는지 확인하십시오.

2단계: VPE 생성

  1. IBM Cloud 콘솔에서 메뉴 아이콘을 클릭한 다음, VPC 인프라 > 네트워크 > 가상 사설 엔드포인트 게이트웨이를 선택합니다. 이 지침 에 따라 Cloud Databases 인스턴스용 VPE를 생성하십시오.
  2. VPE를 VPC 및 서브넷에 연결하십시오.

3단계: VPC 보안 그룹 업데이트

VSI에서 데이터베이스 인스턴스로의 아웃바운드 트래픽이 허용되도록 보안 그룹을 수정하십시오. 데이터베이스(예: PostgreSQL 또는 MongoDB )에 필요한 포트가 열려 있는지 확인하십시오.

4단계: VPN 서버 생성하기

  1. IBM Cloud 시크릿 매니저 인스턴스를 생성합니다.
  2. 시크릿 매니저에서 인증서 엔진을 생성하고 VPN 서버용 인증서를 생성합니다.
  3. VPN 서버가 인증서를 안전하게 가져올 수 있도록, VPN 서버에서 시크릿 매니저로 연결되는 서비스 간 인증을 위한 IAM 서비스를 생성합니다.
  4. 1단계에서 생성한 VPC를 지정하여 VPC용 VPN 서버를 생성합니다. 시크릿 매니저에 저장된 인증서를 사용하도록 구성하십시오.

이제 VPC와 안전한 터널을 구축할 수 있는 VPN 서버를 설정했습니다.

5단계: VPN에 연결하기

VPN 클라이언트 파일을 다운로드한 후, VPN 클라이언트를 사용하여 VPN에 연결하십시오.

6단계: 비공개 엔드포인트를 사용하여 데이터베이스에 연결하기

VPN을 통한 비공개 접속을 위한 클라이언트 도구 및 연결 명령어 예시
Service 클라이언트 도구 샘플 명령
Databases for PostgreSQL psql 다음 명령어를 사용하여 연결 상태를 확인할 수 있습니다:$ /list
Databases for MongoDB mongosh 다음 명령어를 사용하여 연결 상태를 확인할 수 있습니다:--eval "db.stats()"

온프레미스에서 VPC/VPN 게이트웨이 설정

VPC/VPN 게이트웨이를 사용하여 클라우드 리소스에 대한 안전하고 비공개적인 온프레미스 액세스를 구현하십시오.

1단계: VPC 생성

IBM Cloud 의 지침에 따라 가상 사설 클라우드(VPC)를 생성하십시오. VPC가 데이터베이스 배포와 동일한 리전에 있는지 확인하십시오.

2단계: VPE 생성

  1. IBM Cloud 콘솔에서 메뉴 아이콘을 클릭한 다음 -> VPC 인프라 -> 네트워크 -> 가상 사설 엔드포인트 게이트웨이를 선택합니다. 이 지침 에 따라 Cloud Databases 인스턴스용 VPE를 생성하십시오.
  2. VPE를 VPC 및 서브넷에 연결하십시오.

3단계: VPC 보안 그룹 업데이트

VPN과 게이트웨이, VPE 간의 트래픽을 허용하는 규칙을 보안 그룹에 적용하십시오.

4단계: VPN을 설정하여 연결을 구축하세요

  1. VPC에 VPN 게이트웨이를 생성합니다.
  2. 인기 있는 VPN 게이트웨이인 strongSwan을 사용하여 온프레미스 VPN 게이트웨이를 시뮬레이션하십시오.
  3. IBM Cloud DNS 해결기를 통해 쿼리가 전달되도록 DNS 해결을 구성합니다.

5단계: 네트워크에 로그인하기

VPN을 통해 연결하여 네트워크에 로그인하십시오. 서비스 간 VPN이 활성화된 상태에서는 보안 연결 경로가 자동으로 작동하여, 온프레미스 VSI 및 클라우드 바스티온 호스트에 액세스할 수 있습니다.

6단계: 비공개 엔드포인트를 사용하여 데이터베이스에 연결하기

필요한 클라이언트를 설치하고 정상 작동 여부를 확인하여 온프레미스 환경에서 데이터베이스에 연결하십시오. 각 데이터베이스의 클라이언트와 샘플 검증 명령어는 다음 표에 나와 있습니다

VPN을 통한 비공개 접속을 위한 클라이언트 도구 및 연결 명령어 예시
Service 클라이언트 도구 샘플 명령
Databases for PostgreSQL psql 다음 명령어를 사용하여 연결 상태를 확인할 수 있습니다(선택 사항):$ /list
Databases for MongoDB mongosh 다음 명령어를 사용하여 연결 상태를 확인할 수 있습니다:--eval "db.stats()"