InfoGrab Docs

암호화된 세션 녹화

요약

암호화된 세션 녹화를 통해 Teleport 사용자는 세션 녹화 데이터의 저장 시 암호화를 활성화할 수 있습니다. 암호화된 녹화가 활성화되면 Teleport는 세션 녹화 데이터를 디스크나 장기 저장소에 저장하기 전에 암호화합니다.

암호화된 세션 녹화를 통해 Teleport 사용자는 세션 녹화 데이터의 저장 시 암호화를 활성화할 수 있습니다. 이 가이드에서는 암호화된 세션 녹화를 설정하는 방법을 설명합니다.

작동 방식#

암호화된 녹화가 활성화되면 Teleport는 세션 녹화 데이터를 디스크나 장기 저장소에 저장하기 전에 암호화합니다. 암호화 키는 Teleport Auth Service 구성 파일의 ca_key_params 섹션에 정의된 CA에 대해 구성된 동일한 키 저장소 백엔드를 사용하여 프로비저닝됩니다. node-syncproxy-sync 세션 녹화 모드에서 세션 녹화 이벤트는 장기 저장소에 쓰기 전에 암호화되는 Teleport Auth Service로 직접 전송됩니다. nodeproxy 세션 녹화 모드에서 세션 녹화 이벤트는 Auth Service에 업로드하기 위해 디스크에 쓰기 전에 Teleport로 보호된 서버 또는 Proxy Service 인스턴스에서 로컬로 암호화됩니다.

재생을 위한 세션 녹화 복호화는 세션 녹화 모드에 관계없이 항상 Teleport Auth Service에 의해 촉진됩니다. 이는 Teleport Web UI를 사용하거나 유효한 세션 ID로 tsh play를 사용하여 재생을 볼 수 있음을 의미합니다. tsh play로 세션 녹화 파일을 직접 재생하는 것은 암호화된 파일에서는 불가능합니다.

1단계/2단계. Teleport 구성#

이 섹션에서는 구성된 키 저장소 백엔드를 사용하여 세션 녹화를 암호화하도록 Teleport를 구성합니다.

녹화 암호화 활성화#

암호화된 세션 녹화는 Teleport Auth Service 구성 파일을 통해 활성화할 수 있습니다.

다음과 같이 Auth Service 구성 파일을 편집할 수 있습니다:

# snippet from teleport.yaml
auth_service:
  session_recording_config:
    encryption:
      enabled: yes

선택 사항: 키 저장소 백엔드 구성#

세션 녹화 암호화 키는 CA에 대해 구성된 동일한 키 저장소 백엔드를 사용하여 프로비저닝됩니다. Teleport의 백엔드 저장소에 저장된 소프트웨어 키가 기본값이지만 다른 백엔드도 구성할 수 있습니다:

클러스터가 이미 이러한 백엔드 중 하나를 사용하도록 구성된 경우, Teleport가 복호화 기능을 사용할 권한이 있는지 확인해야 합니다. 예를 들어, AWS KMS 백엔드는 Teleport의 역할 정책에 kms:Decrypt 작업을 추가해야 합니다.

모든 Teleport Auth Service 인스턴스가 정확히 동일한 암호화 키에 접근할 수 있어야 모든 녹화된 세션이 항상 재생 가능하도록 보장됩니다. 이는 AWS KMS 및 GCP KMS 백엔드의 키에 대한 공유 접근 또는 PKCS#11 백엔드의 공유된 네트워크 HSM을 의미합니다.

Note

HSM 백엔드로 암호화된 녹화를 활성화하기 전에 생성된 키에 대해 OAEP 복호화가 허용되는지 확인하세요. YubiHSM2의 경우, 사용된 인증 키는 기능과 위임된 기능 모두에 decrypt-oaep가 포함되어야 합니다. 다른 PKCS#11 HSM의 경우 CKM_DECRYPT 메커니즘이 활성화되어야 합니다.

2단계/2단계. 새 녹화가 암호화되었는지 확인#

