

• AWS Systems Manager CloudWatch 대시보드는 2026년 4월 30일 이후에는 더 이상 사용할 수 없습니다. 고객은 Amazon CloudWatch 콘솔을 계속 사용하여 현재와 마찬가지로 Amazon CloudWatch 대시보드를 보고, 생성하고, 관리할 수 있습니다. 자세한 내용은 [Amazon CloudWatch 대시보드 설명서](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)를 참조하세요.

# Session Manager 기본 설정 문서 생성(명령줄)
<a name="getting-started-create-preferences-cli"></a>

다음 절차를 사용하여 AWS Systems Manager Session Manager 세션의 기본 설정을 정의하는 SSM 문서를 생성합니다. 문서를 사용하여 데이터 암호화, 세션 기간 및 로깅을 포함한 세션 옵션을 구성할 수 있습니다. 예를 들면, 기본 설정을 사용하여 Amazon Simple Storage Service(S3) 버킷 또는 Amazon CloudWatch Logs 로그 그룹에 세션 로그 데이터를 저장할지를 지정할 수 있습니다. AWS 계정 및 AWS 리전의 모든 세션에 대한 일반 기본 설정을 정의하거나 개별 세션의 기본 설정을 정의하는 문서를 생성할 수 있습니다.

**참고**  
Session Manager 콘솔을 사용하여 일반 세션 기본 설정을 구성할 수도 있습니다.

Session Manager 기본 설정을 설정하는 데 사용하는 문서에는 `Standard_Stream`의 `sessionType`이 있어야 합니다. 세션 문서에 대한 자세한 내용은 [Session 문서 스키마](session-manager-schema.md) 섹션을 참조하세요.

명령줄을 사용하여 기존 Session Manager 기본 설정을 업데이트하는 방법에 대한 자세한 내용은 [Session Manager 기본 설정 업데이트(명령줄)](getting-started-configure-preferences-cli.md) 섹션을 참조하세요.

