Infograb logo
리눅스에서 머신 ID 배포

이 페이지에서는 리눅스 호스트에 머신 ID를 배포하는 방법을 설명합니다.

tbot이 Teleport 클러스터에 처음 인증하는 과정은 참여(join)라고 합니다. 참여 방법은 봇이 자신의 신원을 증명하는 특정 기술입니다.

신원이 기계에 제공되지 않는 플랫폼에서는 사용 가능한 참여 방법은 token뿐입니다. token 참여 방법은 공유 비밀에 의존하는 유일한 참여 방법이기 때문에 특별합니다. 이와 관련된 위험을 완화하기 위해 token 참여 방법은 1회 사용 가능하며 동일한 토큰을 여러 번 사용할 수 없습니다.

전제 조건

  • 실행 중인 Teleport 클러스터 버전 이상. Teleport를 시작하려면, 가입하기 위해 무료 평가판에 등록하거나 데모 환경 설정하기를 참조하세요.

  • tctl 관리 도구와 tsh 클라이언트 도구.

    tctltsh 다운로드에 대한 지침은 설치를 방문하세요.

  • 당신의 Teleport 클러스터에 연결할 수 있는지 확인하려면, tsh login으로 로그인한 다음 현재 자격 증명을 사용하여 tctl 명령어를 실행할 수 있는지 확인하십시오. 예를 들어:
    tsh login --proxy=teleport.example.com --user=email@example.com
    tctl status

    클러스터 teleport.example.com

    버전 16.2.0

    CA 핀 sha256:abdc1245efgh5678abdc1245efgh5678abdc1245efgh5678abdc1245efgh5678

    클러스터에 연결하고 tctl status 명령어를 실행할 수 있다면, 현재 자격 증명을 사용하여 작업대에서 후속 tctl 명령어를 실행할 수 있습니다. 자신의 Teleport 클러스터를 호스팅하는 경우, Teleport 인증 서비스를 호스팅하는 컴퓨터에서 전체 권한으로 tctl 명령어를 실행할 수도 있습니다.
  • 머신 ID를 설치할 리눅스 호스트.
  • 머신 ID가 실행될 리눅스 사용자. 이 가이드에서는 이를 위해 teleport를 사용할 것입니다.

1단계/4. tbot 설치하기

이 단계는 리눅스 호스트에서 완료됩니다.

먼저, 머신 ID를 사용하려는 VM에 tbot을 설치해야 합니다.

귀하의 플랫폼에 적합한 Teleport 패키지를 다운로드하세요:

Linux 서버에 Teleport 설치하기:

  1. Teleport 에디션에 따라 edition을(를) 다음 중 하나로 지정합니다:

    에디션
    Teleport Enterprise Cloudcloud
    Teleport Enterprise (자체 호스팅)enterprise
    Teleport Community Editionoss
  2. 설치할 Teleport의 버전을 확인합니다. 클러스터에서 자동 에이전트 업데이트가 활성화되어 있는 경우, 업데이터와 호환되는 최신 Teleport 버전을 쿼리합니다:

    TELEPORT_DOMAIN=example.teleport.com
    TELEPORT_VERSION="$(curl https://$TELEPORT_DOMAIN/v1/webapi/automaticupgrades/channel/default/version | sed 's/v//')"

    그렇지 않으면, Teleport 클러스터의 버전을 확인합니다:

    TELEPORT_DOMAIN=example.teleport.com
    TELEPORT_VERSION="$(curl https://$TELEPORT_DOMAIN/v1/webapi/ping | jq -r '.server_version')"
  3. Linux 서버에 Teleport를 설치합니다:

    curl https://cdn.teleport.dev/install-v16.2.0.sh | bash -s ${TELEPORT_VERSION} edition

    설치 스크립트는 Linux 서버에서 패키지 관리자를 감지하고 이를 사용하여 Teleport 바이너리를 설치합니다. 설치를 사용자 지정하려면 설치 가이드에서 Teleport 패키지 리포지토리에 대해 알아보세요.

2단계/4. 봇 사용자 생성하기

이 단계는 로컬 컴퓨터에서 완료됩니다.

봇을 생성하세요:

tctl bots add example

