connect rdp

connect rdp

connect rdp 명령은 대상(target)에 대한 세션을 인가하고, 연결을 위해 RDP 클라이언트를 호출해요. 명령이 로컬 주소와 포트를 채워 넣어 줘요.

출처: HashiCorp Boundary docs

본문

예시

다음 예시는 ID가 ttcp_1234567890인 대상에 세션을 인가하고, Windows 기본 RDP 클라이언트인 mstsc로 RDP 세션을 호출해요.

$ boundary connect rdp -target-id ttcp_1234567890

다음 예시는 ID가 ttcp_1234567890인 대상에 세션을 인가하고, macOS RDP 클라이언트용 사용자 지정 명령을 호출해요.

$ boundary connect rdp \
    -target-id ttcp_1234567890 \
    -exec bash \
    -- -c "open rdp://full%20address=s={boundary.addr} && sleep 600"

사용법 (Usage)

$ boundary connect rdp [options] [args]

이 명령은 대상 인가를 수행하거나 기존 인가 토큰을 사용해서 프록시된 RDP 연결을 시작해요.

connect 명령 옵션 (Connect command options)

  • -authz-token (string: "") — 대상에 대한 authorize-session 액션을 통해 Boundary 컨트롤러가 반환한 인증 문자열이에요. -target-id를 설정하지 않은 경우에만 이 옵션이 필요해요. 값을 -로 설정하면 표준 입력에서 인증 문자열을 읽으려고 시도해요. BOUNDARY_CONNECT_AUTHZ_TOKEN 환경 변수로도 지정할 수 있어요.
  • -exec (string: "") — 설정하면 워커에 연결한 뒤 실행할 바이너리를 지정해요. PATH에 있는 바이너리나 절대 경로여야 해요. 모든 명령 플래그 뒤에 --(공백 + 하이픈 두 개 + 공백)가 오면 그 뒤의 인자는 그 바이너리에 그대로 전달돼요. BOUNDARY_CONNECT_EXEC 환경 변수로도 지정할 수 있어요.
  • -host-id (string: "") — 대상의 호스트 집합 중 연결할 특정 호스트의 ID예요. 특정 호스트를 정하지 않으면 Boundary가 임의로 하나를 골라요.
  • -inactive-timeout=<duration> — 연결 사이에 경과할 수 있는 시간(초)으로, 이 시간이 지나면 Boundary가 사용하지 않는 세션을 닫아요. 오래 실행되는 프로세스 도중 프록시가 끊긴다면 이 값을 늘려도 돼요. -1을 쓰면 타임아웃을 완전히 끄는 거예요.
  • -target-id (string: "") — 세션을 인가할 대상의 ID예요. 이 옵션은 -authz-token과 함께 쓸 수 없어요.
  • -target-name (string: "") — 스코프 파라미터와 대상 이름으로 세션을 인가할 때 사용하는 대상 이름이에요.
  • -target-scope-id (string: "") — 스코프 파라미터와 대상 이름으로 세션을 인가할 때 사용하는 대상 스코프 ID예요. -scope-name과는 상호 배타적이에요. BOUNDARY_CONNECT_TARGET_SCOPE_ID 환경 변수로도 지정할 수 있어요.
  • -target-scope-name (string: "") — 스코프 파라미터와 대상 이름으로 세션을 인가할 때 사용하는 대상 스코프 이름이에요. -scope-id와는 상호 배타적이에요. BOUNDARY_CONNECT_TARGET_SCOPE_NAME 환경 변수로도 지정할 수 있어요.

템플릿 값 (Templated values)

명령 인자에 치환되는 템플릿 값들이 있고, 이 값들은 실행된 명령의 환경 변수로도 주입돼요:

  • {{boundary.ip}} (BOUNDARY_PROXIED_IP) — boundary connect가 연 리슨 소켓의 IP 주소예요.
  • {{boundary.port}} (BOUNDARY_PROXIED_PORT) — boundary connect가 연 리슨 소켓의 포트예요.
  • {{boundary.addr}} (BOUNDARY_PROXIED_ADDR) — host:port 형식의 주소예요. 본질적으로 {{boundary.ip}}:{{boundary.port}}와 같아요.

RDP 옵션

  • -style (string: "") — CLI가 RDP 클라이언트를 호출하는 방식을 지정해요. 값을 지정하지 않았다면 -exec에 적절한 기본값을 설정해 주기도 해요. 현재 이해되는 값은 mstsc인데, Windows에서는 기본값으로 Windows 클라이언트를 실행해요. Mac에서도 기본값으로 rdp:// URL을 실행해요. BOUNDARY_CONNECT_RDP_STYLE 환경 변수로도 지정할 수 있어요.

참고: Mac 클라이언트를 쓸 때 boundary connect rdp의 기본 타임아웃은 30초예요.

CLI 옵션 (CLI options)

명령별 옵션 외에, 모든 CLI 명령과 하위 명령에 공통으로 적용되는 옵션들이 있어요.

  • 연결 옵션 (Connection options)
  • 클라이언트 옵션 (Client options)
  • 출력 옵션 (Output options)
  • 환경 변수 (Environment variables)

더 알아보기 (Learn more)