Infograb logo
Teleport 클라이언트 소개

이 가이드는 Teleport에 인증하고 리소스에 접근하는 기본 사항을 다룹니다. Teleport로 보호된 리소스의 최종 사용자에게 작성되었으며, 끝 부분에 더 자세한 문서로 연결되는 링크가 포함되어 있습니다.

클라이언트 도구

tsh

tsh 를 사용하면 Teleport에 인증하고 리소스를 나열하고 연결할 수 있습니다. 다운로드tsh 설치 후, Teleport 클러스터에 로그인하십시오:

tsh login 을 사용하여 로컬 사용자로 Teleport에 인증하고 user를 Teleport 사용자 이름으로 할당합니다:

tsh login --proxy=teleport.example.com --user=user
Teleport 사용자 alice의 비밀번호를 입력하세요:보안 키를 선택하세요> 프로필 URL: https://teleport.example.com:443 로그인한 사용자: alice 클러스터: example.com 역할: access, requester 로그인: ubuntu, ec2-user Kubernetes: enabled 유효 기간: 2022-11-01 22:37:05 -0500 CDT [유효 기간 12시간0분0초] 확장: permit-agent-forwarding, permit-port-forwarding, permit-pty, private-key-policy

관리자가 구현한 경우, 인증 커넥터의 이름에 auth 플래그를 할당하여 tsh login 을 실행하여 SSO 사용자로 Teleport에 인증합니다:

tsh login --proxy=teleport.example.com --auth=your-idp-connector
브라우저 창이 자동으로 열리지 않으면 링크를 클릭하여 열어주세요: http://127.0.0.1:49927/1d80e257-ec61-4ed2-9403-784f8d35b2fe> 프로필 URL: https://teleport.example.com:443 로그인한 사용자: user@example.com 클러스터: example.com 역할: access, requester 로그인: ubuntu, ec2-user Kubernetes: enabled 유효 기간: 2022-11-01 22:37:05 -0500 CDT [유효 기간 12시간0분0초] 확장: permit-agent-forwarding, permit-port-forwarding, permit-pty, private-key-policy

Teleport가 귀하의 네트워크에 대해 어떻게 구성되었는지에 따라 --auth 플래그가 필요하지 않을 수 있습니다. 귀하의 사용 사례에 필요한 세부정보는 관리자에게 제공되어야 합니다.

Teleport Connect

