InfoGrab Docs

teleport_server Terraform 리소스 참조

이 페이지는 Teleport Terraform 프로바이더의 teleport_server 리소스에서 지원되는 값을 설명합니다.

사용 예시#

resource "teleport_server" "ssh_agentless" {
  version  = "v2"
  sub_kind = "openssh"
  // Name is not required for servers, this is a special case.
  // When a name is not set, an UUID will be generated by Teleport and
  // imported back into Terraform.
  // Giving unique IDs to servers allows UUID-based dialing (as opposed to
  // host-based dialing and IP-based dialing) which is more robust than its
  // counterparts as it can point to a specific server if multiple servers
  // share the same hostname/ip.
  spec = {
    addr     = "127.0.0.1:22"
    hostname = "test.local"
  }
}

resource "teleport_server" "ssh_agentless_eice" {
  version  = "v2"
  sub_kind = "openssh-ec2-ice"
  metadata = {
    // It is recommended to put the account and instance ID as a name for EC2 Instance Connect
    // When dialing to this instance, teleport will detect that this is an
    // AWS instance ID an will contact this specific instance. This is more
    // robust than host-based and IP-based dialing (because several server
    // can have similar hostnames).
    name = "123456789012-i-0123456789abcdef"
  }
  spec = {
    addr     = "127.0.0.1:22"
    hostname = "test.local"

    cloud_metadata = {
      aws = {
        account_id  = "123"
        instance_id = "123"
        region      = "us-east-1"
        vpc_id      = "123"
        integration = "foo"
        subnet_id   = "123"
      }
    }
  }
}

스키마#

필수#

  • sub_kind (문자열) SubKind는 일부 리소스에서 사용되는 선택적 리소스 하위 종류입니다.
  • version (문자열) Version은 버전입니다.

선택#

  • metadata (속성) Metadata는 리소스 메타데이터입니다. (아래 중첩 스키마 참조)
  • scope (문자열) 서버의 광고된 범위로, 한번 할당되면 변경할 수 없습니다.
  • spec (속성) Spec은 서버 스펙입니다. (아래 중첩 스키마 참조)

metadata에 대한 중첩 스키마#

선택:

  • description (문자열) Description은 객체 설명입니다.
  • expires (문자열) Expires는 시스템의 모든 리소스에 설정할 수 있는 전역 만료 시간 헤더입니다.
  • labels (문자열 맵) Labels는 레이블 세트입니다.
  • name (문자열) Name은 객체 이름입니다.

spec에 대한 중첩 스키마#

선택:

  • addr (문자열) Addr는 이 서버에 도달할 수 있는 host:port 주소입니다.
  • cloud_metadata (속성) CloudMetadata는 서버가 실행되는 클라우드 인스턴스에 대한 정보를 포함합니다(있는 경우). (아래 중첩 스키마 참조)
  • github (속성) GitHub는 각 서버가 GitHub 조직을 나타내는 GitHub 프록시에 대한 정보를 포함합니다. (아래 중첩 스키마 참조)
  • hostname (문자열) Hostname은 서버 호스트 이름입니다.
  • immutable_labels (문자열 맵) 참여 시 서버에 할당된 변경 불가 레이블입니다. 이 레이블의 해시는 서버 인증서에 포함된 해시와 일치해야 합니다.
  • peer_addr (문자열) PeerAddr는 피어 프록시가 프록시 서버에 도달할 수 있는 주소입니다.
  • proxy_ids (문자열 목록) ProxyIDs는 이 서버가 연결될 것으로 예상되는 프록시 ID 목록입니다.
  • public_addrs (문자열 목록) PublicAddrs는 이 서버에 도달할 수 있는 공개 주소 목록입니다.
  • relay_group (문자열) 서버가 연결된 Relay 그룹의 이름입니다.
  • relay_ids (문자열 목록) 서버가 연결된 Relay 호스트 ID 목록입니다.
  • rotation (속성) Rotation은 서버 교체를 지정합니다. (아래 중첩 스키마 참조)
  • use_tunnel (불리언) UseTunnel은 이 서버에 대한 연결이 역방향 터널을 통해 이루어져야 함을 나타냅니다.
  • version (문자열) TeleportVersion은 서버가 실행 중인 Teleport 버전입니다.

spec.cloud_metadata에 대한 중첩 스키마#

선택:

  • aws (속성) AWSInfo는 EC2 인스턴스에 일치시킬 속성을 포함합니다. (아래 중첩 스키마 참조)

spec.cloud_metadata.aws에 대한 중첩 스키마#

