내 인스턴스에 연결

이 페이지에서는 Google Distributed Cloud(GDC) 샌드박스 환경에 액세스하는 방법을 설명합니다.

GDC 샌드박스 인스턴스는 Google Cloud에서 호스팅되는 Google Distributed Cloud 에어 갭 환경의 시뮬레이션입니다. 실제 Google Distributed Cloud 에어갭 환경과 마찬가지로 GDC 샌드박스 인스턴스에서 실행되는 서비스와 가상 머신은 인터넷에 직접 연결되지 않습니다. 인스턴스와 상호작용하려면 GDC 샌드박스 게이트웨이를 통해 연결해야 합니다. GDC 샌드박스 인스턴스에서 실행되는 서비스와 VM뿐만 아니라 인터넷에도 액세스할 수 있는 가상 머신 (VM)입니다.

게이트웨이는 실제 Google Distributed Cloud 에어갭 환경에 액세스할 수 있는 비공개 네트워크의 머신을 대체하는 GUI 지원 기능이 완비된 Linux 가상 머신입니다. 다음과 같은 작업을 수행할 수 있습니다.

  • Google Distributed Cloud 에어 갭 환경의 웹 기반 관리 인터페이스인 GDC 콘솔에 액세스합니다.
  • 브라우저 기반 또는 명령줄 도구를 사용하여 인스턴스 관리 및 사용
  • 인터넷에서 소프트웨어와 리소스를 다운로드하여 인스턴스에 워크로드 배포

게이트웨이는 개발 머신이 아닙니다. 필요한 리소스가 프로비저닝되지 않으며 비영구적입니다.

이 페이지에서는 인스턴스의 웹 관리 인터페이스에 액세스하는 세 가지 옵션을 설명합니다.

  1. 로컬 Windows, macOS 또는 Linux 머신에서 원격 데스크톱 (RDP) 클라이언트를 사용하여 게이트웨이 GUI 환경에 액세스합니다.
  2. sshuttle이라는 도구를 사용하여 머신에서 게이트웨이로 보안 VPN과 유사한 터널을 만들어 자체 웹브라우저와 로컬에 설치된 기타 도구를 사용하여 인스턴스의 리소스에 직접 액세스할 수 있습니다.
  3. Compute Engine VM을 만들고 이를 클라이언트 머신으로 사용하여 이 목록의 다른 두 가지 방법 중 하나를 사용하여 게이트웨이 GUI 환경에 연결합니다.

게이트웨이 VM에는 인스턴스의 사용자가 게이트웨이에 연결할 때 사용할 수 있는 고정된 사용자 계정 집합(게이트웨이 계정이라고 함)이 사전 설치되어 있습니다. 이러한 계정은 25개이며 사용자 이름은 sandboxuser1부터 sandboxuser25까지 고정되어 있습니다. 이러한 사용자 이름은 변경할 수 없으며 게이트웨이 VM에서 새 사용자를 만들 수 없습니다. 이러한 계정은 게이트웨이에 원격 데스크톱 연결을 설정하고 VM에 로그인한 여러 사용자를 위해 별도의 데스크톱 및 셸 환경을 유지하는 데 주로 사용됩니다. 게이트웨이 계정과 GDC 샌드박스 인스턴스에 액세스할 수 있는 Google Cloud 사용자 계정 간에 명시적인 연결이 없습니다. 이러한 계정과 GDC 샌드박스 환경 내의 사용자 계정 간에도 명시적인 연결이 없습니다. 이 내용은 나중에 다루겠습니다. 여러 사용자가 인스턴스를 사용하는 경우 추적 스프레드시트를 만들어 각 사용자를 게이트웨이 계정에 할당하는 것이 좋습니다.

원격 데스크톱을 통해 환경에 액세스하는 경우 다음 옵션에서 OS와 지원되는 원격 데스크톱 클라이언트를 선택합니다.

