SSM Agent 및 통합 CloudWatch Agent를 사용하는 온프레미스 서버를 임시 보안 인증만 사용하도록 구성하려면 어떻게 해야 하나요?

최종 업데이트 날짜: 2023년 1월 12일

AWS Systems Manager Agent(SSM Agent)와 설치된 통합 Amazon CloudWatch Agent를 사용하는 온프레미스 서버가 있는 하이브리드 환경이 있습니다. 임시 보안 인증만 사용하도록 온프레미스 서버를 구성하려면 어떻게 해야 하나요?

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

통합 CloudWatch Agent를 온프레미스 호스트에 설치하여 성능 모니터링을 개선할 수 있습니다. 구성 파일에 기록되는 AWS Identity and Accesses Management(IAM) 보안 인증을 지정하여 이 작업을 수행할 수 있습니다.

하지만 일부 사용 사례에서는 로컬 파일에 저장되지 않는 순환 보안 인증의 보안을 강화해야 할 수 있습니다.

보다 안전한 배포 시나리오에서는 SSM Agent를 통해 온프레미스 호스트가 IAM 역할을 맡을 수 있습니다. 그런 다음 통합 CloudWatch Agent가 이 IAM 역할을 사용하여 지표와 로그를 CloudWatch에 게시하도록 구성할 수 있습니다.

임시 보안 인증만 사용하도록 온프레미스 서버를 구성하려면:

1.    온프레미스 호스트를 AWS System Manager와 통합합니다.

2.    AWS Managed IAM CloudWatchAgentServerPolicy하이브리드 환경의 IAM 서비스 역할에 연결합니다. 이제 통합된 CloudWatch Agent는 지표와 로그를 CloudWatch에 게시할 수 있는 권한을 갖게 되었습니다.

3.    AWS CLI를 설치하거나 업데이트합니다.

4.    IAM 역할이 온프레미스 호스트에 연결되었는지 확인합니다.

$ aws sts get-caller-identity
{
    "UserId": "AROAJXQ3RVCBOTUDZ2AWM:mi-070c8d5758243078f",
    "Account": "123456789012",
    "Arn": "arn:aws:sts::123456789012:assumed-role/SSMServiceRole/mi-070c8d5758243078f"
}

5.    통합 CloudWatch Agent를 설치합니다.

6.    common-config.toml 파일을 다음과 같이 업데이트합니다.

  • SSM Agent에서 생성한 보안 인증을 가리킴
  • 프록시 구성 설정(해당하는 경우)

참고: SSM Agent는 이러한 보안 인증을 30분마다 새로 고칩니다.

Linux:

/opt/aws/amazon-cloudwatch-agent/etc/common-config.toml
/etc/amazon/amazon-cloudwatch-agent/common-config.toml
[credentials]
  shared_credential_profile = "default"
  shared_credential_file = "/root/.aws/credentials"

Windows:

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\common-config.toml
[credentials]
  shared_credential_profile = "default"
  shared_credential_file = "C:\\Windows\\System32\\config\\systemprofile\\.aws\\credentials"

7.    통합 CloudWatch Agent 지표를 게시할 AWS 리전을 선택합니다.

8.    5단계에서 SSM Agent가 참조한 보안 인증 파일에 리전을 추가합니다. 이 파일은 shared_credential_file에 해당합니다.

$ cat /root/.aws/config 
[default]
region = "eu-west-1"

참고: 반드시 eu-west-1을 대상 지역으로 바꾸세요.

9.    호스트 운영 체제에 따라 통합 CloudWatch Agent가 SSM Agent 보안 인증 파일을 읽을 수 있도록 권한을 업데이트해야 할 수 있습니다. Windows 호스트는 두 에이전트를 모두 SYSTEM 사용자로 실행하므로 추가 조치가 필요하지 않습니다.

Linux 호스트의 경우 기본적으로 통합 CloudWatch Agent가 루트 사용자로 실행됩니다. run_as_user 옵션을 사용하여 권한이 없는 사용자로 실행되도록 통합 CloudWatch Agent를 구성할 수 있습니다. 이 옵션을 사용하는 경우 통합 CloudWatch Agent에 보안 인증 파일에 대한 액세스 권한을 부여해야 합니다.

10.    (Windows만 해당) 통합 CloudWatch Agent 서비스의 시작 유형을 Automatic(Delayed)으로 변경합니다. 그러면 부팅 중에 SSM Agent 서비스가 실행된 후 통합 CloudWatch Agent 서비스가 시작됩니다.