선택:

  • account_id (문자열) AccountID는 AWS 계정 ID입니다.
  • instance_id (문자열) InstanceID는 EC2 인스턴스 ID입니다.
  • integration (문자열) Integration은 이 노드를 추가한 통합 이름입니다. 연결 시 이 통합을 사용하여 연결을 설정하기 위한 AWS API 호출을 발행합니다. 여기에는 SSH 키 전송 및 Teleport가 연결할 수 있도록 터널 열기(EC2 Instance Connect Endpoint)가 포함됩니다.
  • region (문자열) Region은 AWS EC2 인스턴스 지역입니다.
  • subnet_id (문자열) SubnetID는 인스턴스에서 사용 중인 서브넷 ID입니다.
  • vpc_id (문자열) VPCID는 인스턴스가 실행되는 AWS VPC ID입니다.

spec.github에 대한 중첩 스키마#

선택:

  • integration (문자열) Integration은 이 서버와 연결된 통합입니다.
  • organization (문자열) Organization은 GitHub 통합을 위한 조직 이름을 지정합니다.

spec.rotation에 대한 중첩 스키마#

선택:

  • current_id (문자열) CurrentID는 교체 시도를 구분하기 위한 교체 작업의 ID입니다.
  • grace_period (문자열) GracePeriod는 확인 목적으로 이전 CA와 새 CA가 모두 유효하지만 새 CA만 인증서를 발행하는 기간입니다.
  • last_rotated (문자열) LastRotated는 완료된 교체의 마지막 시간을 지정합니다.
  • mode (문자열) Mode는 수동 또는 자동 교체 모드를 설정합니다.
  • phase (문자열) Phase는 현재 교체 단계입니다.
  • schedule (속성) Schedule은 교체 스케줄입니다. 자동 모드에서 단계 전환에 사용됩니다. (아래 중첩 스키마 참조)
  • started (문자열) Started는 교체 상태가 "in_progress"인 경우 교체가 시작된 시간으로 설정됩니다.
  • state (문자열) State는 "init" 또는 "in_progress" 중 하나일 수 있습니다.

spec.rotation.schedule에 대한 중첩 스키마#

선택:

  • standby (문자열) Standby는 "Standby" 단계로 전환할 시간을 지정합니다.
  • update_clients (문자열) UpdateClients는 "클라이언트 업데이트" 단계로 전환할 시간을 지정합니다.
  • update_servers (문자열) UpdateServers는 "서버 업데이트" 단계로 전환할 시간을 지정합니다.

teleport_server Terraform 리소스 참조

원문 보기

이 페이지는 Teleport Terraform 프로바이더의 teleport_server 리소스에서 지원되는 값을 설명합니다.

사용 예시#

resource "teleport_server" "ssh_agentless" {
  version  = "v2"
  sub_kind = "openssh"
  // Name is not required for servers, this is a special case.
  // When a name is not set, an UUID will be generated by Teleport and
  // imported back into Terraform.
  // Giving unique IDs to servers allows UUID-based dialing (as opposed to
  // host-based dialing and IP-based dialing) which is more robust than its
  // counterparts as it can point to a specific server if multiple servers
  // share the same hostname/ip.
  spec = {
    addr     = "127.0.0.1:22"
    hostname = "test.local"
  }
}

resource "teleport_server" "ssh_agentless_eice" {
  version  = "v2"
  sub_kind = "openssh-ec2-ice"
  metadata = {
    // It is recommended to put the account and instance ID as a name for EC2 Instance Connect
    // When dialing to this instance, teleport will detect that this is an
    // AWS instance ID an will contact this specific instance. This is more
    // robust than host-based and IP-based dialing (because several server
    // can have similar hostnames).
    name = "123456789012-i-0123456789abcdef"
  }
  spec = {
    addr     = "127.0.0.1:22"
    hostname = "test.local"

    cloud_metadata = {
      aws = {
        account_id  = "123"
        instance_id = "123"
        region      = "us-east-1"
        vpc_id      = "123"
        integration = "foo"
        subnet_id   = "123"
      }
    }
  }
}

스키마#

필수#

  • sub_kind (문자열) SubKind는 일부 리소스에서 사용되는 선택적 리소스 하위 종류입니다.
  • version (문자열) Version은 버전입니다.

선택#

  • metadata (속성) Metadata는 리소스 메타데이터입니다. (아래 중첩 스키마 참조)
  • scope (문자열) 서버의 광고된 범위로, 한번 할당되면 변경할 수 없습니다.
  • spec (속성) Spec은 서버 스펙입니다. (아래 중첩 스키마 참조)

metadata에 대한 중첩 스키마#

선택:

  • description (문자열) Description은 객체 설명입니다.
  • expires (문자열) Expires는 시스템의 모든 리소스에 설정할 수 있는 전역 만료 시간 헤더입니다.
  • labels (문자열 맵) Labels는 레이블 세트입니다.
  • name (문자열) Name은 객체 이름입니다.

