첫 번째 타깃에 연결하기

첫 번째 타깃에 연결하기 (Connect to your first target)

첫 번째 타깃에 boundary connect를 실행하면, 공유 자격 증명이나 노출된 네트워크 없이 일반 SSH 연결처럼 사용할 수 있는 로컬 인증 프록시가 만들어져요. 이 주제는 사전 구성된 dev mode 타깃에 연결하고, 특정 타깃을 명시적으로 선택하며, SSH, RDP(원격 데스크톱 프로토콜), Kubernetes, 또는 데이터베이스 클라이언트용 connect helper를 고르는 과정을 안내합니다.

출처: HashiCorp Boundary docs

본문

기본 타깃에 연결

기본 타깃은 기본 포트가 22인 tcp 타깃입니다(이 포트는 TCP를 사용하는 기본 SSH 포트에 해당해요). 이 타깃은 주소로 127.0.0.1로 설정되어 있습니다. 이 타깃에 boundary connect를 실행하면 타깃의 기본 포트(127.0.0.1:22)에 그 주소로의 로컬 인증 프록시가 만들어집니다.

$ boundary connect -target-id ttcp_1234567890

주소 대신 호스트 세트를 사용하는 보조 tcp 타깃(ttcp_0987654321)도 있어요. 이 타깃의 호스트 세트는 주소 127.0.0.1인 기본 호스트를 포함합니다. 이 타깃에 boundary connect를 실행하면 사용 가능한 단일 호스트가 선택되고, 타깃의 기본 포트(127.0.0.1:22)에 그 호스트로의 로컬 인증 프록시도 만들어집니다.

boundary connect -target-id ttcp_0987654321

이 가이드의 목적상 두 타깃 모두 같은 목표를 달성하지만, 목적은 서로 달라요. 자세한 내용은 도메인 모델 문서를 참고하세요.

이 가이드의 나머지 부분에서는 기본 타깃을 사용한다고 가정합니다.

출력은 SSH 클라이언트가 사용해야 하는 주소와 포트를 표시해요. 다음 절에서는 ssh connect helper를 사용해서 클라이언트로 타깃에 더 쉽게 연결합니다.

boundary connect 명령에는 주목할 만한 옵션이 몇 가지 있습니다. 예를 들어 -listen-port는 connect 명령이 수신 연결을 기다릴 포트를 고르는 옵션이에요. 연결 주소를 선택할 수 있지만 포트는 선택할 수 없는 애플리케이션에서도 Boundary가 동작하게 하는 데 유용합니다. 많은 애플리케이션에는 여전히 추가적인 장애물이 있을 수 있는데, 그래서 connect helper가 유용합니다.

dev mode 기본 타깃은 승인된 세션 내에서 원하는 만큼 여러 번 연결할 수 있어요. 연결을 마쳤으면 boundary connect 프로세스를 Ctrl-C/Command-C하면 세션이 종료됩니다.

타깃 선택

boundary connect를 사용할 때는 연결에 사용할 타깃을 식별해야 해요. 이 문서의 관례는 타깃 ID를 사용하는데, 단일 명시적 값을 가리키기 때문입니다. 다만 다른 플래그도 지원됩니다:

플래그 설명
target-name 타깃의 이름
target-scope-id 타깃이 있는 스코프의 ID
target-scope-name 타깃이 있는 스코프의 이름

다만 이름은 스코프에 걸쳐 재사용될 수 있으므로 이들은 고유하게 식별하지 못한다는 점을 주의하세요. 그 결과 타깃 ID를 사용하지 않을 때는 Boundary가 원하는 타깃을 올바르게 식별할 수 있도록 타깃 이름을 스코프 이름이나 스코프 ID와 함께 사용해야 해요.

다음은 dev mode의 SSH 예시입니다:

$ boundary connect ssh -target-name "Generated target" -target-scope-name "Generated project scope"

Connect helpers

Boundary는 호스트 SSH 키 프롬프트를 자동으로 수락해 주는 connect helper를 포함합니다. 이들은 boundary connect <subcommand>로 작성되며 다음 연결 유형을 지원합니다:

  • HTTP
  • Kubernetes
  • PostgreSQL
  • RDP(원격 데스크톱 프로토콜)
  • SSH

자세한 내용은 Connect helpers 문서를 참고하세요.

내장 대 exec

내장 connect helper 외에도, boundary connect는 특정 클라이언트에 대한 내장 지원이 없을 때 -exec로 클라이언트 실행을 수용할 수 있어요. -exec 플래그는 매우 강력한 도구로, 선호하는 클라이언트에 Boundary TCP 세션을 감쌀 수 있게 해줍니다. 이 플래그를 사용해 거의 모든 것에 대한 인증 프록시를 만들 수 있어요.

자세한 내용은 Exec 플래그 문서를 참고하세요.

SSH ProxyCommand

SSH ProxyCommand를 사용하면 사용자가 만든 구성 파일에 따라 타깃에 SSH 연결을 프록시할 수 있어요. 일반적인 개발자와 운영자 워크플로를 단순화하는 데 도움이 됩니다. 타깃 ID나 타깃 도메인에 연결하도록 파일을 구성할 수 있어요.

자세한 내용은 SSH ProxyCommand 문서를 참고하세요.

데스크톱 클라이언트

데스크톱 클라이언트를 사용하는 동안 타깃을 선택하고 연결해서 로컬 프록시 상세 정보를 가져오세요.

다음 비디오는 Boundary Desktop Client에서 타깃을 선택하고 연결하는 모습을 보여줍니다.

더 알아보기 (Learn more)

스코프, 타깃, 아이덴티티, 세션 관리에 대한 심도 있는 논의는 기본 관리 워크플로 튜토리얼을 참고하세요.