teleport-update CLI 참조
teleport-update는 Linux 서버에 설치된 Teleport Agent와 Bot을 업데이트하는 데 사용되는 CLI 도구입니다. 자세한 내용은 Teleport Agent 관리형 업데이트를 참조하세요. teleport-update의 주요 명령어는 다음과 같습니다:
teleport-update는 Linux 서버에 설치된 Teleport Agent와 Bot을 업데이트하는 데 사용되는 CLI 도구입니다.
자세한 내용은 Teleport Agent 관리형 업데이트를 참조하세요.
teleport-update의 주요 명령어는 다음과 같습니다:
| 명령어 | 설명 |
|---|---|
teleport-update help |
teleport-update 명령어 사용 안내를 출력합니다. |
teleport-update version |
teleport-update 바이너리의 현재 버전을 출력합니다. |
teleport-update enable |
클러스터에서 공고한 버전의 Teleport를 설치하고 관리형 업데이트를 활성화합니다. |
teleport-update disable |
Teleport를 제거하지 않고 자동 업데이트를 비활성화합니다. 모든 요청을 비활성화합니다. |
teleport-update pin |
클러스터에서 공고한 버전의 Teleport를 설치하고 해당 버전을 유지합니다. |
teleport-update unpin |
관리형 업데이트가 활성화된 경우 설치된 Teleport 버전이 업데이트될 수 있도록 허용합니다. |
teleport-update update |
클러스터에서 공고한 버전으로 Teleport를 업데이트합니다. |
teleport-update link-package |
시스템 패키지(apt/yum) 버전의 Teleport를 /usr/local/bin으로 복원합니다. |
teleport-update unlink-package |
시스템 패키지(apt/yum) 버전의 Teleport를 /usr/local/bin에서 제거합니다. |
teleport-update status |
설치된 Teleport 버전의 상태를 출력합니다. |
teleport-update uninstall |
Teleport와 업데이터를 모두 제거합니다. |
teleport-update enable#
관리형 업데이트를 활성화하고 Teleport Agent와 tbot의 초기 설치를 수행합니다. 이 명령어는 또한 주기적으로 update 서브커맨드를 실행하는 systemd 타이머를 생성합니다.
Teleport가 이미 설치된 경우, enable은 클러스터에서 공고한 버전으로 업데이트하고
관리형 업데이트가 활성화되어 있는지 확인합니다.
기존 패키지 기반 설치는 자동으로 관리형 업데이트로 변환됩니다.
기존 tarball 기반 정적 설치의 경우 --overwrite가 필요할 수 있습니다.
(필요한 경우 명확한 오류 메시지가 표시됩니다.)
파일은 다음 경로에 설치됩니다(기본 install-suffix 사용 시):
/usr/local/bin/{teleport,tbot,tsh,...}-/opt/teleport/default/versions/X.Y.Z/bin/으로의 심볼릭 링크/lib/systemd/system/teleport.service- Teleport SystemD 서비스/etc/systemd/system/tbot.service- Tbot SystemD 서비스(이미 존재하는 경우 대체되지 않음)/opt/teleport/default- Teleport 버전 및 업데이터 구성 저장소/etc/systemd/system/teleport-update.{service,timer}- 업데이터 SystemD 타이머 및 서비스/etc/systemd/system/teleport.service.d/teleport-update.conf- Teleport를 구성하는 환경 변수/etc/needrestart/conf.d/teleport-update.conf- Teleport용 needrestart 기본값
enable에 전달된 대부분의 플래그는 update에서도 유지됩니다.
이 플래그를 변경하려면 새 플래그와 함께 enable을 다시 실행하세요.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
| -p, --proxy | Teleport Proxy 주소. |
| -g, --group | 이 에이전트 설치의 업데이트 그룹. |
| -b, --base-url | Teleport 다운로드 URL을 재정의하는 데 사용되는 기본 URL. |
| -o, --[no-]overwrite | 기존에 설치된 Teleport 바이너리를 덮어쓸 수 있도록 허용합니다. |
예시#
새로운 Teleport Agent 설치 예시.
새 시스템에 관리형 업데이트가 활성화된 Teleport를 설치합니다.
# /etc/teleport.yaml 생성
$ sudo teleport-update enable
$ sudo systemctl enable teleport --now
새로운 Teleport Agent 및 tbot 설치 예시.
새 시스템에 관리형 업데이트가 활성화된 Teleport를 설치합니다.
# /etc/teleport.yaml 및 /etc/tbot.yaml 생성
$ sudo teleport-update enable
$ sudo systemctl enable teleport --now
$ sudo systemctl enable tbot --now
기존 설치 예시.
실행 중인 Teleport 버전이 있는 시스템에 관리형 업데이트가 활성화된 Teleport를 설치합니다. 패키지 기반 설치는 자동으로 관리형 업데이트로 변환됩니다.
$ teleport-update enable
사용자 정의 설치 접미사 예시.
격리된 경로에 관리형 업데이트가 활성화된 Teleport를 설치합니다. 패키지 기반 설치와 충돌하지 않습니다. 별도의 접미사를 가진 여러 설치가 별도의 클러스터에 대해 개별적으로 독립적으로 작동할 수 있습니다.
# /etc/teleport_mycluster.yaml 생성
$ sudo teleport-update --install-suffix mycluster enable
$ sudo systemctl enable teleport_mycluster --now
$ export PATH=/opt/teleport/mycluster/bin:$PATH
teleport-update disable#
설치된 Teleport Agent 및/또는 tbot에 대한 관리형 업데이트를 비활성화합니다. 이 명령어는 활성 Teleport 설치를 제거하거나 변경하지 않습니다.
pin과 달리 이 명령어는 현재 설치에 영향을 주지 않으며, 버전 조회 요청이 완전히 중단됩니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
예시#
관리형 업데이트 비활성화 예시.
현재 에이전트의 관리형 업데이트를 비활성화합니다.
$ sudo teleport-update disable
teleport-update pin#
설치된 Teleport Agent 및/또는 tbot을 특정 버전으로 고정합니다.
이 명령어는 Teleport를 최신 버전(또는 --force-version으로 지정한 버전)으로 업데이트하고,
로컬 Teleport 설치가 해당 버전을 유지하도록 합니다.
새 버전은 SystemD teleport-update.service 로그에 계속 보고되지만 설치되지는 않습니다.
pin은 enable과 유사하지만, unpin이 실행될 때까지 결과 버전이 변경되지 않습니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
| -p, --proxy | Teleport Proxy 주소. |
| -g, --group | 이 에이전트 설치의 업데이트 그룹. |
| -b, --base-url | Teleport 다운로드 URL을 재정의하는 데 사용되는 기본 URL. |
| -o, --[no-]overwrite | 기존에 설치된 Teleport 바이너리를 덮어쓸 수 있도록 허용합니다. |
| -f, --force-version | Teleport 클러스터에서 제공하는 버전 대신 지정한 버전을 강제합니다. |
예시#
클러스터에서 공고한 버전으로 새로 설치하는 예시.
새 시스템에 클러스터에서 공고한 Teleport 버전을 설치하고 버전을 고정합니다.
# /etc/teleport.yaml 생성
$ sudo teleport-update pin
$ sudo systemctl enable teleport --now
사용자 정의 버전으로 새로 설치하는 예시.
새 시스템에 지정된 Teleport 버전을 설치하고 버전을 고정합니다.
# /etc/teleport.yaml 생성
$ sudo teleport-update pin --force-version v17.1.2
$ sudo systemctl enable teleport --now
기존 설치 예시.
실행 중인 Teleport Agent가 있는 시스템에 클러스터에서 공고한 Teleport 버전을 설치하고 버전을 고정합니다. 패키지 기반 설치는 자동으로 관리형 업데이트로 변환됩니다.
$ sudo teleport-update pin
teleport-update unpin#
Teleport 버전 고정을 해제하여 다음 업데이트 시 클러스터에서 공고한 버전이 설치되도록 합니다. 이 명령어는 활성 Teleport 설치를 즉시 제거하거나 변경하지 않습니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
예시#
클러스터에서 공고한 버전이 설치될 수 있도록 관리형 업데이트 고정을 해제하는 예시.
현재 에이전트의 고정을 해제합니다.
$ sudo teleport-update unpin
$ sudo teleport-update update --now # 원하는 경우 즉시 업데이트 강제
teleport-update update#
Teleport 버전을 고정된 버전 또는 클러스터에서 공고한 버전으로 업데이트합니다.
--now를 지정하지 않으면 update는 현재 시간이 에이전트 그룹의 업데이트 창 내에 있을 때만 업데이트합니다.
이 명령어는 teleport-update SystemD 서비스/타이머에서 사용되며, 수동으로 실행할 필요가 없습니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
| -n, --[no-]now | 업데이트 창이 활성화되지 않더라도 즉시 업데이트를 강제합니다. |
예시#
즉시 업데이트 예시.
--now를 사용하여 업데이트 창 외부에서 강제 업데이트합니다.
$ sudo teleport-update update --now
teleport-update link-package#
관리형 업데이트가 비활성화된 경우 Teleport 패키지에서 시스템 설치본을 연결합니다.
이 명령어는 다음을 통해 시스템 패키지 설치를 연결하는 데 사용됩니다:
/opt/teleport/system/bin/*에서/usr/local/bin/으로 심볼릭 링크 생성./opt/teleport/system/lib/systemd/system/teleport.service에서/lib/systemd/system/teleport.service로 Teleport systemd 서비스 파일 복사.
이 명령어는 Teleport 패키지 설치 시 자동으로 실행되며, 수동으로 실행할 필요가 없습니다.
이 명령어가 작동하려면 관리형 업데이트가 비활성화되어 있어야 하고, 활성 버전의 Teleport가 제거되어 있어야 합니다.
uninstall은 패키지가 설치된 경우 자동으로 활성 버전의 Teleport를 제거하고 시스템 패키지를 연결합니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
예시#
시스템 패키지 설치 복원 예시.
Teleport apt/yum 패키지를 다시 연결합니다.
$ sudo teleport-update link-package
teleport-update unlink-package#
Teleport 패키지에서 시스템 설치본의 연결을 해제합니다.
이 명령어는 다음을 통해 시스템 패키지 설치의 연결을 해제하는 데 사용됩니다:
/opt/teleport/system/bin/*에서/usr/local/bin/으로의 심볼릭 링크 제거.- (심볼릭 링크가 제거된 경우)
/lib/systemd/system/teleport.service에서 Teleport systemd 서비스 파일 제거.
이 명령어는 Teleport 패키지 제거 시 자동으로 실행되며, 수동으로 실행해서는 안 됩니다.
이 명령어는 실행 중인 Teleport 버전의 연결을 해제하여 Teleport를 통한 시스템 접근이 불가능해질 수 있습니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
teleport-update status#
업데이터로 관리되는 Teleport 설치에 대한 상태를 표시합니다.
설치를 선택하려면 -i를 사용하세요.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
예시#
상태 확인 예시.
$ teleport-update status
proxy: example.teleport.sh
path: /usr/local/bin
enabled: true
pinned: false
active:
version: 17.2.1
flags: [Enterprise]
backup:
version: 16.4.7
flags: [Enterprise]
target:
version: 17.2.1
flags: [Enterprise]
in_window: false
jitter: 1m0s
teleport-update uninstall#
업데이터로 관리되는 Teleport 설치를 제거합니다. Teleport 패키지가 설치된 경우 기본 설치로 복원됩니다.
플래그#
| 플래그 | 설명 |
|---|---|
| -d, --[no-]debug | stdout으로 상세 로깅. |
| --log-format | 출력 로그의 형식을 제어합니다. json 또는 text 가능. 기본값은 text. |
| -i, --install-suffix | 기본 $PATH 외부에 에이전트를 설치하기 위한 접미사. 참고: 데이터 디렉터리가 변경됩니다. |
| --[no-]insecure | 비보안 모드는 인증서 검증을 비활성화합니다. 프로덕션 환경에서는 사용하지 마세요. |
| -f, --[no-]force | 복구할 패키지 버전의 Teleport가 없더라도 Teleport의 완전한 제거를 강제합니다. |
예시#
시스템 패키지로 되돌리기 예시.
$ sudo teleport-update uninstall
