클라우드 연결된 Panther 인스턴스 설정하기

panther-cloud-connected-setup CLI 도구 사용하기

개요

프로비저닝하려면 Cloud Connected Panther 인스턴스를 배포하려면 다음을 사용합니다 panther-cloud-connected-setup CLI 도구와 수동 절차를 함께 사용합니다. Cloud Connected Panther 인스턴스는 AWS 및 Snowflake 또는 Databricks에 배포됩니다.

아래의 CLI 도구에 대해 읽은 후 설정 프로세스를 시작하세요.

circle-info

이 페이지의 지침은 새로운 Cloud Connected 배포를 설정하기 위한 것입니다. 기존의 Panther-호스팅(서비스형 SaaS) 인스턴스를 Cloud Connected 배포로 전환하려면 이 단계를 따르지 말고 Panther 지원팀에 문의하여 전환을 요청하세요.

사용자를 사용할 것이며, panther-cloud-connected-setup 도구

Cloud Connected Panther 인스턴스를 설정하는 과정의 일부는 panther-cloud-connected-setup CLI 도구arrow-up-right를 실행하는 것입니다. 이 도구는 로컬 머신 또는 AWS, Snowflake, Databricks 계정 내에서 모든 작업을 수행하며 Panther와 자격 증명이나 정보를 공유하지 않습니다.

도구가 수행하는 작업

이 도구를 실행하면:

  • AWS 계정 내에서:

    • 다음을 배포합니다 PantherDeploymentRole IAM 롤

    • 다음을 설치합니다 PantherDeploymentUpdaterRole로, 이는 당신의 PantherDeploymentRole 업데이트 상태를 유지합니다

    • 다음을 배포하고 실행합니다 PantherReadinessCheck 사전 배포 도구로, 배포 문제에 직면할 가능성을 확인합니다

    • 제공한 루트 도메인에 따라 다음 서브도메인에 대한 SSL 인증서를 등록합니다:

      • <desired panther subdomain>.yourdomain.com

      • *.<desired panther subdomain>.yourdomain.com

    • (선택 사항) 인증서 검증을 위해 Route 53에 DNS 검증 레코드를 생성합니다

  • (Snowflake 사용 시) 다음을 사용하여 AWS 환경에서 Snowflake 자격 증명을 프로비저닝합니다:

circle-info

Databricks를 데이터 저장소로 사용하는 경우, CLI 도구는 Databricks에서 어떠한 작업도 수행하지 않습니다.

도구가 상태를 저장하는 방법

사용자를 사용할 것이며, panther-cloud-connected-setup 도구는 상태를 panther-cli-state.db 파일에 저장합니다. 도구가 처음 실행에서 Panther 인스턴스를 성공적으로 프로비저닝하지 못하면, 이 파일은 이미 성공적으로 완료된 단계를 추적하여 재실행을 더 간단하게 만듭니다.

circle-exclamation

Cloud Connected Panther 인스턴스 설정 방법

사전 요구 사항

도구 설치 전제 조건

시작하기 전에 반드시 panther-cloud-connected-setup 도구에서 실행되었습니다.

운영 체제
설치 지침을 설치해야 합니다

macOS 및 Linux

다음을 설치합니다 panther-cloud-connected-setup 도구를 사용하여 Homebrewarrow-up-right 다음 명령을 실행하여:

첫 번째 명령은 Panther의 자체 GitHub Homebrew 탭 저장소를 참조합니다arrow-up-right.

Windows

다음을 설치합니다 panther-cloud-connected-setup 도구를 panther-cli 리포지토리의 Releases 페이지에서 패키지로 사용합니다arrow-up-right.

도구가 올바르게 설정되었는지 확인하려면 다음을 실행하세요:

이 명령은 다음과 유사한 출력을 생성해야 합니다:

AWS 전제 조건

circle-info

귀하의 AWS 조직에 서비스 제어 정책(SCPs)arrow-up-rightControl Tower 가드레일arrow-up-right 조직 수준의 정책이 있는 경우, 이를 업데이트하거나 예외를 생성할 수 있는 권한이 있는 것이 권장됩니다. 이러한 정책은 CLI 도구의 작업을 방해하여 프로비저닝 실패를 초래할 수 있습니다.

chevron-rightAWS로 인증하기hashtag

사용자를 사용할 것이며, panther-cloud-connected-setup 도구는 다음 두 가지 AWS 인증을 지원합니다:

AWS에 인증을 시도할 때 도구는 먼저 config.yml 파일에서 명시적으로 정의된 자격 증명을 찾습니다 (AWSConfig.AccessKeyIDAWSConfig.SecretAccessKey).