OS 이름 OS 버전 지원되는 원격 데스크톱 클라이언트
Windows 11
  • Microsoft 원격 데스크톱
  • IAP 데스크톱
Ubuntu 22.04 Remmina, 버전 1.4.32
Debian 10 Rodete Remmina, 버전 1.4.32
macOS Microsoft 원격 데스크톱을 지원하는 모든 버전 Microsoft 원격 데스크톱, 최신 버전

시작하기 전에

인스턴스에 연결하는 프로세스를 시작하려면 액세스 권한 받기에 설명된 대로 GDC 샌드박스 혜택 이메일에 포함된 연결 정보가 필요합니다. 이메일에 지정된 기본 관리자가 아닌 경우 액세스 제어에 사용되는 Google 그룹에 추가되어야 합니다.

GDC Sandbox 환경에 액세스하기 전에 액세스 방법에 따라 다음을 완료해야 합니다.

환경 액세스

GDC Sandbox 환경에 액세스하려면 액세스 방법에 따라 다음 섹션을 완료하세요.

Linux

  1. Remmina가 설치되어 있는지 확인합니다.

    sudo apt-get install remmina
    
  2. GDC 샌드박스 인스턴스로의 터널을 시작합니다.

    gcloud compute start-iap-tunnel GDC_SANDBOX_INSTANCE_NAME 3389 --project=PROJECT_NAME \
    --zone=ZONE --local-host-port=localhost:PORT_NUMBER
    

    다음을 바꿉니다.

    • GDC_SANDBOX_INSTANCE_NAME: GDC Sandbox 인스턴스의 이름입니다. 이 이름은 GDC 샌드박스팀에서 제공합니다.
    • PORT_NUMBER: 사용자가 정의한 포트 번호입니다. 예를 들면 8888입니다.
    • PROJECT_NAME: 프로젝트의 이름
    • ZONE: 환경이 있는 영역입니다. 이 이름은 GDC 샌드박스팀에서 제공합니다.
  3. 로컬 환경에서 Remmina를 엽니다.

  4. 왼쪽 상단에 있는 새 연결 프로필을 클릭하여 새 프로필 만들기를 시작합니다.

  5. 서버 필드에 localhost:PORT_NUMBER 형식으로 URL을 입력합니다.

  6. 사용자 이름 필드에 이 페이지의 소개에 설명된 게이트웨이 계정 중 하나의 이름을 입력합니다. 이러한 값은 sandboxuser1부터 sandboxuser20까지의 패턴을 따릅니다.

  7. 비밀번호에 초기 비밀번호와 동일한 사용자 이름을 입력합니다.

  8. Resolution 필드로 이동하여 use client resolution을 선택합니다.

  9. 저장 및 연결을 클릭합니다.

이제 게이트웨이에서 실행되는 가상 데스크톱에 연결되었습니다. 게이트웨이 환경 내에서 다음 단계를 실행합니다.

  1. 게이트웨이에 처음 연결하는 경우 비밀번호를 새 비밀번호로 변경합니다.
    1. 터미널 창을 엽니다.
    2. passwd를 입력하고 Enter 키를 누릅니다.
    3. 메시지가 표시되면 현재 비밀번호를 입력합니다.
    4. 새 비밀번호를 입력하고 다시 입력하여 확인합니다.
    5. 터미널 창에 Password updated successfully가 표시됩니다.
  2. 게이트웨이 내에서 Chrome 브라우저를 엽니다.
  3. Chrome 브라우저에 인증서를 설치합니다 (일회성 설정).
    1. Chrome > 설정 > 개인 정보 보호 및 보안 > 보안으로 이동합니다.
    2. 인증서 관리로 이동합니다.
    3. 기관 탭으로 전환한 다음 가져오기를 클릭합니다.
    4. /usr/local/share/ca-certificates/web-tls-certs.crt에서 인증서를 찾아 선택을 클릭합니다.
    5. 체크박스를 모두 선택하고 확인을 클릭합니다.
    6. 이제 인증서가 트러스트 저장소에 추가됩니다.
  4. 주소 표시줄에 URL https://console.org-1.zone1.google.gdch.test를 입력하여 GDC 샌드박스 인스턴스의 GDC 콘솔에 액세스합니다.