새 녹화를 캡처하고 감사 세션 백엔드에서 결과 .tar 파일을 다운로드하여 세션 녹화가 이제 암호화되었는지 확인할 수 있습니다. tsh play로 세션 파일을 직접 재생하면 실패해야 하고 세션 ID로 재생하면 성공해야 합니다.

수동 암호화 키 관리#

암호화된 세션 녹화에는 녹화 시 암호화와 재생 시 복호화에 사용될 활성 키가 하나 이상 필요합니다. 활성 키가 교체되면, 즉 더 이상 암호화에 사용되지 않으면 교체된 키가 되어야 합니다. 교체된 키는 이전 녹화에 대한 접근을 유지하기 위해 재생 중 복호화에만 사용될 수 있습니다.

기본적으로 Teleport는 이러한 키를 자동으로 프로비저닝하고 관리합니다. 그러나 Teleport가 키를 직접 관리하기 위한 충분한 권한이 없는 환경과 같이 자동 관리가 불가능하거나 원하지 않는 경우가 있을 수 있습니다. 이러한 이유로 Teleport는 외부에서 관리되는 키를 사용하도록 구성할 수 있습니다.

수동 암호화 키 관리를 통해 활성 및 교체된 키를 명시적으로 구성할 수 있으며, 사용할 특정 키를 식별하는 레이블과 함께 어떤 유형의 키 저장소 백엔드에 있는지 정의합니다.

Warning

수동 암호화 키 관리는 키 관리에 대한 모든 책임과 복잡성을 관리자에게 부과합니다. 이는 잘못된 구성이 Teleport의 세션 녹화 또는 재생 능력에 영향을 미칠 위험이 훨씬 더 크다는 것을 의미합니다. 이러한 이유로 Teleport Cloud는 수동 암호화 키 관리 사용을 허용하지 않습니다. 사용 사례가 수동 키 관리를 명시적으로 필요로 하지 않는 한 기본 자동 키 관리를 사용하는 것을 고려하세요.

구성#

이 예시는 하나의 활성 키와 하나의 교체된 키가 구성된 manual_key_management를 활성화합니다. 두 키 모두 키 저장소 백엔드로 PKCS#11 호환 HSM을 예상하며, 각각 HSM 내의 키를 식별하는 데 사용되는 자체 레이블이 있습니다.

encryption:
  enabled: yes
  manual_key_management:
    enabled: yes
    active_keys:
      - type: pkcs11
        label: 'session_recordings_002'
    rotated_keys:
      - type: pkcs11
        label: 'session_recordings_001'

Teleport는 active_keysrotated_keys 모두에 설명된 키를 HSM에서 검색합니다. 활성 키는 새로운 세션 녹화의 암호화와 재생 중에 사용됩니다. 교체된 키는 이전 세션 녹화의 재생 중에 사용되지만 암호화 작업에는 사용되지 않습니다. PKCS#11 백엔드의 경우 키 조회 중 사용되는 레이블 외에도 키에 ID가 할당되어야 합니다. ID는 manual_key_management 구성에 포함되지 않지만 단일 쌍의 개인 키와 공개 키에는 동일한 ID가 할당되어야 합니다.

앞서 언급했듯이, 모든 Teleport Auth Service 인스턴스가 동일한 키에 접근할 수 있도록 하는 것이 중요합니다. 공유되지 않은 키를 사용하면 재생의 가용성이 저하될 것으로 예상됩니다.

Warning

세션 녹화 암호화는 4096비트 RSA 키 쌍으로 OAEP를 사용하는 봉투 암호화 형식에 의존합니다. 이는 RSA 4096이 manual_key_management와 함께 사용할 수 있는 유일한 키 유형임을 의미합니다. 이러한 키가 복호화에 사용될 수 있도록 허용되는 것도 중요합니다. 이것이 의미하는 바는 키 저장소 백엔드마다 다르지만 일반적으로 키가 처음 프로비저닝될 때 정의되어야 합니다.

관련 문서#