자격 증명이 config.yml에서 발견되면, 이러한 자격 증명을 사용하여 인증을 시도합니다. 만약 config.yml에서 자격 증명이 발견되지 않으면, 표준 AWS 클라이언트 라이브러리의 일반적인 해결 전략을 사용하여 환경에서 AWS 자격 증명을 로드하려고 시도합니다.

기타 전제 조건

  • 사용자 지정 도메인이 등록되어 있어야 합니다.

(Snowflake 사용 시) Snowflake 전제 조건

chevron-right(권장하지 않음) Panther용으로 수동으로 새 Snowflake 계정 및 사용자 생성하기hashtag
circle-exclamation

Snowflake 계정 및 사용자를 수동으로 생성하려면:

  1. Snowflake 조직에서 아래 템플릿을 사용하여 Panther 전용의 새 Snowflake 계정을 생성하세요. <YOUR_REGION> 은 다음 중 하나여야 합니다 지원되는 AWS 리전 (및 Panther 인스턴스가 최종적으로 배포될 동일한 AWS 리전arrow-up-right 이어야 합니다). 이 명령은 계정을 생성합니다arrow-up-right 및 계정의 첫 번째 사용자도 생성하며, 해당 사용자에게는 ACCOUNTADMIN 역할이 할당됩니다. 이 사용자는 Panther에 제공되지 않습니다. 전체 구문 지침은 CREATE ACCOUNT 명령어 에 대해 더 읽을 수 있습니다arrow-up-right.

  2. 다음 명령으로 Snowflake 계정 URL을 구성하세요:

    • URL 형식은 다음과 같습니다: <org-name>-<account-name>.snowflakecomputing.com

    • 이 값을 안전한 위치에 저장하세요; 이 프로세스의 이후 단계에서 필요합니다.

  3. 다음 명령으로 RSA 키페어를 생성하세요: openssl genrsa 4096 | openssl pkcs8 -topk8 -inform PEM -out panther_rsa_key.p8 -nocrypt && openssl rsa -in panther_rsa_key.p8 -pubout -out panther_rsa_key.pub

  4. 1단계에서 생성한 관리자 사용자에게 RSA 공개 키를 할당하세요:

(Databricks 사용 시) Databricks 전제 조건

1단계: 새 AWS 계정 생성

circle-exclamation

2단계: Panther에 값 요청

circle-info

이 단계는 Panther Cloud Connected 인스턴스를 처음 설정하는 경우에만 필요합니다. 이전에 설정한 적이 있다면(예: 여러 Panther 인스턴스를 관리하는 경우) 값은 변경되지 않으므로 이전 값을 사용할 수 있습니다.

  • Cloud Connected 인스턴스를 배포한다고 Panther 지원팀에 알리고 다음 값들을 요청하세요: CloudFormationConfig.IdentityAccountIdCloudFormationConfig.OpsAccountId이 값들은 3단계에서 사용됩니다.

3단계: 구성 파일 작성

  1. 다음 템플릿 중 하나를 복사하여 로컬에 구성 파일을 생성하세요:

  2. 다음 값 입력 시

4단계: 실행 panther-cloud-connected-setup 도구

  • 다음 명령으로 도구를 실행하세요:

    • 유용할 수 있는 추가 플래그:

      • --verbose: 자세한 로깅 출력

      • --snowflake-logging: Snowflake 상세 로깅 출력

      • --force-check-certificates: 이미 발급됨으로 표시되어 있어도 인증서를 강제로 확인

circle-info

도구에 대한 자세한 내용은 README.mdarrow-up-right.

5단계(필요한 경우): 인증서 요청을 검증하기 위한 DNS 레코드 생성

이전 단계에서 panther-cloud-connected-setup 도구를 실행하면 고객을 대신하여 SSL 인증서를 요청했으며, 만약 AutoRegisterValidationDomains: true구성 파일에 설정했다면 Route 53에 DNS 검증 레코드를 생성했습니다.

만약 AutoRegisterValidationDomains: false로 설정한 경우, DNS 검증 레코드를 수동으로 생성해야 합니다.

자동 DNS 레코드 생성(활성화된 경우)

만약 AutoRegisterValidationDomains: true구성 파일 그리고 도메인이 동일한 AWS 계정의 Route 53에 호스팅되어 있으면, panther-cloud-connected-setup 는 필요한 DNS 검증 레코드를 자동으로 생성하려 시도합니다.

확인을 위해 도구 출력 내용을 확인하세요:

  • 다음을 보았다면 Successfully created DNS validation record 메시지는 DNS 레코드가 자동으로 생성되었음을 의미하므로 아래 수동 단계를 건너뛸 수 있습니다.

  • 다음을 보았다면 Failed to auto-register validation domains 경고가 표시되거나 인증서가 미발급으로 표시되면 아래 수동 단계를 진행하세요.