Windows

  1. PowerShell 창을 엽니다.
  2. GDC 샌드박스 인스턴스로의 터널을 시작합니다.

    gcloud compute start-iap-tunnel GDC_SANDBOX_INSTANCE_NAME 3389 --project=PROJECT_NAME \
    --zone=ZONE --local-host-port=localhost:PORT_NUMBER
    

    다음을 바꿉니다.

    • GDC_SANDBOX_INSTANCE_NAME: GDC Sandbox 인스턴스의 이름입니다. 이 이름은 GDC 샌드박스팀에서 제공합니다.
    • PORT_NUMBER: 사용자가 정의한 포트 번호입니다. 예를 들면 8888입니다.
    • PROJECT_NAME: 프로젝트의 이름
    • ZONE: 환경이 있는 영역입니다.
  3. 로컬 환경에서 Microsoft 원격 데스크톱을 엽니다.

  4. 컴퓨터 입력란에 localhost:PORT_NUMBER 형식으로 URL을 입력합니다.

  5. 연결을 클릭합니다. 성공하면 로그인 대화상자가 표시됩니다.

  6. 사용자 이름 필드에 이 페이지의 소개에 설명된 게이트웨이 계정 중 하나의 이름을 입력합니다. 이러한 값은 sandboxuser1부터 sandboxuser20까지의 패턴을 따릅니다.

  7. 비밀번호에 초기 비밀번호와 동일한 사용자 이름을 입력합니다.

  8. 확인을 클릭합니다.

이제 게이트웨이에서 실행되는 가상 데스크톱에 연결되었습니다. 게이트웨이 환경 내에서 다음 단계를 실행합니다.

  1. 게이트웨이에 처음 연결하는 경우 비밀번호를 새 비밀번호로 변경합니다.
    1. 터미널 창을 엽니다.
    2. passwd를 입력하고 Enter 키를 누릅니다.
    3. 메시지가 표시되면 현재 비밀번호를 입력합니다.
    4. 새 비밀번호를 입력하고 다시 입력하여 확인합니다.
    5. 터미널 창에 Password updated successfully가 표시됩니다.
  2. 게이트웨이 내에서 Chrome 브라우저를 엽니다.
  3. Chrome 브라우저에 인증서를 설치합니다 (일회성 설정).
    1. Chrome > 설정 > 개인 정보 보호 및 보안 > 보안으로 이동합니다.
    2. 인증서 관리로 이동합니다.
    3. 기관 탭으로 전환한 다음 가져오기를 클릭합니다.
    4. /usr/local/share/ca-certificates/web-tls-certs.crt에서 인증서를 찾아 선택을 클릭합니다.
    5. 체크박스를 모두 선택하고 확인을 클릭합니다.
    6. 이제 인증서가 트러스트 저장소에 추가됩니다.
  4. 주소 표시줄에 URL https://console.org-1.zone1.google.gdch.test를 입력하여 GDC 샌드박스 인스턴스의 GDC 콘솔에 액세스합니다.