Teleport Connect 앱은 tsh 와 동일한 리소스 접근을 편리한 그래픽 사용자 인터페이스로 제공합니다. 다운로드 후 Teleport Connect를 설치하면 로그인하고 단일 창에서 서버 및 데이터베이스 접근을 위한 세션을 시작할 수 있습니다.

  1. Teleport 클러스터에 연결하려면 CONNECT를 클릭하십시오:

    Teleport Connect의 새 인스턴스
  2. Teleport 클러스터의 주소(예: https://example.teleport.sh )를 입력하고 NEXT를 클릭하십시오.

  3. Teleport Connect는 사용자 이름, 비밀번호 및 MFA를 요구합니다.

    Teleport가 외부 Identity Provider (IdP)와 통합된 경우, 브라우저 창에서 해당 서비스로 인증하라는 메시지가 표시될 수 있습니다.

  4. 사용자가 접근할 수 있는 모든 리소스를 탐색하고 연결하십시오:

웹 UI

Teleport는 사용자가 Teleport와 상호작용할 수 있는 웹 인터페이스를 제공합니다. 예를 들어, 리소스에 접근하거나 Access Requests를 생성하는 등의 작업을 할 수 있습니다. 이는 일반적으로 Teleport에 연결하는 데 사용되는 동일한 URL(예: https://example.teleport.sh )에서 찾을 수 있지만, 웹 UI URL은 Teleport 배포를 관리하는 팀과 확인해야 합니다.

웹 UI는 Teleport Connect와 유사한 리소스 접근을 제공하며, 적절한 권한이 있는 사용자에게 Request 및 Activity 로그에 대한 추가 접근을 제공합니다.

프로토콜

서버 접근 (ssh )

tsh ls 를 사용하면 Teleport를 통해 접근할 수 있는 서버 목록이 표시됩니다:

tsh ls
Node Name Address Labels------------------- --------------- ----------------------------server1.example.com 192.0.2.24:3022 access=servers,hostname=server1server2.example.com 192.0.2.32:3022 access=servers,hostname=server2

서버에 연결하려면:

tsh ssh ubuntu@server1.example.com
ubuntu@server1:~$

Servers 탭에서 연결할 서버 옆의 CONNECT를 클릭합니다. Teleport 사용자에게 사용 가능한 사용자 이름을 선택하거나 입력합니다.

새 탭에서 Teleport Connect가 연결을 시작하고 터미널 환경을 제공합니다.

Servers 메뉴에서 Teleport 웹 UI는 사용자가 접근할 수 있는 모든 서버를 나열합니다. CONNECT 버튼을 클릭하면 해당 서버에 접근하기 위한 터미널 에뮬레이터가 있는 새 탭이 열립니다.

Kubernetes 접근 (kubectl )

Teleport를 통해 접근할 수 있는 Kubernetes 클러스터를 보려면, 다음 명령어를 실행합니다:

tsh kube ls
Kube Cluster Name Labels Selected ----------------- --------------------------- -------- mycluster env=dev

클러스터에 로그인하려면, 다음 명령어를 실행합니다. myclustertsh kube ls 에서 나열된 Kubernetes 클러스터 이름으로 변경합니다:

tsh kube login mycluster
"mycluster" Kubernetes 클러스터에 로그인했습니다. 연결을 테스트하려면 'kubectl version'을 시도하십시오.

tsh kube login 을 통해 Teleport 클러스터에 로그인하면, tsh 가 kubeconfig를 선택한 Kubernetes 클러스터를 가리키도록 업데이트합니다. 그러면 클러스터에 대해 kubectl 명령을 실행할 수 있습니다.

Teleport Connect에서 클러스터에 로그인한 후, Kubes 탭을 클릭하여 접근할 수 있는 Kubernetes 클러스터 목록을 확인합니다.

선택한 클러스터 옆의 Connect를 클릭합니다. Teleport Connect는 새 탭에서 터미널을 열고 클러스터에 인증합니다. 그 후 클러스터와 상호작용하기 위해 kubectl 명령을 실행할 수 있습니다.

Teleport 웹 UI에서 Kubernetes 탭을 클릭합니다. 본인은 연결할 수 있는 Kubernetes 클러스터 목록을 볼 수 있습니다.

선택한 클러스터를 찾아 Connect를 클릭합니다. 그러면 클러스터에 Teleport를 통해 연결하기 위해 터미널에서 실행할 수 있는 명령이 나열된 모달 창이 표시됩니다.

파일 전송

tsh scp 를 사용하면 Teleport 뒤에 있는 서버로 파일을 전송할 수 있습니다:

tsh scp some-file.ext server.example.com:
some-file.ext 7% |███████ | (25/342 MB, 2.9 MB/s) [9s:1m48s]

Teleport Connect를 사용하면 원격 서버로 파일을 전송할 수 있으며, macOS, Linux 및 Windows에서 실행됩니다. 활성 SSH 세션의 왼쪽 상단 모서리에 있는 화살표를 사용하여 파일을 업로드 및 다운로드할 수 있습니다:

시스템에서 파일을 드래그 앤 드롭하여 업로드할 수 있습니다:

Web UI의 왼쪽 상단 모서리에 있는 화살표를 사용하여 파일을 다운로드할 수 있습니다:

드래그 앤 드롭을 사용하여 업로드할 수도 있습니다:

데이터베이스 접근

tsh db ls 명령은 사용자가 사용할 수 있는 데이터베이스 목록을 표시합니다:

tsh db ls
Name Description Allowed Users Labels Connect----------------------------------------------- ----------- --------------- ------- -------------------------myelastic [alice elastic] env=devmysql-server1 (user: alice, db: teleport_example) [alice elastic] env=dev tsh db connect mysql-server1

tsh 를 통해 데이터베이스 서버에 연결하려면 해당 데이터베이스의 로컬 클라이언트가 필요합니다. 예를 들어, MySQL 또는 MariaDB 데이터베이스에 연결하려면 MySQL CLI 클라이언트가 필요합니다:

tsh db connect --db-user=alice --db-name=teleport_example mysql-server1

이 예에서 teleport_example 은 MySQL 서버에 미리 존재하는 데이터베이스입니다:

SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| teleport_example   |
+--------------------+
4 rows in set (0.09 sec)

다른 연결 유형이나 그래픽 데이터베이스 클라이언트를 연결하려면 소프트웨어를 가리키는 로컬 터널을 생성할 수 있습니다:

tsh proxy db myelastic --db-user=alice --tunnel
Elasticsearch 데이터베이스 "myelastic"에 대한 인증된 터널이 클러스터 "example.come"의 192.0.2.58:52669에서 시작되었습니다.
데이터베이스에 연결하려면 다음 명령 중 하나를 사용하십시오:
* 대화형 SQL 연결:
$ elasticsearch-sql-cli http://localhost:52669/
* curl로 단일 요청 실행:
$ curl http://localhost:52669/
데이터베이스 인증서 갱신됨: 2022-11-02T06:11:50Z까지 유효 [유효 기간 9h55m0s]

데이터베이스 탭에서 접근하려는 데이터베이스를 선택하고 연결을 클릭하십시오. Teleport 사용자에게 사용 가능한 사용자 이름을 선택하거나 입력하십시오.

Teleport Connect는 데이터베이스에 대한 터널 연결을 엽니다. 포트 번호를 복사하여 localhost 의 GUI 앱에 연결하거나 실행을 클릭하여 Teleport Connect 내에서 CLI 연결을 시작할 수 있습니다:

Teleport Web UI는 데이터베이스에 대한 직접 연결을 제공할 수는 없지만, 사용자에게 접근 가능한 데이터베이스를 데이터베이스 아래에 나열하고, 로컬 터미널 환경에서 연결하기 위한 tsh 명령을 제공합니다.

데스크탑 액세스

데스크탑 액세스는 Teleport 웹 UI를 통해 제공됩니다.

  1. 브라우저에서 Teleport 클러스터로 이동합니다 (예: https://example.teleport.sh ).
  2. 오른쪽 메뉴에서 데스크탑 을 선택합니다.
  3. 액세스할 데스크탑 옆에서 연결을 클릭합니다. Teleport 사용자에게 사용할 수 있는 사용자 이름을 선택하거나 입력합니다.
  4. Teleport는 새 브라우저 탭이나 창을 열고 RDP 세션을 시작합니다. 지정된 사용자로 로그인하는 데 잠시 기다려야 할 수도 있습니다.

다음 단계

이 가이드에서는 최종 사용자를 위한 Teleport의 기본 설치 및 액세스를 다루지만, 클라이언트 연결 섹션의 나머지 부분에서는 더 자세한 정보를 제공합니다.

  • tsh 는 Teleport를 통해 리소스에 접근하는 CLI 도구입니다. 이를 통해 Teleport에 인증하고 사용 가능한 서비스를 나열하며 직접 또는 프록시 터널을 통해 연결할 수 있습니다.

    tsh 명령줄 도구 사용하기 에서 더 자세히 알아보세요.

  • Teleport Connect는 Teleport를 통해 리소스에 연결하는 그래픽 유틸리티입니다. 이를 사용하여 서버, 데이터베이스 및 Kubernetes 클러스터에 연결합니다. Teleport Connect 사용하기 를 참조하세요.

Teleport 원문 보기