암호화된 세션 녹화

원문 보기
요약

암호화된 세션 녹화를 통해 Teleport 사용자는 세션 녹화 데이터의 저장 시 암호화를 활성화할 수 있습니다. 암호화된 녹화가 활성화되면 Teleport는 세션 녹화 데이터를 디스크나 장기 저장소에 저장하기 전에 암호화합니다.

암호화된 세션 녹화를 통해 Teleport 사용자는 세션 녹화 데이터의 저장 시 암호화를 활성화할 수 있습니다. 이 가이드에서는 암호화된 세션 녹화를 설정하는 방법을 설명합니다.

작동 방식#

암호화된 녹화가 활성화되면 Teleport는 세션 녹화 데이터를 디스크나 장기 저장소에 저장하기 전에 암호화합니다. 암호화 키는 Teleport Auth Service 구성 파일의 ca_key_params 섹션에 정의된 CA에 대해 구성된 동일한 키 저장소 백엔드를 사용하여 프로비저닝됩니다. node-syncproxy-sync 세션 녹화 모드에서 세션 녹화 이벤트는 장기 저장소에 쓰기 전에 암호화되는 Teleport Auth Service로 직접 전송됩니다. nodeproxy 세션 녹화 모드에서 세션 녹화 이벤트는 Auth Service에 업로드하기 위해 디스크에 쓰기 전에 Teleport로 보호된 서버 또는 Proxy Service 인스턴스에서 로컬로 암호화됩니다.

재생을 위한 세션 녹화 복호화는 세션 녹화 모드에 관계없이 항상 Teleport Auth Service에 의해 촉진됩니다. 이는 Teleport Web UI를 사용하거나 유효한 세션 ID로 tsh play를 사용하여 재생을 볼 수 있음을 의미합니다. tsh play로 세션 녹화 파일을 직접 재생하는 것은 암호화된 파일에서는 불가능합니다.

1단계/2단계. Teleport 구성#

이 섹션에서는 구성된 키 저장소 백엔드를 사용하여 세션 녹화를 암호화하도록 Teleport를 구성합니다.

녹화 암호화 활성화#

암호화된 세션 녹화는 Teleport Auth Service 구성 파일을 통해 활성화할 수 있습니다.

다음과 같이 Auth Service 구성 파일을 편집할 수 있습니다:

# snippet from teleport.yaml
auth_service:
  session_recording_config:
    encryption:
      enabled: yes

선택 사항: 키 저장소 백엔드 구성#

세션 녹화 암호화 키는 CA에 대해 구성된 동일한 키 저장소 백엔드를 사용하여 프로비저닝됩니다. Teleport의 백엔드 저장소에 저장된 소프트웨어 키가 기본값이지만 다른 백엔드도 구성할 수 있습니다:

클러스터가 이미 이러한 백엔드 중 하나를 사용하도록 구성된 경우, Teleport가 복호화 기능을 사용할 권한이 있는지 확인해야 합니다. 예를 들어, AWS KMS 백엔드는 Teleport의 역할 정책에 kms:Decrypt 작업을 추가해야 합니다.

모든 Teleport Auth Service 인스턴스가 정확히 동일한 암호화 키에 접근할 수 있어야 모든 녹화된 세션이 항상 재생 가능하도록 보장됩니다. 이는 AWS KMS 및 GCP KMS 백엔드의 키에 대한 공유 접근 또는 PKCS#11 백엔드의 공유된 네트워크 HSM을 의미합니다.

Note

HSM 백엔드로 암호화된 녹화를 활성화하기 전에 생성된 키에 대해 OAEP 복호화가 허용되는지 확인하세요. YubiHSM2의 경우, 사용된 인증 키는 기능과 위임된 기능 모두에 decrypt-oaep가 포함되어야 합니다. 다른 PKCS#11 HSM의 경우 CKM_DECRYPT 메커니즘이 활성화되어야 합니다.

2단계/2단계. 새 녹화가 암호화되었는지 확인#