macOS

  1. 터미널 창을 엽니다.
  2. GDC 샌드박스 인스턴스로의 터널을 시작합니다.

    gcloud compute start-iap-tunnel GDC_SANDBOX_INSTANCE_NAME 3389 --project=PROJECT_NAME \
    --zone=ZONE --local-host-port=localhost:PORT_NUMBER
    

    다음을 바꿉니다.

    • GDC_SANDBOX_INSTANCE_NAME: GDC Sandbox 인스턴스의 이름입니다. 이 이름은 GDC 샌드박스팀에서 제공합니다.
    • PORT_NUMBER: 사용자가 정의한 포트 번호입니다. 예를 들면 8888입니다.
    • PROJECT_NAME: 프로젝트의 이름
    • ZONE: 환경이 있는 영역입니다.
  3. Microsoft 원격 데스크톱을 엽니다.

  4. Add PC(PC 추가)를 클릭합니다.

  5. PC 이름 입력 필드에 localhost:PORT_NUMBER 형식으로 URL을 입력합니다.

  6. 추가를 클릭합니다. 성공하면 로그인 대화상자가 표시됩니다.

  7. 사용자 이름 필드에 이 페이지의 소개에 설명된 게이트웨이 계정 중 하나의 이름을 입력합니다. 이러한 값은 sandboxuser1부터 sandboxuser20까지의 패턴을 따릅니다.

  8. 비밀번호에 초기 비밀번호와 동일한 사용자 이름을 입력합니다.

  9. 확인을 클릭합니다.

이제 게이트웨이에서 실행되는 가상 데스크톱에 연결되었습니다. 게이트웨이 환경 내에서 다음 단계를 실행합니다.

  1. 게이트웨이에 처음 연결하는 경우 비밀번호를 새 비밀번호로 변경합니다.
    1. 터미널 창을 엽니다.
    2. passwd를 입력하고 Enter 키를 누릅니다.
    3. 메시지가 표시되면 현재 비밀번호를 입력합니다.
    4. 새 비밀번호를 입력하고 다시 입력하여 확인합니다.
    5. 터미널 창에 Password updated successfully가 표시됩니다.
  2. 게이트웨이 내에서 Chrome 브라우저를 엽니다.
  3. Chrome 브라우저에 인증서를 설치합니다 (일회성 설정).
    1. Chrome > 설정 > 개인 정보 보호 및 보안 > 보안으로 이동합니다.
    2. 인증서 관리로 이동합니다.
    3. 기관 탭으로 전환한 다음 가져오기를 클릭합니다.
    4. /usr/local/share/ca-certificates/web-tls-certs.crt에서 인증서를 찾아 선택을 클릭합니다.
    5. 체크박스를 모두 선택하고 확인을 클릭합니다.
    6. 이제 인증서가 트러스트 저장소에 추가됩니다.
  4. 주소 표시줄에 URL https://console.org-1.zone1.google.gdch.test를 입력하여 GDC 샌드박스 인스턴스의 GDC 콘솔에 액세스합니다.

sshuttle

이 프로세스를 완료하려면 서비스를 등록할 때 GDC 샌드박스팀에서 제공한 값이 필요합니다.

  • GDC_SANDBOX_INSTANCE_NAME: GDC Sandbox 인스턴스의 이름입니다.
  • PROJECT_NAME: 인스턴스를 호스팅하는 프로젝트입니다.
  • ZONE: 인스턴스를 포함하는 영역입니다.

