

이 가이드는 2025년 3월 13일에 릴리스된 새로운 AWS Wickr 관리 콘솔을 문서화합니다. AWS Wickr 관리 콘솔의 클래식 버전에 대한 설명서는 [Classic 관리 안내서](https://docs.aws.amazon.com/wickr/latest/adminguide-classic/what-is-wickr.html)를 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 암호 복구 지침
<a name="password-recovery-instruction"></a>

## 개요
<a name="password-recovery-overview"></a>

데이터 보존 계정 생성 흐름 중에 서비스가 이미 구성된 데이터 보존 봇을 감지하지만 서버리스 데이터 보존은 감지하지 못하면 암호 수집 스크립트(`collect.py`)가 S3 버킷에 업로드됩니다. 서비스가 봇의 자격 증명을 복구할 수 있도록 Wickr 데이터 보존 암호를 제공하려면이 스크립트를 로컬에서 다운로드하고 실행해야 합니다.

스크립트를 실행하기 전에 IAM 역할 또는 사용자에게 암호 복구 키 및 S3 버킷에 필요한 권한이 있는지 확인합니다. 액세스를 구성하려면 아래 암호 복구 키 정책 섹션을 참조하세요.

## 암호 복구 키 정책
<a name="password-recovery-policy"></a>

암호 복구 스크립트를 실행하려면 이를 실행하는 IAM 보안 주체에 다음 권한이 필요합니다.
+ 암호 복구 키의 kms:GetPublicKey 
+ DRS S3 버킷의 s3:PutObject 

### 리소스 ARNs 찾기
<a name="password-recovery-policy-arn"></a>

제품에서 암호 복구 키를 생성한 경우 Service Catalog 출력에서 키 ARN을 찾을 수 있습니다.

1.  AWS Service Catalog 콘솔 열기

1. 프로비저닝된 제품으로 이동합니다.

1. Wickr 데이터 보존 제품을 선택합니다.

1. **출력** 탭을 클릭합니다.

1. **PasswordRecoveryKeyArn** 출력을 찾습니다.

1. **RetentionBucketName** 출력을 찾습니다.

### 필요한 권한 추가
<a name="password-recovery-policy-permission"></a>

암호 복구 KMS 키 정책에 다음 문을 추가합니다. {your-role-or-user-arn}을 스크립트를 실행할 IAM 역할 또는 사용자의 ARN으로 바꿉니다.

```
{
  "Sid": "PasswordRecoveryScriptAccess",
  "Effect": "Allow",
  "Principal": { "AWS": "{your-role-or-user-arn}" },
  "Action": "kms:GetPublicKey",
  "Resource": "*"
}
```

동일한 보안 주체는 데이터 보존 DRS S3 버킷에 s3:PutObject도 필요합니다. 역할 또는 사용자에 연결된 IAM 자격 증명 정책을 통해 이를 부여합니다.

**참고**  
암호 복구 키는 Docker-bot 데이터 보존에 따라 이전에 암호화된 데이터를 마이그레이션할 때만 사용됩니다.

## Python 스크립트 가이드
<a name="password-recovery-script"></a>

스크립트에는 다음이 필요합니다.
+ Python 3.8 이상(3.10 이상 권장)
+ pip(Python 패키지 관리자, Python 3.4 이상에 포함됨)
+ Python 패키지 2개: `boto3` 및 `cryptography`
+ AWS DRS KMS 키 및 S3 버킷에 대한 액세스 권한으로 구성된 자격 증명

## Windows
<a name="password-recovery-windows"></a>

### Python 을 설치합니다.
<a name="password-recovery-windows-install"></a>

1. [python.org](https://www.python.org) 최신 Python 설치 관리자 다운로드 - Python 3.10 이상에서 "Windows 설치 관리자(64비트)"를 선택합니다.

1. 설치 관리자를 실행합니다. **지금 설치를** 선택하기 전에 첫 번째 화면 하단의 **PATH에 python.exe 추가** 확인란을 선택합니다.

1. 명령 프롬프트 또는 PowerShell을 열어 설치를 확인합니다.

   ```
   python --version
   ```

   `Python 3.10.x` 또는 이후 출력이 표시되어야 합니다.

1. pip를 사용할 수 있는지 확인합니다.

   ```
   pip --version
   ```

### 종속성 설치
<a name="password-recovery-windows-deps"></a>

명령 프롬프트 또는 PowerShell을 열고 다음을 실행합니다.

```
pip install boto3 cryptography
```

### AWS 자격 증명 구성
<a name="password-recovery-windows-creds"></a>

자격 AWS 증명이 구성되어 있는지 확인합니다. 가장 간단한 방법은 AWS CLI를 사용하는 것입니다.

```
aws configure
```

액세스 키 ID, 보안 액세스 키 및 기본 리전을 제공합니다. 자격 증명에는 다음이 포함되어야 합니다.
+ `kms:GetPublicKey` DRS 암호 복구 키의
+ `s3:PutObject` DRS S3 버킷의
+ `s3:GetObject` DRS S3 버킷에서(스크립트 다운로드)

### 스크립트 다운로드 및 추출
<a name="password-recovery-windows-download"></a>

1. S3 버킷에서 zip 파일을 다운로드합니다.

   ```
   aws s3 cp s3://{{your-bucket}}/wickr-drs-password-tool/collect.zip .
   ```

1. zip 파일의 압축을 풉니다.

   ```
   Expand-Archive -Path collect.zip -DestinationPath .
   ```

1. (선택 사항) 스크립트 체크섬이 Wickr AWS 콘솔에 표시된 값과 일치하는지 확인합니다.

   ```
   certutil -hashfile collect.py SHA256
   ```

   예상되는 해시파일 결과는 다음과 같습니다.

   ```
   31c5c85ec16587fbc284ed963bc0cae3723713ea9cb54a2cdc3941726bcc662a
   ```

### 스크립트 실행
<a name="password-recovery-windows-run"></a>

```
python collect.py
```

성공적으로 완료되면 로컬 파일을 삭제합니다.

```
del collect.py config.json collect.zip
```

## macOS
<a name="password-recovery-macos"></a>

### Python 을 설치합니다.
<a name="password-recovery-macos-install"></a>

macOS는 시스템 Python과 함께 제공되지만 오래된 것일 수 있습니다. 다음 방법 중 하나를 사용하여 현재 버전을 설치합니다.

**옵션 A: 공식 설치 관리자(단순)**  


1. [python.org](https://www.python.org) macOS 설치 관리자 다운로드 - Python 3.10 이상을 선택합니다.

1. `.pkg` 설치 관리자를 실행하고 프롬프트를 따릅니다.

1. 다음을 확인합니다.

   ```
   python3 --version
   ```

**옵션 B: Homebrew**  
Homebrew를 설치한 경우:

```
brew install python@3.12
```

다음을 확인합니다.

```
python3 --version
```

### 종속성 설치
<a name="password-recovery-macos-deps"></a>

```
pip3 install boto3 cryptography
```

권한 오류가 발생하면 다음을 사용합니다.

```
pip3 install --user boto3 cryptography
```

### AWS 자격 증명 구성
<a name="password-recovery-macos-creds"></a>

```
aws configure
```

액세스 키 ID, 보안 액세스 키 및 기본 리전을 제공합니다. 자격 증명에는 다음이 포함되어야 합니다.
+ `kms:GetPublicKey` DRS 암호 복구 키의
+ `s3:PutObject` DRS S3 버킷의
+ `s3:GetObject` DRS S3 버킷에서(스크립트 다운로드)

### 스크립트 다운로드 및 추출
<a name="password-recovery-macos-download"></a>

1. S3 버킷에서 zip 파일을 다운로드합니다.

   ```
   aws s3 cp s3://{{your-bucket}}/wickr-drs-password-tool/collect.zip .
   ```

1. zip 파일의 압축을 풉니다.

   ```
   unzip collect.zip
   ```

1. (선택 사항) 스크립트 체크섬을 확인합니다.

   ```
   shasum -a 256 collect.py
   ```

   예상되는 샤섬 결과는 다음과 같습니다.

   ```
   31c5c85ec16587fbc284ed963bc0cae3723713ea9cb54a2cdc3941726bcc662a
   ```

   출력을 Wickr AWS 콘솔에 표시된 체크섬과 비교합니다.

### 스크립트 실행
<a name="password-recovery-macos-run"></a>

```
python3 collect.py
```

성공적으로 완료되면 로컬 파일을 삭제합니다.

```
rm collect.py config.json collect.zip
```

## Linux
<a name="password-recovery-linux"></a>

### Python 을 설치합니다.
<a name="password-recovery-linux-install"></a>

대부분의 Linux 배포판에는 Python 3이 포함되어 있습니다. 현재 버전을 확인합니다.

```
python3 --version
```

Python이 설치되지 않았거나 3.8 미만인 경우 배포의 패키지 관리자를 사용하여 설치합니다.

**Ubuntu/Debian**  


```
sudo apt update
sudo apt install python3 python3-pip
```

**Amazon Linux 2023 / Fedora / RHEL 9 이상**  


```
sudo dnf install python3 python3-pip
```

**Amazon Linux 2/RHEL 7-8/CentOS 7-8**  


```
sudo yum install python3 python3-pip
```

다음을 확인합니다.

```
python3 --version
pip3 --version
```

### 종속성 설치
<a name="password-recovery-linux-deps"></a>

```
pip3 install boto3 cryptography
```

권한 오류가 발생하면 다음을 사용합니다.

```
pip3 install --user boto3 cryptography
```

### AWS 자격 증명 구성
<a name="password-recovery-linux-creds"></a>

```
aws configure
```

액세스 키 ID, 보안 액세스 키 및 기본 리전을 제공합니다. 자격 증명에는 다음이 포함되어야 합니다.
+ `kms:GetPublicKey` DRS 암호 복구 키의
+ `s3:PutObject` DRS S3 버킷의
+ `s3:GetObject` DRS S3 버킷에서(스크립트 다운로드)

### 스크립트 다운로드 및 추출
<a name="password-recovery-linux-download"></a>

1. S3 버킷에서 zip 파일을 다운로드합니다.

   ```
   aws s3 cp s3://{{your-bucket}}/wickr-drs-password-tool/collect.zip .
   ```

1. zip 파일의 압축을 풉니다.

   ```
   unzip collect.zip
   ```

   `unzip`가 설치되지 않은 경우: `sudo apt install unzip` (Debian/Ubuntu) 또는 `sudo dnf install unzip` (Fedora/RHEL/AL2023).

1. (선택 사항) 스크립트 체크섬을 확인합니다.

   ```
   sha256sum collect.py
   ```

   예상되는 sha256sum 결과는 다음과 같습니다.

   ```
   31c5c85ec16587fbc284ed963bc0cae3723713ea9cb54a2cdc3941726bcc662a
   ```

   출력을 Wickr AWS 콘솔에 표시된 체크섬과 비교합니다.

### 스크립트 실행
<a name="password-recovery-linux-run"></a>

```
python3 collect.py
```

성공적으로 완료되면 로컬 파일을 삭제합니다.

```
rm collect.py config.json collect.zip
```