CloudFormation을 사용하여 세션 환경설정을 생성하는 방법의 예제는 *AWS CloudFormation 사용 설명서*의 [Session Manager 기본 설정에 대한 Systems Manager 문서 생성](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#aws-resource-ssm-document--examples)을 참조하세요.

**참고**  
이 절차에서는 AWS 계정 수준에서 Session Manager 기본 설정을 설정하는 문서를 생성하는 방법을 설명합니다. 세션 수준 기본 설정을 설정하는 데 사용할 문서를 생성하려면 파일 이름 관련 명령 입력에 대한 `SSM-SessionManagerRunShell` 이외의 값을 지정합니다.  
문서를 사용하여 AWS Command Line Interface(AWS CLI)에서 시작하는 세션의 기본 설정을 설정하려면 문서 이름을 `--document-name` 파라미터 값으로 제공합니다. Session Manager 콘솔에서 시작하는 세션의 기본 설정을 설정하려면 문서 이름을 입력하거나 목록에서 선택할 수 있습니다.

**Session Manager 기본 설정을 생성하려면(명령줄)**

1. 로컬 시스템에서 `SessionManagerRunShell.json`이라는 JSON 파일을 생성한 다음 이 파일에 다음 내용을 붙여 넣습니다.

   ```
   {
       "schemaVersion": "1.0",
       "description": "Document to hold regional settings for Session Manager",
       "sessionType": "Standard_Stream",
       "inputs": {
           "s3BucketName": "",
           "s3KeyPrefix": "",
           "s3EncryptionEnabled": true,
           "cloudWatchLogGroupName": "",
           "cloudWatchEncryptionEnabled": true,
           "cloudWatchStreamingEnabled": false,
           "kmsKeyId": "",
           "runAsEnabled": false,
           "runAsDefaultUser": "",
           "idleSessionTimeout": "",
           "maxSessionDuration": "",
           "shellProfile": {
               "windows": "date",
               "linux": "pwd;ls"
           }
       }
   }
   ```

   다음 예와 같이 값을 하드코딩하는 대신 파라미터를 사용하여 세션 기본 설정에 값을 전달할 수도 있습니다.

   ```
   {
      "schemaVersion":"1.0",
      "description":"Session Document Parameter Example JSON Template",
      "sessionType":"Standard_Stream",
      "parameters":{
         "s3BucketName":{
            "type":"String",
            "default":""
         },
         "s3KeyPrefix":{
            "type":"String",
            "default":""
         },
         "s3EncryptionEnabled":{
            "type":"Boolean",
            "default":"false"
         },
         "cloudWatchLogGroupName":{
            "type":"String",
            "default":""
         },
         "cloudWatchEncryptionEnabled":{
            "type":"Boolean",
            "default":"false"
         }
      },
      "inputs":{
         "s3BucketName":"{{s3BucketName}}",
         "s3KeyPrefix":"{{s3KeyPrefix}}",
         "s3EncryptionEnabled":"{{s3EncryptionEnabled}}",
         "cloudWatchLogGroupName":"{{cloudWatchLogGroupName}}",
         "cloudWatchEncryptionEnabled":"{{cloudWatchEncryptionEnabled}}",
         "kmsKeyId":""
      }
   }
   ```

1. 세션 데이터를 보낼 위치를 지정하십시오. S3 버킷 이름(선택적 접두사 사용) 또는 CloudWatch Logs 로그 그룹 이름을 지정할 수 있습니다. 로컬 클라이언트와 관리형 노드 사이에 데이터를 추가로 암호화하려면 암호화에 사용할 KMS 키를 제공하세요. 다음은 예입니다.

   ```
   {
     "schemaVersion": "1.0",
     "description": "Document to hold regional settings for Session Manager",
     "sessionType": "Standard_Stream",
     "inputs": {
       "s3BucketName": "amzn-s3-demo-bucket",
       "s3KeyPrefix": "MyS3Prefix",
       "s3EncryptionEnabled": true,
       "cloudWatchLogGroupName": "MyLogGroupName",
       "cloudWatchEncryptionEnabled": true,
       "cloudWatchStreamingEnabled": false,
       "kmsKeyId": "MyKMSKeyID",
       "runAsEnabled": true,
       "runAsDefaultUser": "MyDefaultRunAsUser",
       "idleSessionTimeout": "20",
       "maxSessionDuration": "60",
       "shellProfile": {
           "windows": "MyCommands",
           "linux": "MyCommands"
       }
     }
   }
   ```
**참고**  
세션 로그 데이터를 암호화하지 않으려는 경우 `s3EncryptionEnabled`의 `true`를 `false`로 변경합니다.  
Amazon S3 버킷 또는 CloudWatch Logs 로그 그룹에 로그를 보내지 않거나, 활성 세션 데이터를 암호화하지 않거나, 계정 세션에서 Run As 지원을 설정하지 않으려면 해당 옵션에 대한 행을 삭제할 수 있습니다. `inputs` 섹션의 마지막 줄은 쉼표로 끝나면 안 됩니다.  
KMS 키 ID를 추가하여 세션 데이터를 암호화하면 세션을 시작하는 사용자와 거기에 연결하는 관리형 노드 모두에 키를 사용할 권한이 있어야 합니다. Session Manager와 함께 IAM 정책을 통해 KMS 키를 사용할 수 있는 권한을 제공합니다. 자세한 내용은 다음 주제를 참조하세요.  
계정의 사용자에 대한 AWS KMS 권한 추가: [Session Manager에 대한 샘플 IAM 정책](getting-started-restrict-access-quickstart.md)
계정의 관리형 노드에 대한 AWS KMS 권한 추가: [2단계: Session Manager의 인스턴스 권한 확인 또는 추가](session-manager-getting-started-instance-profile.md).

1. 파일을 저장합니다.

1. JSON 파일을 생성한 디렉터리에서 다음 명령을 실행합니다.

------
#### [ Linux & macOS ]

   ```
   aws ssm create-document \
       --name SSM-SessionManagerRunShell \
       --content "file://SessionManagerRunShell.json" \
       --document-type "Session" \
       --document-format JSON
   ```

------
#### [  Windows  ]

   ```
   aws ssm create-document ^
       --name SSM-SessionManagerRunShell ^
       --content "file://SessionManagerRunShell.json" ^
       --document-type "Session" ^
       --document-format JSON
   ```

------
#### [   PowerShell   ]

   ```
   New-SSMDocument `
       -Name "SSM-SessionManagerRunShell" `
       -Content (Get-Content -Raw SessionManagerRunShell.json) `
       -DocumentType "Session" `
       -DocumentFormat JSON
   ```

------

   이 작업이 성공하면 다음과 비슷한 출력이 반환됩니다.

   ```
   {
       "DocumentDescription": {
           "Status": "Creating",
           "Hash": "ce4fd0a2ab9b0fae759004ba603174c3ec2231f21a81db8690a33eb66EXAMPLE",
           "Name": "SSM-SessionManagerRunShell",
           "Tags": [],
           "DocumentType": "Session",
           "PlatformTypes": [
               "Windows",
               "Linux"
           ],
           "DocumentVersion": "1",
           "HashType": "Sha256",
           "CreatedDate": 1547750660.918,
           "Owner": "111122223333",
           "SchemaVersion": "1.0",
           "DefaultVersion": "1",
           "DocumentFormat": "JSON",
           "LatestVersion": "1"
       }
   }
   ```