인포레터에서 최신 DevOps 트렌드를 격주로 만나보세요!
tsh CLI 참조
tsh
는 Teleport 사용자가 사용하는 CLI 클라이언트입니다. 사용자가 클러스터의 현재 및 과거 세션과 상호 작용하고, 노드 간 파일을 복사하며, 클러스터에 대한 정보를 나열할 수 있도록 합니다.
tsh 환경 변수
환경 변수는 tsh 클라이언트를 구성하며, 반복적으로 플래그를 사용하는 것을 피하는 데 도움을 줄 수 있습니다.
환경 변수 | 설명 | 예시 값 |
---|---|---|
TELEPORT_AUTH | 정의된 모든 인증 커넥터, passwordless 및 local (즉, 인증 커넥터 없음)을 포함 | okta |
TELEPORT_MFA_MODE | MFA 및 Passwordless 주장을 위한 기본 모드 | otp |
TELEPORT_CLUSTER | Teleport 루트 또는 리프 클러스터의 이름 | cluster.example.com |
TELEPORT_LOGIN | 원격 호스트에서 기본적으로 사용할 로그인 이름 | root |
TELEPORT_LOGIN_BIND_ADDR | 로그인 명령 webhook에 바인딩될 호스트:포트 형태의 주소 | host:port |
TELEPORT_LOGIN_BROWSER | SSO 로그인을 위해 시스템 기본 브라우저가 열리지 않도록 none 으로 설정합니다. 값이 none 이 아니면 tsh 가 시스템 기본 브라우저를 엽니다. | none |
TELEPORT_PROXY | Teleport 프록시 서버의 주소 | cluster.example.com:3080 |
TELEPORT_HOME | tsh 구성 및 데이터의 홈 위치 | /directory |
TELEPORT_USER | Teleport 사용자 이름 | alice |
TELEPORT_ADD_KEYS_TO_AGENT | 사용자 인증서가 실행 중인 SSH 에이전트에 저장되어야 하는지 여부를 지정합니다. | yes, no, auto, only |
TELEPORT_USE_LOCAL_SSH_AGENT | 로컬 SSH 에이전트 통합을 비활성화하거나 활성화합니다. | true, false |
TELEPORT_GLOBAL_TSH_CONFIG | 기본 /etc/tsh.yaml 에서 전역 tsh 구성 파일의 위치를 재정의합니다. | /opt/teleport/tsh.yaml |
TELEPORT_HEADLESS | 헤드리스 인증 사용 | true, false, 1, 0 |
TELEPORT_IDENTITY_FILE | 인증서 파일 경로 | /opt/identity |
tsh 전역 플래그
이름 | 기본 값 | 허용 값 | 설명 |
---|---|---|---|
-l, --login | 없음 | 신원 이름 | Teleport 사용자가 사용할 로그인 신원 |
--proxy | 없음 | host:https_port[,ssh_proxy_port] | Teleport 프록시 서비스 주소 |
--user | $USER | 없음 | Teleport 사용자 이름 |
--ttl | 720 (12시간) | 정수 | tsh 사용자를 위해 발급된 인증서가 유효한 분 수 |
-i, --identity | 없음 | string 파일 경로 | 인증서 파일 |
--cert-format | standard | standard 또는 oldssh | SSH 인증서 형식. oldssh 는 사용자 역할이 SSH 인증서에 인코딩되는 방법을 허용하지 않는 이전 버전의 OpenSSH 서버를 지원합니다. |
--insecure | 없음 | 없음 | 서버의 인증서 및 호스트 이름을 확인하지 않습니다. 테스트 환경에서만 사용하십시오. |
--auth | local | 정의된 모든 인증 커넥터, passwordless 및 local (즉, 인증 커넥터 없음)을 포함 | 사용할 인증 커넥터의 유형을 지정합니다. |
--mfa-mode | auto | auto , cross-platform , platform 또는 otp | MFA 및 Passwordless 주장을 위한 선호 모드. |
--skip-version-check | 없음 | 없음 | 서버와 클라이언트 간의 버전 확인을 건너뜁니다. |
-d, --debug | 없음 | 없음 | stdout에 상세 로깅 |
-J, --jumphost | 없음 | 점프 호스트 | SSH 점프 호스트 |
--headless | 없음 | 없음 | 인증을 위해 헤드리스 WebAuthn을 사용합니다. |
--mlock | auto | auto , off , best_effort , strict | 프로세스 메모리를 잠가 클라이언트 비밀이 메모리에 저장되는 것을 보호합니다. |
tsh apps ls
사용 가능한 모든 애플리케이션을 나열합니다:
tsh apps ls
tsh clusters
tsh clusters [<flags>]
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
-q, --quiet | 없음 | 없음 | 출력에 헤더가 없습니다. |
글로벌 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다: --login
, --proxy
, --user
, --ttl
, --identity
, --cert-format
, --insecure
, --auth
, --skip-version-check
, --debug
, --jumphost
.
tsh help <subcommand>
를 실행하거나 글로벌 플래그 섹션 을 참조하십시오.
예시
tsh clusters클러스터 이름 상태
------------ ------
staging online
production offline
tsh clusters --quietstaging online
production offline
tsh config
SSH 클라이언트를 사용하여 Teleport가 관리하는 자격 증명으로 클러스터의 호스트에 연결할 수 있도록 OpenSSH 구성 세부정보를 출력합니다.
tsh config
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
-l, --login | 없음 | Linux 사용자 이름 | 사용할 기본 Linux 사용자 이름. SSH 구성의 User 옵션으로 변환됩니다. |
-p , --port | 3022 | 포트 | 사용할 기본 SSH 포트. SSH 구성의 Port 옵션으로 변환됩니다. |
예시
OpenSSH 구성 파일을 콘솔에 출력
tsh configTeleport 구성을 ssh 구성에 추가
tsh config >> ~/.ssh/config
tsh device enroll
현재 장치를 신뢰할 수 있는 장치로 등록합니다.
tctl devices enroll
를 통해 생성된 장치 등록 토큰이 필요합니다.
tsh device enroll --token=TOKEN
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--token | 없음 | 문자열 | 장치 등록 토큰 |
예시
tsh device enroll --token=AAAAAAAAAAAAAAAAAAAAAAAA-this-is-an-example장치 "C00AA0AAAA0A"/macOS 등록되었습니다.
tsh gcloud
Teleport 애플리케이션 서비스를 통해 gcloud
CLI 명령을 프록시합니다. gcloud
는 Google Cloud와 상호 작용하는 도구입니다. 사용자는 tsh gcloud
명령을 실행하기 전에 Teleport에서 Google Cloud 애플리케이션에 이미 인증되어 있어야 합니다.
tsh gcloud [--app] [<command>]
인수
command
: 인수 및 플래그를 포함하는 실행할 gcloud
명령입니다.
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--app | 현재 로그인한 Google Cloud 애플리케이션 | tsh apps ls 를 통해 나열된 Google Cloud 애플리케이션의 이름입니다. | 여러 Google Cloud 애플리케이션에 로그인한 경우, 명령을 실행할 Google Cloud 애플리케이션의 이름입니다. |
글로벌 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost
.
tsh help <subcommand>
를 실행하거나 글로벌 플래그 섹션 을 참조하십시오.
예시
tsh gcloud compute instances list
tsh gsutil
Proxy gsutil
CLI 명령을 Teleport 애플리케이션 서비스 통해 실행합니다. gsutil
은 Google Cloud Storage와 상호작용하기 위한 도구입니다. 사용자가 tsh gsutil
명령을 실행하기 전에 이미 Teleport에서 Google Cloud 애플리케이션에 인증되어 있어야 합니다.
tsh gsutil [--app] [<command>]
인수
command
: 실행할 gsutil
명령, 인수 및 플래그 포함.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--app | 현재 로그인된 Google Cloud 애플리케이션 | tsh apps ls 를 통해 나열된 Google Cloud 애플리케이션의 이름. | 여러 Google Cloud 애플리케이션에 로그인한 경우, 명령을 실행할 Google Cloud 애플리케이션. |
전역 플래그
이 플래그들은 모든 명령에서 사용 가능합니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost
.
tsh help <subcommand>
을 실행하거나 전역 플래그 섹션을 참조하십시오.
예시
tsh gsutil ls
tsh help
도움을 출력합니다:
tsh help
tsh join
활성 세션에 조인합니다:
tsh join [<flags>] <session-id>
인수
<session-id>
session-id
teleport status
를 통해 세션에서 얻은 활성 Teleport 세션의 UUID.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--cluster | 없음 | 클러스터 이름 | 연결할 클러스터를 지정합니다. |
전역 플래그
이 플래그들은 모든 명령에서 사용 가능합니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost
.
tsh help <subcommand>
을 실행하거나 전역 플래그 섹션을 참조하십시오.
예시
teleport 사용자 joe를 ec2-user로 사용하여 세션 조인
tsh --user=joe --login=ec2-user join <session-id>
tsh kube login
Kubernetes 클러스터에 로그인합니다. tsh kube ls
를 사용하여 연결된 클러스터를 검색합니다.
tsh kube login <kube-cluster>
k8s 클러스터(gke_bens-demos_us-central1-c_gks-demo)에 로그인
tsh kube login gke_bens-demos_us-central1-c_gks-demoKubernetes 클러스터 "gke_bens-demos_us-central1-c_gks-demo"에 로그인했습니다. 연결을 테스트하려면 'kubectl version'을 시도하세요.
로그인 시 kubeconfig는 첫 번째 클러스터(알파벳 순서 기준)를 가리킵니다.
kubectl config current-contextaws-gke_bens-demos_us-central1-c_gks-demo
그러나 모든 클러스터는 컨텍스트로 채워집니다.
kubectl config get-contextsCURRENT NAME CLUSTER AUTHINFO NAMESPACE
* aws-gke_bens-demos_us-central1-c_gks-demo aws aws-gke_bens-demos_us-central1-c_gks-demo
aws-microk8s aws aws-microk8s
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--all | false | Boolean | 현재 Teleport 사용자가 접근할 수 있는 모든 Kubernetes 클러스터에 대한 kubeconfig를 생성할지 여부입니다. 이 값이 false인 경우, tsh 는 tsh kube login 명령어에 지정된 클러스터에 대해서만 kubeconfig를 생성합니다. |
--as | none | string | 현재 Teleport 사용자가 지정된 Kubernetes 클러스터에 인증할 때 로그인할 Kubernetes 사용자입니다. 이것은 Kubernetes 사용자인수를 사용하므로, Teleport 사용자의 Kubernetes 사용자는 대상 사용자를 가장할 수 있는 권한을 가져야 합니다. |
--as-groups | none | string | 현재 Teleport 사용자가 지정된 Kubernetes 클러스터에 인증할 때 로그인할 Kubernetes 그룹입니다. 이것은 Kubernetes 사용자인수를 사용하므로, Teleport 사용자의 Kubernetes 사용자는 대상 그룹을 가장할 수 있는 권한을 가져야 합니다. 이 플래그는 여러 번 포함하여 여러 Kubernetes 그룹을 가장할 수 있습니다. |
--cluster | none | string | 지정된 Kubernetes 클러스터에 연결하기 위해 로그인할 Teleport 클러스터의 이름입니다. |
-n , --kube-namespace | none | string | 사용자가 로그인하는 클러스터 내에서 기본값으로 구성할 Kubernetes 네임스페이스의 이름입니다. |
tsh kube ls
Kubernetes 클러스터 목록:
tsh kube ls
예시
tsh kube lsKube Cluster Name Selected
------------------------------------- --------
gke_bens-demos_us-central1-c_gks-demo *
microk8s
tsh 로그인
클러스터에 로그인합니다. tsh
가 로그인할 때, 자동 소멸 키는 ~/.tsh
에 저장되며 기본적으로 12시간 동안 유효합니다. 다른 간격을 --ttl
플래그를 통해 지정하지 않는 한 서버 측 구성에 의해 제한됩니다.
tsh login [<flags>] [<cluster>]
인수
<cluster>
- 클러스터의 이름입니다. 더 많은 정보는 신뢰할 수 있는 클러스터를 참조하십시오.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--bind-addr | none | host:port | 로그인 명령 웹훅을 위해 바인딩할 호스트:포트 형식의 주소입니다. |
--callback | none | host:port | 클러스터 로그인을 위해 브라우저를 열 때 보여지는 링크의 기본 URL(호스트:포트)을 재정의합니다. --bind-addr와 함께 사용해야 합니다. |
-o, --out | none | filepath | 신원 출력 파일 경로입니다. |
--format | file | file , openssh 또는 kubernetes | 신원 형식: file, openssh (OpenSSH 호환성 용) 또는 kubernetes (kubeconfig 용) |
--browser | none | none | tsh login 명령어로 시스템 기본 브라우저를 여는 것을 억제하려면 'none'으로 설정합니다. |
--request-roles | none | 하나 이상의 추가 역할을 요청합니다. | |
--request-reason | none | 추가 역할 요청 사유입니다. | |
--request-nowait | none | 요청 해결을 기다리지 않고 종료합니다. | |
--request-id | none | 주어진 요청에서 요청한 역할로 로그인합니다. | |
--no-use-local-ssh-agent | $SSH_AUTH_SOCK 로 지정된 로컬 ssh-agent에 생성된 SSH 인증서를 로드하지 않습니다. gpg-agent 또는 Yubikey를 사용할 때 유용합니다. TELEPORT_USE_LOCAL_SSH_AGENT 환경 변수를 false 로 설정할 수도 있습니다 (기본값 true ). |
전역 플래그
이 플래그는 모든 명령에 사용할 수 있습니다 --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost
.
tsh help <서브커맨드>
를 실행하거나 전역 플래그 섹션을 참조하십시오.
예제
프록시 엔드포인트는 이 형식으로 https 및 ssh 포트를 사용할 수 있습니다 host:https_port[,ssh_proxy_port]
https에 대해 포트 443과 3080을 모두 시도합니다
tsh --proxy=proxy.example.com loginhttps 및 SSH 프록시에 대해 포트 8080 및 8023을 사용합니다:
tsh --proxy=proxy.example.com:8080,8023 loginSSH 프록시에 대해 포트 8080 및 3023(기본값)을 사용합니다:
tsh --proxy=proxy.example.com:8080 login커스텀 SSH 포트로 포트 23을 사용하고, HTTPS 프록시 포트는 기본값으로 유지합니다
tsh --proxy=work.example.com:,23 login클러스터 "two"에 로그인 및 선택:
tsh --proxy=proxy.example.com login two기존 자격 증명과 프록시를 사용하여 클러스터 "two" 선택:
tsh login two매우 짧은 유효 기간의 인증서로 클러스터에 로그인
tsh --ttl=1 login로컬 Teleport 'admin' 사용자로 로그인:
tsh --proxy=proxy.example.com --auth=local --user=admin loginGitHub 커넥터가 "github"라고 가정할 때, SSO 공급자로 GitHub를 사용하여 로그인
tsh --proxy=proxy.example.com --auth=github login외부 공급자 로그인을 위한 시스템 기본 브라우저 열기 억제
tsh --proxy=proxy.example.com --browser=none클러스터에 로그인하고 로컬 kubeconfig 출력
tsh login --proxy=proxy.example.com --format=kubernetes -o kubeconfig클러스터에 대한 액세스 요청.
tsh login --proxy=proxy.example.com --request-reason="나는 프로덕션에서 디버그 스크립트를 실행해야 합니다"
tsh logout
클라이언트의 클러스터 인증서를 삭제합니다:
tsh logout
tsh ls
클러스터 노드 목록:
tsh ls [<flags>] [<label>]
Teleport의 Auth 서비스가 Teleport 노드를 목록화하라는 요청을 받을 때(예: 웹 UI에서 노드를 표시하거나 tsh ls
를 통해), 현재 사용자가 볼 수 있는 노드만 반환합니다.
사용자의 Teleport 클러스터의 각 노드에 대해 Auth 서비스는 다음과 같은 검사를 순서대로 적용하며, 하나의 검사가 실패할 경우 해당 노드를 사용자에게 숨깁니다:
- 사용자의 역할 중 어느 것도 노드의 레이블과 일치하는
deny
규칙을 포함하지 않습니다. - 사용자의 역할 중 최소 하나가 노드의 레이블과 일치하는
allow
규칙을 포함합니다.
예상치 못하게 노드가 보이지 않는 경우, 사용자의 역할에 적절한 allow
및 deny
규칙이 포함되어 있는지 확인하십시오. 이는 Teleport Access Controls Reference에서 문서화되어 있습니다.
인수
<labels>
- 노드를 필터링할key=value
레이블의 쉼표로 구분된 목록, 예:env=dev,host=foo
.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
-v, --verbose | 없음 | 없음 | 노드 ID도 인쇄 |
전역 플래그
이 플래그는 모든 명령에 사용할 수 있습니다 --login
, --proxy
, --user
, --ttl
, --identity
, --cert-format
, --insecure
, --auth
, --skip-version-check
, --debug
, --jumphost
.
tsh help <서브커맨드>
를 실행하거나 전역 플래그 섹션을 참조하십시오.
예제
tsh ls노드 이름 주소 레이블
--------- ------------------ ------
grav-00 10.164.0.0:3022 os:linux
grav-01 10.156.0.2:3022 os:linux
grav-02 10.156.0.7:3022 os:osx
tsh ls -v노드 이름 노드 ID 주소 레이블
--------- ------------------------------------ ------------------ ------
grav-00 52e3e46a-372f-494b-bdd9-a1d25b9d6dec 10.164.0.0:3022 os:linux
grav-01 73d86fc7-7c4b-42e3-9a5f-c46e177a29e8 10.156.0.2:3022 os:linux
grav-02 24503590-e8ae-4a0a-ad7a-dd1865c04e30 10.156.0.7:3022 os:osx
os 레이블이 'osx'로 설정된 노드만 표시:
tsh ls os=osx노드 이름 주소 레이블
--------- ------------------ ------
grav-02 10.156.0.7:3022 os:osx
tsh mfa 추가
새로운 다단계 인증(MFA) 장치를 등록합니다:
tsh mfa add
예시
tsh mfa add장치 유형 선택 [TOTP, WEBAUTHN]: webauthn
장치 이름 입력: desktop yubikey
등록된 보안 키 중 하나를 누르세요
새 보안 키를 누르세요
MFA 장치 "desktop yubikey"가 추가되었습니다.
tsh mfa add장치 유형 선택 [TOTP, WEBAUTHN]: totp
장치 이름 입력: android
등록된 보안 키 중 하나를 누르세요
TOTP 앱을 열고 다음 필드로 새 수동 항목을 만드세요:
이름: awly@example.com:3080
발급자: Teleport
알고리즘: SHA1
숫자 자리 수: 6
주기: 30s
비밀: 6DHDR7GWA7ZKLLWEWRIF55WXJKZ52UVJ
생성된 후, 앱에서 생성된 OTP 코드를 입력하세요: 123456
MFA 장치 "android"가 추가되었습니다.
tsh mfa 목록
등록된 모든 다단계 인증(MFA) 장치를 나열합니다:
tsh mfa ls
tsh mfa 제거
등록된 다단계 인증(MFA) 장치를 제거합니다. 등록된 장치를 보려면 tsh mfa ls
를 사용하세요.
tsh mfa rm <device-name>
tsh 재생
이전 세션을 재생합니다:
tsh play [<flags>] <id-or-file>
인수
<id-or-file>
id-or-file
과거 Teleport 세션의 UUID 또는 로컬 녹화 파일의 경로입니다.
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--cluster | 없음 | cluster_name | 연결할 클러스터를 지정합니다 |
--format | pty | json , yaml , pty , text | 재생 형식 |
--speed | 1x | 0.5x , 1x , 2x , 4x , 8x | 재생 속도 |
--skip-idle-time | false | true , false | 재생 중 유휴 시간을 건너뜁니다 |
전역 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
$ tsh help <subcommand>
를 실행하거나 전역 플래그 섹션을 참조하세요.
예시
tsh --proxy proxy.example.com play <session-id>서버에서 스트리밍 된 세션을 재생 중입니다.
tsh play 1fe153d1-ce8b-4ef4-9908-6539457ba4adjq를 사용하여 이벤트를 필터링 한 JSON 형식으로 로컬 세션을 재생 중입니다.
tsh play --format=json ~/play/0c0b81ed-91a9-4a2a-8d7c-7495891a6ca0.tar | jq '.event유휴 시간을 건너 뛰면서 2배 속도로 세션을 재생합니다.
tsh play --speed=2x --skip-idle-time 1fe153d1-ce8b-4ef4-9908-6539457ba4ad타이밍 데이터를 존중하지 않고 표준 출력으로 SSH 세션 기록을 덤프합니다.
tsh play --format=text 1fe153d1-ce8b-4ef4-9908-6539457ba4ad
tsh proxy app
애플리케이션 서비스 연결을 위한 로컬 TLS 프록시를 시작합니다.
이 프록시는 Teleport 클러스터에 한 번의 로그인 후 애플리케이션에 반복적으로 연결하는 데 사용할 수 있으며, CLI를 통해 애플리케이션과 상호 작용할 때 특히 유용합니다.
tsh proxy app [<flags>] <app>
인수
<app>
app
로컬 프록시를 시작할 애플리케이션의 이름입니다. 사용 가능한 애플리케이션 목록을 보려면tsh apps ls
를 실행하십시오.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
-p, --port | 없음 | 포트 번호 | 로컬 프록시의 소스 포트를 지정합니다. |
전역 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
.
tsh help <subcommand>
를 실행하거나 전역 플래그 섹션 을 참조하십시오.
예제
tsh proxy app <app>로컬 포트 10700에서 grafana에 대한 연결을 프록시합니다.
tsh proxy --port 10700 app grafana &127.0.0.1:10700에서 grafana에 대한 연결 프록시
curl http://127.0.0.1:10700/api/users
tsh proxy aws
AWS 액세스를 위한 로컬 프록시를 시작합니다. 사용자는 프록시가 시작되기 전에 Teleport를 통해 최소한 하나의 AWS 애플리케이션에 이미 로그인해야 합니다.
tsh proxy aws [<flags>]
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--app | 현재 로그인된 AWS 앱 | 문자열 | 여러 개에 로그인된 경우 사용할 AWS 애플리케이션의 선택적 이름 (tsh apps ls 에서 표시됨) |
-p , --port | 없음 | 포트 번호 | 로컬 프록시의 소스 포트를 지정합니다. |
-e , --endpoint-url | HTTP 프록시 | 엔드포인트 URL | AWS 엔드포인트 URL 역할을 하는 로컬 프록시를 실행합니다. 지정하지 않으면 로컬 프록시는 HTTPS 프록시로 작동합니다. |
-f , --format | unix | text , unix , command-prompt , 또는 powershell | AWS 프록시의 환경 변수를 출력하기 위한 선택적 형식 |
전역 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
.
tsh help <subcommand>
를 실행하거나 전역 플래그 섹션 을 참조하십시오.
예제
기본 설정으로 AWS에 대한 연결을 프록시합니다.
tsh apps login awsapptsh proxy aws출력에서 env 변수를 설정합니다.
aws s3 ls앱 awsapp2에 대한 127.0.0.1:10700의 AWS 연결을 프록시합니다.
tsh apps logins awsapp2tsh proxy aws --port=10700 --app=awsapp2출력에서 env 변수를 설정합니다.
aws s3 ls
tsh 프록시 azure
Azure 관리 서비스 정체성 엔드포인트에 대한 보안 액세스를 제공하는 로컬 프록시 서버를 시작합니다. 이는 사용자 지정 클라이언트 애플리케이션에서 Azure에 대한 액세스를 관리하는 데 유용합니다. 로컬 프록시는 Teleport 애플리케이션 서비스로 트래픽을 전달하며, 이 서비스는 Azure 관리 정체성을 사용하여 Azure에서 인증 토큰을 가져옵니다.
tsh proxy azure [<flags>]
명령은 로컬 프록시 서버의 주소와 연결에 필요한 환경 변수를 위한 export
명령을 출력합니다:
http://127.0.0.1:54321 에서 Azure 프록시를 시작했습니다.
포트 무작위 생성을 피하려면 --port 플래그를 사용하여 수신 포트를 선택할 수 있습니다.
프록시에 연결하려면 다음 자격 증명 및 HTTPS 프록시 설정을 사용하십시오:
export AZURE_CONFIG_DIR=/Users/myuser/.tsh/azure/my.teleport.cluster/azure
export HTTPS_PROXY=http://127.0.0.1:54321
export HTTP_PROXY=http://127.0.0.1:54321
export MSI_ENDPOINT=https://azure-msi.teleport.dev/123456789abcdef01234
export REQUESTS_CA_BUNDLE=/Users/myuser/.tsh/keys/teleport.example.com/myuser-app/teleport.example.com/azure-cli-localca.pem
tsh proxy azure
는 로컬 프록시를 전경에서 실행하므로, 로컬 프록시를 종료할 준비가 될 때까지 프로세스를 중단하거나 명령을 실행한 터미널을 종료하지 마십시오.
export
명령을 복사하여 두 번째 터미널에 붙여넣습니다.
로컬 프록시 서버를 실행하려면 사용자의 역할 중 하나에 애플리케이션 서비스에서 사용하는 정체성 중 하나를 포함하는 spec.allow.azure_identities
필드가 있어야 합니다. Teleport를 통해 Azure에 대한 보안 액세스를 설정하는 방법을 알아보려면 Teleport 애플리케이션 액세스에 따라 Azure CLI 보호를 읽어보십시오.
인수
이 명령은 인수를 허용하지 않습니다.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--app | 없음 | 문자열 | Azure를 나타내는 Teleport 애플리케이션의 이름(즉, tsh apps ls 를 기반으로). 여러 Azure 애플리케이션에 액세스할 수 있는 Teleport 사용자의 경우 이 플래그를 사용하십시오. |
--port | 없음 | 포트 번호 | 로컬 프록시가 연결을 수신 대기할 localhost 의 포트입니다. |
--format | Windows의 경우 powershell , 그 외의 경우 unix | text , unix , command-prompt 또는 powershell | 로컬 프록시에 연결하는 Azure 클라이언트 애플리케이션의 환경 변수 목록 형식을 지정합니다. |
전역 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
. tsh help <subcommand>
를 실행하거나 전역 플래그 섹션을 참조하십시오.
tsh 프록시 db
TLS 라우팅이 활성화된 Teleport를 사용할 때 데이터베이스 연결을 위한 로컬 TLS 프록시를 시작합니다. 클라이언트는 로컬 프록시를 통해 Teleport에 등록된 데이터베이스에 연결할 수 있습니다.
tsh proxy db [<flags>] <db>
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--cluster | 없음 | 문자열 | 연결할 Teleport 클러스터의 이름입니다. |
--db-name | 아래 참조 | 문자열 | 로그인할 데이터베이스 이름입니다. |
--db-user | 아래 참조 | 문자열 | 로그인할 데이터베이스 사용자입니다. |
--port | 없음 | 문자열 | 로컬 프록시에서 사용하는 소스 포트입니다. |
--tunnel | 없음 | 불리언 | 데이터베이스의 클라이언트 인증서를 사용하여 인증된 터널을 열어 클라이언트가 인증을 필요로 하지 않도록 합니다. |
--db-user
또는 --db-name
이 필요한 경우, 기본 설정은 이전에 tsh db login
을 사용하여 획득한 활성 데이터베이스 인증서나 사용자가 허용된 db_users
또는 db_names
에서 선택됩니다.
데이터베이스 사용자는 항상 필요합니다.
PostgreSQL, MongoDB, Oracle 데이터베이스의 경우 데이터베이스 이름이 필요합니다.
글로벌 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다 --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
.
tsh help <subcommand>
를 실행하거나 글로벌 플래그 섹션을 참조하십시오.
예시
이름이 지정된 데이터베이스에 DB 연결 프록시 설정
tsh proxy db <db>
로컬 포트 10700에서 mysql db에 연결 프록시 설정:
tsh proxy db --port 10700 mysql-db127.0.0.1:10700 에서 DB 프록시 시작됨
mysql-db 프록시에 연결하기 위한 자격 증명 사용:
ca_file=/Users/jeff/.tsh/keys/teleport.example.com/cas/teleport.example.com.pem
cert_file=/Users/jeff/.tsh/keys/teleport.example.com/jeff-db/tele1c/mysql-db-x509.pem
key_file=/Users/jeff/.tsh/keys/teleport.example.com/jeff
자격 증명이 필요 없는 mysql db에 연결 프록시 설정:
tsh proxy db --tunnel mysql-db"mysql-db" 데이터베이스에 대한 인증된 터널이 "teleport.example.com" 클러스터 127.0.0.1:49415에서 시작됩니다.
데이터베이스에 연결하기 위한 다음 명령을 사용하십시오: $ mysql --port 49415 --host localhost --protocol TCP
tsh proxy gcloud
Google Cloud API 액세스를 위한 로컬 프록시를 시작합니다. 사용자는 프록시를 시작하기 전에 Teleport를 통해 최소한 하나의 Google Cloud 애플리케이션에 로그인해야 합니다.
tsh proxy gcloud [<flags>]
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
--app | 현재 로그인된 Google Cloud 앱 | string | 여러 개에 로그인한 경우 사용할 Google Cloud 애플리케이션의 선택적 이름 (tsh apps ls 에서 표시됨) |
-p , --port | 없음 | 포트 번호 | 로컬 프록시의 소스 포트를 지정합니다 |
-e , --endpoint-url | HTTP 프록시 | 엔드포인트 URL | Google Cloud 엔드포인트 URL로 사용할 로컬 프록시를 실행합니다. 지정하지 않으면 로컬 프록시는 HTTPS 프록시로 작동합니다. |
-f , --format | unix | text , unix , command-prompt , 또는 powershell | Google Cloud 프록시의 환경 변수를 인쇄하는 선택적 형식 |
글로벌 플래그
이 플래그는 모든 명령에서 사용할 수 있습니다 --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
.
tsh help <subcommand>
를 실행하거나 글로벌 플래그 섹션을 참조하십시오.
예시
tsh apps login google-cloud-apptsh proxy gcloud출력에서 env 변수를 설정합니다
gcloud compute instances listgsutil ls
tsh proxy ssh
Teleport를 TLS 라우팅 모드로 사용할 때 ssh
연결을 위한 로컬 TLS 프록시를 시작합니다.
이것은 일반적으로 Teleport를 통해 클라이언트로 ssh
를 사용하기 위한 SSH 클라이언트 구성의 일부로 사용됩니다.
OpenSSH 서버와 클라이언트 구성에 대한 OpenSSH 가이드를 참조하십시오.
tsh config
출력에는 ProxyCommand
지시문 내에 tsh proxy ssh
가 포함됩니다.
tsh proxy ssh [<flags>] <[user@]host>
인수
<[user@]host>
원격 호스트 이름 및 사용할 로그인
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--cluster | 없음 | Teleport 클러스터 | 연결할 Teleport 클러스터의 이름입니다. |
글로벌 플래그들
이 플래그는 모든 명령에 대해 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
.
tsh help <subcommand>
를 실행하거나 글로벌 플래그 섹션을 참조하십시오.
예제
다음 명령을 실행하여 OpenSSH 클라이언트 구성을 생성하십시오:
tsh config
이 명령은 다음 구성을 생성합니다:
# example.com 호스트에 대한 공통 플래그
Host *.example.com example.com
UserKnownHostsFile "/Users/jeff/.tsh/known_hosts"
IdentityFile "/Users/jeff/.tsh/keys/enterprise.teleportdemo.com/jeff"
CertificateFile "/Users/jeff/.tsh/keys/example.com/jeff-ssh/example.com-cert.pub"
PubkeyAcceptedKeyTypes +ssh-rsa-cert-v01@openssh.com
HostKeyAlgorithms ssh-rsa-cert-v01@openssh.com
# 프록시를 제외한 모든 example.com 호스트에 대한 플래그
Host *.example.com !example.com
Port 3022
ProxyCommand "/usr/local/bin/tsh" proxy ssh --cluster=example.com --proxy=example.com %r@%h:%p
이 출력은 ~/.ssh/config
(Mac/Linux) 또는 Windows 사용자 홈 디렉터리의 .ssh\config
에 기본 SSH 구성으로 배치되어야 합니다. 이것은 독립형 SSH 구성 파일로도 사용할 수 있습니다.
프록시 서비스 도메인의 하위 도메인에 대해 호스트에 ssh
명령을 실행하면, 이 SSH 구성은 ProxyCommand
를 사용하여 tsh proxy ssh
를 실행합니다:
ssh myuser@node1.example.com
tsh puttyconfig
현재 로그인한 Windows 사용자의 Windows 레지스트리에 PuTTY 저장 세션을 추가합니다.
$ tsh puttyconfig [--leaf <leaf-cluster-name>] [login@]hostname
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
-l, --login | 없음 | 리눅스 사용자 이름 | 사용할 기본 리눅스 사용자 이름입니다. SSH 구성의 User 옵션으로 변환됩니다. |
-p, --port | 3022 | 포트 | 사용할 기본 SSH 포트입니다. SSH 구성의 Port 옵션으로 변환됩니다. |
--leaf | 없음 | 리프 클러스터 이름 | 저장된 세션에 추가할 리프 클러스터 이름입니다. |
예제
'node'에 대해 사용자 'ec2-user'의 저장된 PuTTY 세션 추가
tsh puttyconfig ec2-user@node사용자 'ubuntu'의 Teleport에 등록된 OpenSSH 노드 'openssh'에 대한 저장된 PuTTY 세션 추가
tsh puttyconfig --port 22 ubuntu@openssh리프 클러스터 'example.teleport.sh'에서 사용자 'ec2-user'의 리프 노드에 대한 저장된 PuTTY 세션 추가
tsh puttyconfig --leaf example.teleport.sh ec2-user@leaf-node
tsh puttyconfig
에 대한 전체 문서를 참조하십시오.
tsh recordings ls
기록된 세션 목록입니다.
tsh recordings ls [<flags>]
Flags
Name | Default Value(s) | Allowed Value(s) | Description |
---|---|---|---|
--from-utc | 24 시간 전 | date | 기록이 나열되는 시간 범위의 시작. 형식 2006-01-02. 기본값은 24 시간 전입니다. |
--to-utc | 현재 | date | 기록이 나열되는 시간 범위의 끝. 형식 2006-01-02. 기본값은 24 시간 전입니다. |
--limit | 50 | number | 표시할 최대 기록 수. |
--last | 없음 | duration | 세션 기록이 나열될 과거의 기간. 형식 5h30m40s |
Global flags
이 플래그는 모든 명령에 사용할 수 있습니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost, --format
.
tsh help <subcommand>
를 실행하거나 Global Flags section를 참조하십시오.
예시
지난 24 시간의 기록된 세션 가져오기
tsh --proxy proxy.example.com recordings lsID Type Participants Hostname Timestamp------------------------------------ ---- ------------ -------- -------------------b0a04442-70dc-4be8-9308-7b7901d2d600 ssh jeff dev Nov 26 16:36:16 UTCc0a02222-70dc-4be8-9308-7b7901d2d600 kube alice Nov 26 20:36:16 UTCd0a04442-70dc-4be8-9308-7b7901d2d600 ssh navin test Nov 26 16:36:16 UTC세션은 tsh play 로 재생할 수 있습니다
tsh play c0a02222-70dc-4be8-9308-7b7901d2d602022년 11월 1일부터 11월 3일 사이의 기록된 세션 나열하기
tsh recordings ls --from-utc=2022-11-01 --to-utc=2022-11-3지난 6시간의 기록된 세션 검색
tsh recordings ls --last=6h0m0s
기록된 세션 가용성
기록된 세션은 감사 이벤트와 저장 백엔드 의 세션 기록 파일에 연결되어 있습니다.
세션 기록 파일을 사용할 수 없거나 기록된 세션에 대해 디렉터리 저장 백엔드를 사용하는 여러 인증 서버를 사용하는 경우 다음과 같은 오류가 발생할 수 있습니다.
감사 로그 및 기록된 세션에 대해 디렉터리 저장 백엔드를 사용하는 경우 해당 기록된 세션을 가진 인증 서버만 이를 검색할 수 있습니다.
tsh play c8e1b2c5-322a-4095-89e3-391edfd2da9bERROR: 세션 c8e1b2c5-322a-4095-89e3-391edfd2da9b 의 기록을 찾을 수 없습니다.
감사 로그를 결합한 보안 정보 및 이벤트 관리(SIEM) 서비스 사용은 사용 가능한 기록 목록을 통합하는 데 도움이 됩니다.
다운로드된 기록된 세션은 파일로 직접 재생할 수 있습니다.
tsh play c8e1b2c5-322a-4095-89e3-391edfd2da9b.tar
tsh request create
새로운 액세스 요청을 생성합니다.
tsh request create [<flags>]
플래그
이름 | 기본 값 | 허용 값 | 설명 |
---|---|---|---|
--roles | 없음 | 쉼표로 구분된 문자열 | 요청할 Teleport 역할 목록 |
--resource | 없음 | 문자열 (플래그를 반복하여 여러 리소스를 요청할 수 있음) | 요청할 리소스 ID |
--reason | 없음 | 문자열 | 요청 이유 (선택 사항) |
--reviewers | 없음 | 쉼표로 구분된 문자열 | 요청을 위한 추천 검토자 (선택 사항) |
--nowait | false | true 또는 false | 요청 해결을 기다리지 않고 종료 |
--request-ttl | 1시간 | 5s , 2m , 또는 3h 와 같은 상대적 기간 | 액세스 요청이 유효하지 않게 되기 전에 PENDING 상태로 유지되는 시간 |
--session-ttl | 현재 세션의 남은 시간 | 5s , 2m , 또는 3h 와 같은 상대적 기간 | 상승된 세션이 유효한 기간 |
--max-duration | 없음 | 5s , 2m , 3h , 또는 7d 와 같은 상대적 기간 | 상승된 세션의 최대 지속 시간을 정의하며, 7일까지 가능합니다. 할당된 역할은 max_duration 옵션이 지정되어야 합니다 (선택 사항) |
--assume-start-time | 없음 | 문자열 | 요청자가 역할을 가정할 수 있는 시간을 설정합니다 (RFC3339) |
주의 사항
--request-ttl
과 --session-ttl
값은 다음보다 클 수 없습니다:
- 최대 인증서 수명.
- 기존 세션 (인증서)의 남은 시간.
- 사용자의 역할에 의해 정의된 최대 세션 지속 시간.
최대 인증서 수명보다 긴 액세스를 요청하려면 --max-duration
을 사용하십시오.
tsh request drop
현재 아이덴티티에서 하나 이상의 액세스 요청을 제거합니다.
tsh request drop [<request-id>...]
인수
<request-id>
- 현재 아이덴티티에서 "제거"할 요청의 ID로, 이로 인해 귀하의 인증서가 상승된 역할 및/또는 리소스 제한을 잃게 됩니다. 요청 ID가 주어지지 않으면 기본값은 모든 액세스 요청을 제거하는 것입니다.
tsh request ls
액세스 요청 목록을 표시합니다.
tsh request ls
플래그
이름 | 기본 값 | 허용 값 | 설명 |
---|---|---|---|
--format | text | text , json , 또는 yaml | 출력 형식 |
--reviewable | false | true 또는 false | 현재 사용자에 의해 검토 가능한 요청만 표시 |
--suggested | false | true 또는 false | 현재 사용자를 검토자로 제안하는 요청만 표시 |
--my-requests | false | true 또는 false | 현재 사용자가 생성한 요청만 표시 |
tsh request review
액세스 요청을 검토합니다.
tsh request review [<flags>] <request-id>
플래그
이름 | 기본 값 | 허용 값 | 설명 |
---|---|---|---|
--approve | false | true 또는 false | 검토가 승인을 제안함 |
--deny | false | true 또는 false | 검토가 거부를 제안함 |
--reason | 없음 | 문자열 | 검토 이유 메시지 |
--assume-start-time | 없음 | 문자열 | 요청자가 역할을 가정할 수 있는 시간을 설정합니다 (RFC3339) |
인수
<request-id>
- 대상 요청의 ID
tsh 요청 검색
액세스 요청을 위한 리소스를 검색합니다.
tsh request search [<flags>]
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--kind | 없음 | node , kubernetes_cluster , db , app , windows_desktop | 검색할 리소스 종류(필수) |
--search | 없음 | 쉼표로 구분된 문자열 | 작은 따옴표로 묶인 쉼표로 구분된 검색 키워드 또는 구문 목록 |
--query | 없음 | 문자열 | 작은 따옴표로 묶인 predicate language로 쿼리 |
--labels | 없음 | 쉼표로 구분된 문자열 | 레이블로 필터링할 쉼표로 구분된 레이블 목록 (예: key=value1,key2=value2 ) |
tsh 요청 표시
액세스 요청 세부정보를 표시합니다.
tsh request show <request-id>
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--format | text | text , json , 또는 yaml | 출력 형식 |
인수
<request-id>
- 대상 요청의 ID
tsh scp
소스에서 대상지로 파일을 복사합니다:
tsh scp [<flags>] <source>... <dest>
인수
<source>
- 복사할 파일 경로<dest>
- 대상지
플래그
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
--cluster | 없음 | 클러스터 이름 | 연결할 클러스터 지정 |
-r, --recursive | 없음 | 없음 | 하위 디렉터리의 재귀 복사 |
-P, --port | 없음 | 포트 번호 | 원격 호스트에 연결할 포트 |
-q, --quiet | 없음 | 없음 | 조용한 모드 |
전역 플래그
이 플래그들은 모든 명령에 대해 사용할 수 있습니다: --login
, --proxy
, --user
, --ttl
, --identity
, --cert-format
, --insecure
, --auth
, --skip-version-check
, --debug
, --jumphost
.
tsh help <subcommand>
를 실행하거나 전역 플래그 섹션을 참조하세요.
예시
tsh --proxy=proxy.example.com scp example.txt user@host:/destination/dir
Note
tsh scp
는 사용자가 세션 조정을 요구할 경우 CLI에서 작동하지 않습니다. 웹
UI에서 SSH 세션에 참여하고 거기서 파일 전송 요청을 요청하여 조정된 세션에서
파일을 전송할 수 있습니다. 세션 시작자와 조정자는 파일 전송 요청을 승인하기
위해 웹 UI에 모두 있어야 합니다.
tsh ssh
원격 SSH 노드에서 셸을 실행하거나 명령을 실행합니다:
tsh ssh [<flags>] <[user@]host> [<command>...]
인수
<[user@]host> [<command>...]
user
원격 호스트에서 사용할 로그인 신원.[user]
가 지정되지 않은 경우 사용자는$USER
로 기본 설정되거나--user
로 설정할 수 있습니다.--user
플래그와 위치 인수[user]
가 지정된 경우, 인수[user]
가 우선합니다.host
클러스터 노드의nodename
또는env=aws
와 같이 모든 일치하는 호스트에서 실행할 레이블 사양.command
원격 호스트에서 실행할 명령.
플래그
이름 | 기본값 | 허용 값 | 설명 |
---|---|---|---|
-p, --port | 없음 | 포트 | 원격 호스트의 SSH 포트 |
-A, --forward-agent | 없음 | 없음 | ssh -A 와 같이 대상 노드로 에이전트 전달 |
-L, --forward | 없음 | 없음 | 로컬호스트 연결을 원격 서버로 전달 |
-D, --dynamic-forward | 없음 | 없음 | SOCKS5를 사용하여 로컬호스트 연결을 원격 서버로 전달 |
-R, --remote-forward | 없음 | 없음 | 원격 연결을 로컬호스트로 전달 |
-N, -no-remote-exec | 없음 | 없음 | 원격 명령을 실행하지 않음, 포트 전달에 유용함 |
--local | 없음 | SSH 노드에 연결한 후 로컬호스트에서 명령 실행 | |
-t, --tty | file | TTY 할당 | |
--cluster | 없음 | 연결할 클러스터 지정 | |
-o, --option | local | 구성 파일에서 사용하는 형식의 OpenSSH 옵션 | |
--enable-escape-sequences | SSH 이스케이프 시퀀스에 대한 지원을 활성화합니다. SSH 세션 중에 ~? 를 입력하여 지원되는 시퀀스를 나열합니다. | ||
--no-use-local-ssh-agent | 생성된 SSH 인증서를 로컬 ssh-agent에 로드하지 않음($SSH_AUTH_SOCK 를 통해 지정됨). gpg-agent 또는 Yubikeys를 사용할 때 유용함. TELEPORT_USE_LOCAL_SSH_AGENT 환경 변수를 false (기본값 true )로 설정할 수도 있습니다. | ||
-X, --x11-untrusted | 없음 | 없음 | 이 세션에 대해 신뢰되지 않는(안전한) X11 전달 요청. |
-Y, --x11-trusted | 없음 | 없음 | 이 세션에 대해 신뢰되는(안전하지 않은) X11 전달 요청. 이는 로컬 머신을 공격에 취약하게 만들 수 있으므로 주의해서 사용하십시오. |
--x11-untrusted-timeout | 10m | 기간 | 신뢰되지 않는 X11 전달에 대한 타임아웃을 설정하며, 이후 클라이언트는 서버로부터의 모든 전달 요청을 거부합니다. |
전역 플래그
이 플래그는 모든 명령에서 사용 가능합니다: --login, --proxy, --user, --ttl, --identity, --cert-format, --insecure, --auth, --skip-version-check, --debug, --jumphost
.
tsh help <하위 명령>
을 실행하거나 전역 플래그 섹션을 확인하십시오.
예제
Teleport 사용자 `teleport` 로 OS 사용자 `root` 로 노드 `grav-00` 에 로그인
tsh ssh --proxy proxy.example.com --user teleport -d root@grav-00`tsh ssh` 는 OpenSSH 클라이언트와 같은 인수를 사용합니다:
tsh ssh -o ForwardAgent=yes root@grav-00tsh ssh -o AddKeysToAgent=yes root@grav-00`env: aws` 레이블이 있는 모든 노드에서 `hostname` 실행
tsh ssh root@env=aws hostname
tsh 상태
프록시 서버 및 검색된 인증서 목록을 표시합니다:
tsh status
예제
tsh status> 프로필 URL: https://proxy.example.com:3080
로그인한 사용자: benarent
클러스터: aws
역할: access, editor, auditor
로그인이: benarent, root, ec2-user, ubunutu
Kubernetes: 활성화됨
Kubernetes 클러스터: "gke_bens-demos_us-central1-c_gks-demo"
Kubernetes 그룹: system:masters
유효 기간: 2020-11-21 01:50:23 -0800 PST [11시간 52분 0초 유효]
확장 프로그램: permit-agent-forwarding, permit-port-forwarding, permit-pty
tsh 버전
현재 tsh
프로필에서 tsh
바이너리 및 Teleport Proxy 서비스의 버전을 출력합니다.
tsh version [<flags>]
이름 | 기본값 | 허용값 | 설명 |
---|---|---|---|
-f, --format | text | text, json, yaml | 버전 출력 형식 |
--client | 없음 | 없음 | 클라이언트 버전만 표시 (서버는 필요하지 않음). |
예제
tsh versionTeleport v17.0.0-dev git: go1.22Proxy version: 17.0.0-devProxy: teleport.example.com:443
JSON 형식으로 표시:
tsh version --format=json
{
"version": "17.0.0-dev",
"gitref": "",
"runtime": "go1.22",
"proxyVersion": "17.0.0-dev",
"proxyPublicAddress": "teleport.example.com:443"
}
tsh
바이너리 버전만 표시:
tsh version --clientTeleport v17.0.0-dev git: go1.22