수동 DNS 레코드 생성

만약 AutoRegisterValidationDomains: false구성 파일 또는 자동 등록에 실패한 경우 DNS 검증 레코드를 수동으로 생성하세요:

  1. 도구가 성공적으로 실행되면 계정 정보가 포함된 파일을 출력합니다. 이 파일에서 panther_certificatewildcard_certificate 노드를 찾으세요:

    • validation_details.record_name validation_details.record_value 값이 위의 panther_certificatewildcard_certificate 노드들 간에 다른지, 또는 동일한지 확인하세요.

  2. AWS Route53(또는 선택한 다른 DNS 서비스)에서:

    • 도구가 Snowflake 계정과 관리 사용자를 대신 프로비저닝해야 하는 경우: validation_details.record_value 값이 위의 panther_certificatewildcard_certificate 노드들에서 동일하면 하나의 CNAME DNS 레코드를 생성하세요.

      • 위의 예시 출력 파일에서는 값이 동일하므로 다음과 같이 단 하나의 DNS 레코드만 생성하면 됩니다:

        • 이름: _8f65a0a68b4ca63ae9b9baa41429bf89.panther.coolsystems.net.

        • 값: _2b5df93054bace85f6a84fb07235830d.zfyfvmchrl.acm-validations.aws.

        • 유형: CNAME

    • 도구가 Snowflake 계정과 관리 사용자를 대신 프로비저닝해야 하는 경우: validation_details.record_value 값이 위의 panther_certificatewildcard_certificate 노드들에서 값이 다르면 두 개의 CNAME DNS 레코드를 생성하세요.

6단계: 출력된 파일을 Panther에 제공

  • 도구가 성공적으로 실행되면 계정 정보가 포함된 파일을 출력합니다. 이 파일을 Panther 지원팀에 제공하세요.

chevron-right출력 파일 예시hashtag
circle-exclamation

7단계: CNAME 레코드 생성

  1. AWS 콘솔에서 EC2 서비스를 찾으세요.

  2. 다음의 AWS 제공 DNS 이름을 찾으세요 로드 밸런서:

    1. Route53(또는 선택한 다른 DNS 서비스)로 이동하세요.

    2. 기본 서브도메인(<your_desired_Panther_subdomain>.<company_name>.com)이 이 로드 밸런서의 DNS 이름을 가리키도록 새 CNAME 레코드를 생성하세요. 로드 밸런서.

  3. EC2에서 다음의 AWS 제공 DNS 이름을 찾으세요 http-ingest-alb 로드 밸런서:

    1. Route53(또는 선택한 다른 DNS 서비스)로 이동하세요.

    2. 로그 서브도메인(logs.<your_desired_Panther_subdomain>.<company_name>.com)이 이 로드 밸런서의 DNS 이름을 가리키도록 새 CNAME 레코드를 생성하세요. http-ingest-alb 로드 밸런서.

  4. )이 이 로드 밸런서를 가리키도록 새 CNAME 레코드를 생성하세요.

  5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. AWS 콘솔에서 API Gateway 서비스로 이동하세요. > APIs.

  6. 사용자 지정 도메인 이름API 서브도메인 이름을 클릭하세요 ().

  7. 일반 구성 api.<your_desired_Panther_subdomain>.<company_name>.com 섹션에서 엔드포인트 구성 값을 복사하세요. Under an "Endpoint configuration" header, a field titled "API Gateway domain name" is circled.

    1. Route53(또는 선택한 다른 DNS 서비스)로 이동하세요.

    2. API Gateway 도메인 이름API 서브도메인 이름을 클릭하세요 (API 서브도메인( 엔드포인트 구성 값을 복사하세요.

  8. )이 이

pipenv run panther_analysis_tool check-connection --api-host $YOUR_GRAPHQL_ENDPOINT --api-token $YOUR_TOKEN

Linux BUILD_GENERAL1_LARGE Panther는 자동으로 귀하의arrow-up-right Lambda 동시 실행 할당량

을 2,000으로 증액 요청합니다.

circle-info

9단계(데이터브릭스 사용 시): Panther용 Databricks 구성

  • Databricks를 사용하는 경우 이 단계에서 Panther 콘솔은 접근 가능하지만 완전하게 작동하지 않을 수 있습니다. Panther용 Databricks 구성하기.

설정 후 권장사항

모든 지침을 완료하세요

를 따르세요.

Panther 배포를 위해 생성된 AWS 리소스에 추가할 수 있습니다. 이렇게 하려면 태그 키와 값 목록을 Panther 지원팀에 제공하세요.

마지막 업데이트

도움이 되었나요?