참여 토큰은 tctl bots add의 결과에 포함되며, tbot 구성 시 필요하므로 이 값을 기록해 두세요.

3단계/4. tbot 구성하기

이 단계는 리눅스 호스트에서 완료됩니다.

/etc/tbot.yaml을 생성하세요:

version: v2
proxy_server: example.teleport.sh:443
onboarding:
  join_method: token
  token: abcd123-insecure-do-not-use-this
storage:
  type: directory
  path: /var/lib/teleport/bot
# outputs는 액세스 가이드 완료 시 채워집니다.
outputs: []

다음 항목을 교체하세요:

  • example.teleport.sh:443을 귀하의 Teleport Proxy 또는 인증 서버 주소로 교체하세요. Teleport Proxy 주소를 사용하는 것이 좋습니다.
  • abcd123-insecure-do-not-use-this를 이전 단계에서 tctl bots add에 의해 반환된 토큰으로 교체하세요.

tbot이 처음 실행될 때, 이 토큰은 인증에 사용할 인증서로 교환됩니다. 이 시점에서 토큰은 무효화됩니다. 이것은 첫 번째 실행이 완료된 후 구성 파일에서 토큰을 제거할 수 있다는 것을 의미하지만, 그렇게 해도 실질적인 보안 이점은 없습니다.

저장소 디렉터리 준비하기

token 참여 방법을 사용할 때, tbot은 재시작 간 상태를 유지할 수 있어야 합니다. 이 상태를 유지하는 데 사용되는 목적지는 봇의 "저장소 목적지"로 알려져 있습니다. 이 가이드에서는 디렉토리 /var/lib/teleport/bot을 사용할 것입니다.

이 디렉터리는 봇의 민감한 자격 증명을 저장하므로 보호하는 것이 중요합니다. 이를 위해 tbot이 실행될 리눅스 사용자만 디렉터리에 접근할 수 있도록 구성할 것입니다.

다음 명령을 실행하되, teleporttbot을 실행할 리눅스 사용자로 교체하세요:

봇 디렉터리를 만들고 소유권을 teleport 사용자에게 할당합니다.

sudo mkdir -p /var/lib/teleport/bot
sudo chown teleport:teleport /var/lib/teleport/bot

systemd 서비스 생성하기

기본적으로, tbot는 데몬 모드에서 실행됩니다. 그러나 이를 Linux 호스트의 서비스 관리자 내에서 서비스로 구성해야 합니다. 서비스 관리자는 부팅 시 tbot를 시작하고 실패할 경우 다시 시작되도록 보장합니다. 이 안내서에서는 systemd를 시연하지만 tbot는 모든 일반적인 대안과 호환되어야 합니다.

tbot install systemd를 사용하여 systemd 서비스 파일을 생성합니다:

tbot install systemd \ --write \ --config /etc/tbot.yaml \ --user teleport \ --group teleport \ --anonymous-telemetry

다음 항목을 바꾸는 것을 잊지 마세요:

  • teleporttbot를 실행하려는 Linux 사용자 이름으로 바꿉니다.
  • /etc/tbot.yaml을 생성한 구성 파일의 경로로 바꿉니다.

--write를 생략하면 systemd 서비스 파일이 디스크에 작성되는 대신 콘솔에 출력됩니다.

--anonymous-telemetry는 익명 사용 수집을 제출할 수 있게 합니다. 이는 tbot의 향후 개발을 형성하는 데 도움이 됩니다. 이를 생략하여 비활성화할 수 있습니다.

다음으로 서비스를 활성화하여 부팅 시 시작되도록 하고 서비스를 시작합니다:

sudo systemctl daemon-reload
sudo systemctl enable tbot
sudo systemctl start tbot

서비스가 성공적으로 시작되었는지 확인합니다:

sudo systemctl status tbot

4단계/4. 출력 구성하기

당신은 이제 tbot의 기본 설정을 완료했습니다. 현재 이 시점에서 tbot은 Teleport 클러스터에 자신을 식별하고 자체 자격 증명을 갱신하지만 다른 애플리케이션에서 사용할 수 있는 자격 증명을 출력하지는 않습니다.

액세스 가이드 중 하나를 따라 귀하의 액세스 요구 사항을 충족하는 출력을 구성하세요.

다음 단계

Teleport 원문 보기