다음 단계에 따라 sshuttle을 사용하여 인스턴스에 연결합니다.

  1. 인증서를 설치합니다 (일회성 설정).

    sshuttle을 사용하려면 인증서를 설치해야 합니다. 서비스에 액세스하는 데 사용하는 각 컴퓨터에서 이 작업을 한 번만 실행하면 됩니다.

    1. gcloud CLI를 사용하여 인증서를 다운로드합니다.
    gcloud compute scp \
    GDC_SANDBOX_INSTANCE_NAME:/usr/local/share/ca-certificates/web-tls-certs.crt \
    LOCAL_FILE_PATH --tunnel-through-iap \
    --project PROJECT_NAME \
    --zone ZONE
    

    다음을 바꿉니다.

    • GDC_SANDBOX_INSTANCE_NAME: GDC 샌드박스 인스턴스의 이름입니다.
    • LOCAL_FILE_PATH: 인증서를 다운로드할 로컬 경로입니다.
    • PROJECT_NAME: 프로젝트의 이름
    • ZONE: 인스턴스가 호스팅되는 영역입니다.
  2. CA 인증서를 Linux 트러스트 저장소에 추가합니다.

    1. 다운로드한 CA 인증서의 경로를 저장할 변수를 설정합니다.

      export CERT_PATH=LOCAL_FILE_PATH
      
    2. 인증서 파일에 줄바꿈이 없으면 추가하고 ca-certificates 디렉터리에 복사합니다.

      sed -i '$a\' ${CERT_PATH}
      sudo cp ${CERT_PATH} /usr/local/share/ca-certificates
      
    3. 트러스트 저장소에 인증서를 추가합니다.

      sudo update-ca-certificates
      
  3. Cloudtop Chrome 트러스트 저장소에 CA 인증서를 추가합니다.

    1. Chrome > 설정 > 개인 정보 보호 및 보안 > 보안으로 이동합니다.
    2. 인증서 관리로 이동합니다.
    3. 기관 탭으로 전환한 다음 가져오기를 클릭합니다.
    4. 이전 섹션에서 다운로드한 인증서를 찾아 Select를 클릭합니다.
    5. 체크박스를 모두 선택하고 확인을 클릭합니다.
    6. 인증서가 트러스트 저장소에 추가됩니다.
  4. 터미널을 열고 GDC 샌드박스 인스턴스로 연결되는 터널을 시작하는 명령어를 실행합니다.

    sshuttle -r GDC_SANDBOX_INSTANCE_NAME --no-latency-control \
    --ssh-cmd 'gcloud compute ssh --project PROJECT_NAME --zone ZONE --tunnel-through-iap' \
    10.200.0.0/16 --dns
    

    다음을 GDC 샌드박스팀에서 제공한 값으로 바꿉니다.

    • GDC_SANDBOX_INSTANCE_NAME: GDC 샌드박스 인스턴스의 이름입니다.
    • PROJECT_NAME: 프로젝트의 이름
    • ZONE: GDC 샌드박스 환경이 포함된 영역입니다.

    이 명령어가 실행되는 동안 로컬 머신에서 10.200.0.0/16로 전송되는 모든 네트워크 요청은 보안 터널을 통해 GDC 샌드박스 인스턴스로 라우팅됩니다.

  5. Chrome 브라우저를 엽니다.

  6. 주소 표시줄에 URL https://console.org-1.zone1.google.gdch.test를 입력하여 GDC 샌드박스 인스턴스의 GDC 콘솔에 액세스합니다. sshuttle가 실행되는 동안 이 URL은 게이트웨이를 통해 GDC Sandbox 환경으로 전달됩니다.

  7. 다음 섹션의 로그인 안내를 따라 진행하면 됩니다. 인스턴스 작업을 마치면 sshuttle 명령어가 실행 중인 터미널에서 Ctrl+C를 입력하여 sshuttle 프로세스를 종료합니다.

Compute Engine VM