새 녹화를 캡처하고 감사 세션 백엔드에서 결과 .tar 파일을 다운로드하여 세션 녹화가 이제 암호화되었는지 확인할 수 있습니다. tsh play로 세션 파일을 직접 재생하면 실패해야 하고 세션 ID로 재생하면 성공해야 합니다.

수동 암호화 키 관리#

암호화된 세션 녹화에는 녹화 시 암호화와 재생 시 복호화에 사용될 활성 키가 하나 이상 필요합니다. 활성 키가 교체되면, 즉 더 이상 암호화에 사용되지 않으면 교체된 키가 되어야 합니다. 교체된 키는 이전 녹화에 대한 접근을 유지하기 위해 재생 중 복호화에만 사용될 수 있습니다.

기본적으로 Teleport는 이러한 키를 자동으로 프로비저닝하고 관리합니다. 그러나 Teleport가 키를 직접 관리하기 위한 충분한 권한이 없는 환경과 같이 자동 관리가 불가능하거나 원하지 않는 경우가 있을 수 있습니다. 이러한 이유로 Teleport는 외부에서 관리되는 키를 사용하도록 구성할 수 있습니다.

수동 암호화 키 관리를 통해 활성 및 교체된 키를 명시적으로 구성할 수 있으며, 사용할 특정 키를 식별하는 레이블과 함께 어떤 유형의 키 저장소 백엔드에 있는지 정의합니다.

Warning

수동 암호화 키 관리는 키 관리에 대한 모든 책임과 복잡성을 관리자에게 부과합니다. 이는 잘못된 구성이 Teleport의 세션 녹화 또는 재생 능력에 영향을 미칠 위험이 훨씬 더 크다는 것을 의미합니다. 이러한 이유로 Teleport Cloud는 수동 암호화 키 관리 사용을 허용하지 않습니다. 사용 사례가 수동 키 관리를 명시적으로 필요로 하지 않는 한 기본 자동 키 관리를 사용하는 것을 고려하세요.

구성#

이 예시는 하나의 활성 키와 하나의 교체된 키가 구성된 manual_key_management를 활성화합니다. 두 키 모두 키 저장소 백엔드로 PKCS#11 호환 HSM을 예상하며, 각각 HSM 내의 키를 식별하는 데 사용되는 자체 레이블이 있습니다.

encryption:
  enabled: yes
  manual_key_management:
    enabled: yes
    active_keys:
      - type: pkcs11
        label: 'session_recordings_002'
    rotated_keys:
      - type: pkcs11
        label: 'session_recordings_001'

Teleport는 active_keysrotated_keys 모두에 설명된 키를 HSM에서 검색합니다. 활성 키는 새로운 세션 녹화의 암호화와 재생 중에 사용됩니다. 교체된 키는 이전 세션 녹화의 재생 중에 사용되지만 암호화 작업에는 사용되지 않습니다. PKCS#11 백엔드의 경우 키 조회 중 사용되는 레이블 외에도 키에 ID가 할당되어야 합니다. ID는 manual_key_management 구성에 포함되지 않지만 단일 쌍의 개인 키와 공개 키에는 동일한 ID가 할당되어야 합니다.

앞서 언급했듯이, 모든 Teleport Auth Service 인스턴스가 동일한 키에 접근할 수 있도록 하는 것이 중요합니다. 공유되지 않은 키를 사용하면 재생의 가용성이 저하될 것으로 예상됩니다.

Warning

세션 녹화 암호화는 4096비트 RSA 키 쌍으로 OAEP를 사용하는 봉투 암호화 형식에 의존합니다. 이는 RSA 4096이 manual_key_management와 함께 사용할 수 있는 유일한 키 유형임을 의미합니다. 이러한 키가 복호화에 사용될 수 있도록 허용되는 것도 중요합니다. 이것이 의미하는 바는 키 저장소 백엔드마다 다르지만 일반적으로 키가 처음 프로비저닝될 때 정의되어야 합니다.

관련 문서#