Debian OS 에 SSM Agent 설치하기
오늘 블로그에서는 AWS에서 제공하는 Debian 인스턴스에 SSM Agent를 설치하는 방법에 대해 정리해 보겠습니다.
AWS에서 제공하는 다양한 AMI 중에는 SSM Agent가 사전 설치된 것도 있고, 설치되지 않은 것도 있습니다.
※ 사전 설치된 AMI로는 Amazon Linux 2023, Windows Server 등이 있습니다.
오늘 다뤄볼 Debian 인스턴스는 SSM Agent가 사전 설치되어 있지 않은 AMI입니다.
따라서 Debian AMI로 인스턴스를 생성하면 SSM을 통한 접속이 불가능한 것을 확인할 수 있습니다.

이 Debian 인스턴스에서 SSM을 사용하려면 SSM Agent를 직접 설치해야 합니다.
이번 검증은 아래 공식 문서를 참고하여 진행하였습니다.
오늘 검증 환경은 다음과 같습니다.

- 도쿄 리전
- EC2 인스턴스
- OS : Debian 13 (ARM64)
- 보안 그룹에 HTTPS 설정
- 프라이빗 서브넷에 위치
- NAT 게이트웨이를 통해 SSM과 통신
- S3 엔드포인트 설정
- S3 Endpoint를 통해 AWS 네트워크 내부에서 S3에 접근 (SSM Agent 설치 파일을 가져오기 위해서)
SSM Agent를 설치하는 가장 간단한 방법은, EC2 생성 시 사용자 데이터(User Data)에 SSM Agent 설치 명령어를 미리 넣어두는 것입니다.
※ 리전에 따라 명령어가 변경되니 URL의 리전명 부분을 실제 사용하는 리전으로 변경해주세요.
#!/bin/bash
wget https://s3.ap-northeast-1.amazonaws.com/amazon-ssm-ap-northeast-1/latest/debian_arm64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent
인스턴스가 퍼블릭 서브넷에 있는 경우
인스턴스가 퍼블릭 서브넷에 있는 경우에는 다음과 같이 명령어가 달라집니다.
#!/bin/bash
wget https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_arm64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent
두 명령어의 차이는, 설치 파일을 인터넷을 통해 가져오느냐, AWS 내부 S3 버킷을 통해 가져오느냐에 있습니다.
인스턴스의 아키텍처가 x86_64 인 경우
인스턴스의 아키텍처가 x86_64 인 경우에도 명령어가 달라집니다.
#!/bin/bash
wget https://s3.ap-northeast-1.amazonaws.com/amazon-ssm-ap-northeast-1/latest/debian_amd64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent
#!/bin/bash
wget https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_amd64/amazon-ssm-agent.deb
sudo dpkg -i amazon-ssm-agent.deb
sudo systemctl enable amazon-ssm-agent
sudo systemctl start amazon-ssm-agent
설치해야 하는 인스턴스가 어떤 아키텍처를 사용하고, 어떤 서브넷에 있는지에 따라 잘 생각해서 명령어를 실행시켜야 합니다.
인스턴스 생성 후 시스템 로그를 확인하면 다음과 같은 결과를 볼 수 있습니다.
[ 16.393239] cloud-init[503]: 2026-04-15 04:18:54 (29.7 MB/s) - 'amazon-ssm-agent.deb' saved [32766354/32766354]
[ 16.478792] cloud-init[503]: Selecting previously unselected package amazon-ssm-agent.
[ 16.634664] cloud-init[503]: (Reading database ... 30093 files and directories currently installed.)
[ 16.637881] cloud-init[503]: Preparing to unpack amazon-ssm-agent.deb ...
[ 16.647194] cloud-init[503]: Preparing for install
[ 16.650286] cloud-init[503]: -> Systemd detected
[ 16.658448] cloud-init[503]: inactive
[ 16.665417] cloud-init[503]: Failed to stop amazon-ssm-agent.service: Unit amazon-ssm-agent.service not loaded.
[ 16.859189] cloud-init[503]: Unpacking amazon-ssm-agent (3.3.4177.0-1) ...
[ 17.518339] cloud-init[503]: Setting up amazon-ssm-agent (3.3.4177.0-1) ...
[ 17.528836] cloud-init[503]: Starting agent
[ 17.538559] cloud-init[503]: Created symlink '/etc/systemd/system/multi-user.target.wants/amazon-ssm-agent.service' → '/usr/lib/systemd/system/amazon-ssm-agent.service'.
[ OK ] Started amazon-ssm-agent.service - amazon-ssm-agent.
SSM Agent가 정상적으로 설치되면, SSM을 통한 인스턴스 접속이 가능해집니다.