Compute Engine VM에서 GDC 샌드박스 환경에 액세스하려면 시작 스크립트로 VM을 만들고 Chrome 원격 데스크톱을 사용합니다. VM을 만들고 환경에 액세스하려면 다음 단계를 따르세요.

  1. Cloud Shell 터미널을 엽니다.
  2. 사용 가능한 이미지 목록을 확인합니다.

    gcloud compute images list
    

    Debian-10 이미지와 이미지가 상주하는 프로젝트 이름을 기록합니다.

  3. 텍스트 파일을 만듭니다. 예를 들면 startup-script.txt입니다.

  4. 파일에 다음 시작 스크립트를 추가합니다.

    sudo apt-get upgrade
    curl https://dl.google.com/linux/linux_signing_key.pub \
        | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/chrome-remote-desktop.gpg
    echo "deb [arch=amd64] https://dl.google.com/linux/chrome-remote-desktop/deb stable main" \
        | sudo tee /etc/apt/sources.list.d/chrome-remote-desktop.list
    sudo apt-get update
    sudo DEBIAN_FRONTEND=noninteractive \
        apt-get install --assume-yes chrome-remote-desktop
    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes xfce4 desktop-base dbus-x11 xscreensaver
    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/xfce4-session" > /etc/chrome-remote-desktop-session'
    sudo systemctl disable lightdm.service
    sudo apt install --assume-yes task-xfce-desktop
    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes remmina
    
  5. Compute Engine VM 만들기

    gcloud compute instances create VM_NAME \
    --image-project=PROJECT_NAME \
    --image-family=debian-10 \
    --metadata=startup-script-from-file=SCRIPT_FILENAME
    

    다음을 바꿉니다.

    • VM_NAME: VM에 지정한 이름입니다. 예를 들어 test-vm입니다.
    • PROJECT_NAME: 이미지가 포함된 프로젝트의 이름입니다.
    • SCRIPT_FILENAME: 시작 스크립트가 포함된 파일의 이름입니다. 예를 들면 startup-script.txt입니다.
  6. VM 인스턴스에 Chrome 원격 데스크톱 설치에 따라 Chrome 원격 데스크톱을 설치합니다.

  7. VM 인스턴스에 연결에 따라 Chrome 원격 데스크톱을 활성화합니다.

Compute Engine VM에 연결한 후 다음 옵션 중 하나를 선택하여 인스턴스에 연결할 수 있습니다.

  • Linux 탭의 안내에 따라 Remmina를 사용하여 게이트웨이 데스크톱 GUI에 연결합니다.
  • sshuttle 탭의 안내에 따라 Compute Engine VM에서 게이트웨이로 터널을 만들고 VM의 브라우저와 터미널을 사용하여 GDC 샌드박스 인스턴스에 연결합니다.

GDC 콘솔에 로그인

  1. https://console.org-1.zone1.google.gdch.test/를 방문하면 GDC 콘솔의 로그인 페이지가 표시됩니다.
  2. Continue with fake-oidc-provider(가짜-oidc-provider로 계속)를 클릭합니다. 가짜 OIDC 제공업체 페이지가 표시됩니다.
  3. 사용자 선택 목록에서 플랫폼 관리자를 클릭합니다.

  4. 제출을 클릭합니다.

이제 GDC 콘솔에 로그인했습니다. 프로젝트 만들기의 단계에 따라 관리자 계정과 첫 번째 프로젝트를 설정합니다.

브라우저 문제가 발생하면 브라우저 창을 닫고 새 브라우저 페이지를 다시 연 다음 주소 표시줄에 https://console.org-1.zone1.google.gdch.test/을 입력합니다.

브라우저에서 로그인 페이지를 홈페이지로 추가 (선택사항)

편의를 위해 브라우저에서 GDC 콘솔을 홈 주소로 구성할 수 있습니다. 이는 원격 데스크톱을 사용하여 게이트웨이에서 실행되는 GUI에 액세스하는 경우 특히 유용합니다.

  1. 주소 표시줄에 https://console.org-1.zone1.google.gdch.test/를 입력합니다. 로그인 페이지가 표시됩니다.

  2. 브라우저 홈 버튼에 이 페이지를 추가하려면 브라우저를 선택합니다.

  3. Chrome 메뉴에서 Google Chrome 맞춤설정 및 제어를 선택합니다 .

  4. 사용자 이름  > Chrome 맞춤설정을 선택합니다.

  5. 탐색 메뉴에서 모양을 선택합니다.

  6. 홈 버튼 표시 전환 버튼을 사용으로 클릭하고 https://console.org-1.zone1.google.gdch.test/ URL을 입력합니다.

  7. 탐색 메뉴에서 시작 그룹을 선택합니다.

  8. 특정 페이지 또는 페이지 모음 열기를 선택하고 https://console.org-1.zone1.google.gdch.test/의 사이트 URL을 입력합니다. 추가를 클릭합니다.

브라우저를 열거나 홈 버튼을 클릭할 때마다 GDC Sandbox 사용자 인터페이스가 열립니다.