spec에 대한 중첩 스키마#

선택:

  • addr (문자열) Addr는 이 서버에 도달할 수 있는 host:port 주소입니다.
  • cloud_metadata (속성) CloudMetadata는 서버가 실행되는 클라우드 인스턴스에 대한 정보를 포함합니다(있는 경우). (아래 중첩 스키마 참조)
  • github (속성) GitHub는 각 서버가 GitHub 조직을 나타내는 GitHub 프록시에 대한 정보를 포함합니다. (아래 중첩 스키마 참조)
  • hostname (문자열) Hostname은 서버 호스트 이름입니다.
  • immutable_labels (문자열 맵) 참여 시 서버에 할당된 변경 불가 레이블입니다. 이 레이블의 해시는 서버 인증서에 포함된 해시와 일치해야 합니다.
  • peer_addr (문자열) PeerAddr는 피어 프록시가 프록시 서버에 도달할 수 있는 주소입니다.
  • proxy_ids (문자열 목록) ProxyIDs는 이 서버가 연결될 것으로 예상되는 프록시 ID 목록입니다.
  • public_addrs (문자열 목록) PublicAddrs는 이 서버에 도달할 수 있는 공개 주소 목록입니다.
  • relay_group (문자열) 서버가 연결된 Relay 그룹의 이름입니다.
  • relay_ids (문자열 목록) 서버가 연결된 Relay 호스트 ID 목록입니다.
  • rotation (속성) Rotation은 서버 교체를 지정합니다. (아래 중첩 스키마 참조)
  • use_tunnel (불리언) UseTunnel은 이 서버에 대한 연결이 역방향 터널을 통해 이루어져야 함을 나타냅니다.
  • version (문자열) TeleportVersion은 서버가 실행 중인 Teleport 버전입니다.

spec.cloud_metadata에 대한 중첩 스키마#

선택:

  • aws (속성) AWSInfo는 EC2 인스턴스에 일치시킬 속성을 포함합니다. (아래 중첩 스키마 참조)

spec.cloud_metadata.aws에 대한 중첩 스키마#

선택:

  • account_id (문자열) AccountID는 AWS 계정 ID입니다.
  • instance_id (문자열) InstanceID는 EC2 인스턴스 ID입니다.
  • integration (문자열) Integration은 이 노드를 추가한 통합 이름입니다. 연결 시 이 통합을 사용하여 연결을 설정하기 위한 AWS API 호출을 발행합니다. 여기에는 SSH 키 전송 및 Teleport가 연결할 수 있도록 터널 열기(EC2 Instance Connect Endpoint)가 포함됩니다.
  • region (문자열) Region은 AWS EC2 인스턴스 지역입니다.
  • subnet_id (문자열) SubnetID는 인스턴스에서 사용 중인 서브넷 ID입니다.
  • vpc_id (문자열) VPCID는 인스턴스가 실행되는 AWS VPC ID입니다.

spec.github에 대한 중첩 스키마#

선택:

  • integration (문자열) Integration은 이 서버와 연결된 통합입니다.
  • organization (문자열) Organization은 GitHub 통합을 위한 조직 이름을 지정합니다.

spec.rotation에 대한 중첩 스키마#

선택:

  • current_id (문자열) CurrentID는 교체 시도를 구분하기 위한 교체 작업의 ID입니다.
  • grace_period (문자열) GracePeriod는 확인 목적으로 이전 CA와 새 CA가 모두 유효하지만 새 CA만 인증서를 발행하는 기간입니다.
  • last_rotated (문자열) LastRotated는 완료된 교체의 마지막 시간을 지정합니다.
  • mode (문자열) Mode는 수동 또는 자동 교체 모드를 설정합니다.
  • phase (문자열) Phase는 현재 교체 단계입니다.
  • schedule (속성) Schedule은 교체 스케줄입니다. 자동 모드에서 단계 전환에 사용됩니다. (아래 중첩 스키마 참조)
  • started (문자열) Started는 교체 상태가 "in_progress"인 경우 교체가 시작된 시간으로 설정됩니다.
  • state (문자열) State는 "init" 또는 "in_progress" 중 하나일 수 있습니다.

spec.rotation.schedule에 대한 중첩 스키마#

선택:

  • standby (문자열) Standby는 "Standby" 단계로 전환할 시간을 지정합니다.
  • update_clients (문자열) UpdateClients는 "클라이언트 업데이트" 단계로 전환할 시간을 지정합니다.
  • update_servers (문자열) UpdateServers는 "서버 업데이트" 단계로 전환할 시간을 지정합니다.