Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
Amazon EC2 인스턴스를 관리하기 위해 프록시를 사용하도록 SSM 에이전트를 구성할 때 문제를 해결하려면 어떻게 해야 합니까?
SSM 에이전트와 함께 프록시를 사용하여 AWS Systems Manager로 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 관리할 때 오류가 발생합니다. 프록시 문제를 해결하려면 어떻게 해야 하나요?
간략한 설명
Systems Manager를 사용하여 Amazon EC2 인스턴스를 관리할 수 있습니다. 그러나 인스턴스가 프록시 뒤에 있는 경우 프록시를 통해 Amazon 엔드포인트와 통신하도록 SSM 에이전트를 구성해야 합니다. SSM 에이전트가 올바르게 구성되지 않은 경우 다음과 유사한 오류 메시지가 나타납니다.
Post https://ssm.RegionID.amazonaws.com/: proxyconnect tcp: dial tcp xxx.xxx.xxx.xxx:yyyy: i/o timeout
해결 방법
프록시 문제를 해결하려면 다음 단계를 따르세요.
EC2 인스턴스가 프록시 서버에 액세스할 수 있는지 확인
EC2 Windows 인스턴스
다음 Windows PowerShell 명령을 사용하여 프록시에 대한 연결을 확인할 수 있습니다. 다음 예에서는 호스트 이름을 프록시 호스트 이름으로 바꾸고 포트를 프록시 포트로 바꿉니다.
> Test-NetConnection hostname -port port
예상 출력:
ComputerName : hostname RemoteAddress : xxx.xxx.xxx.xxx RemotePort : port InterfaceAlias : Ethernet SourceAddress : YYY.YYY.YYY.YYY TcpTestSucceeded : True PS C:\Windows\system32>
EC2 Linux 인스턴스
다음 telnet 또는 netcat 명령을 사용하여 프록시에 대한 연결을 확인할 수 있습니다. 다음 예에서는 호스트 이름을 프록시 호스트 이름으로 바꾸고 포트를 프록시 포트로 바꿉니다.
Telnet
$ telnet hostname port
예상 출력:
Trying xxx.xxx.xxx.xxx... Connected to hostname. Escape character is '^]'.
Netcat
$ nc -vz hostname port'
예상 출력:
Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to xxx.xxx.xxx.xxx:YYYY. Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds.
참고: Netcat은 Amazon EC2 인스턴스에 사전 설치되어 있지 않습니다. Netcat을 수동으로 설치하려면 Nmap 웹 사이트에서 Ncat을 참조하세요.
EC2 인스턴스가 프록시 서버를 통해 Systems Manager 엔드포인트에 도달할 수 있는지 확인
다음 명령을 실행하여 인스턴스가 프록시 서버를 통해 Systems Manager 엔드포인트에 도달할 수 있는지 확인합니다. http 오류 코드 4xx를 수신하면 프록시 서버를 통해 엔드포인트에 도달할 수 있음을 나타냅니다.
참고: 다음 명령 예에서는 RegionID를 AWS 리전으로 바꾸고 호스트 이름을 프록시 호스트 이름으로 바꾸고 포트를 프록시 포트로 바꿉니다.
EC2 Windows 인스턴스
> (invoke-webrequest https://ssm.RegionID.amazonaws.com -DisableKeepAlive -UseBasicParsing -Method head -Proxy http://hostname:port )
예상 출력:
invoke-webrequest : The remote server returned an error: (404) Not Found.
EC2 Linux 인스턴스
$ curl -k --proxy http://hostname:port -m 5 -s -o /dev/null -w "%{http_code}" https://ssm.RegionID.amazonaws.com
예상 출력:
404
SSM 에이전트가 프록시 정보를 사용하도록 구성되어 있는지 확인
EC2 Windows 인스턴스
SSM 에이전트 로그를 검토하여 다음 예에서와 같이 프록시 설정이 적용되는지 확인해야 합니다. 다음 명령을 입력합니다.
> type C:\ProgramData\Amazon\SSM\Logs\amazon-ssm-agent.log | findstr -i "proxy"
예상 출력:
2021-03-18 19:06:16 INFO Getting IE proxy configuration for current user: The operation completed successfully. 2021-03-18 19:06:16 INFO Getting WinHTTP proxy default configuration: The operation completed successfully. 2021-03-18 19:06:16 INFO Proxy environment variables: 2021-03-18 19:06:16 INFO http_proxy: hostname:port 2021-03-18 19:06:16 INFO https_proxy: 2021-03-18 19:06:16 INFO no_proxy: 169.254.169.254
자세한 내용은 Windows Server 인스턴스에 프록시를 사용하도록 SSM 에이전트 구성을 참조하십시오.
EC2 Linux 인스턴스
먼저 다음 명령을 실행하여 SSM 에이전트가 프로세스 환경 변수를 확인하여 현재 필요한 프록시 변수를 사용하는지 확인합니다.
sudo cat /proc/$(pidof amazon-ssm-agent)/environ | xargs -0 -L1 -I{} echo {}
예상 출력:
[root@host123~]# sudo cat /proc/$(pidof amazon-ssm-agent)/environ | xargs -0 -L1 -I{} echo {} LANG=en_US.UTF-8 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin http_proxy=http://Hostname:Port https_proxy=http://Hostname:Port no_proxy=169.254.169.254
그런 다음 출력에 프록시 변수가 포함되지 않은 경우 인스턴스 유형에 대한 아래 지침에 따라 관련 파일을 확인하고 업데이트합니다.
Ubuntu 14.04와 같은 업스타트를 기반으로 한 EC2 Linux 인스턴스
amazon-ssm-agent.override 파일에 필요한 구성이 포함되어 있는지 확인합니다. 다음 명령을 입력하고 출력이 예시 예상 출력과 일치하는지 확인합니다. 자세한 내용은 프록시(업스타트)를 사용하도록 SSM 에이전트 구성을 참조하세요.
중요: amazon-ssm-agent.override 파일을 업데이트하는 경우 파일을 편집한 후 SSM 에이전트를 다시 시작해야 합니다.
$ cat /etc/init/amazon-ssm-agent.override
HTTP 프록시 서버에 대한 예상 출력:
env http_proxy=http://hostname:port env https_proxy=http://hostname:port env no_proxy=169.254.169.254
HTTPS 프록시 서버에 대한 예상 출력:
env http_proxy=http://hostname:port env https_proxy=https://hostname:port env no_proxy=169.254.169.254
스냅을 사용하여 설치된 SSM 에이전트를 포함한 Ubuntu 16.04 이상을 기반으로 하는 EC2 Linux 인스턴스
다음 명령을 입력하고 프록시 정보가 예시 예상 출력과 일치하는지 확인합니다. 자세한 내용은 프록시(systemd)를 사용하도록 SSM 에이전트 구성을 참조하세요.
중요: amazon-ssm-agent.override 파일을 업데이트하는 경우 파일을 편집한 후 SSM 에이전트를 다시 시작해야 합니다.
$ cat /etc/systemd/system/snap.amazon-ssm-agent.amazon-ssm-agent.service.d/override.conf
HTTP 프록시 서버에 대한 예상 출력:
[Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=http://hostname:port" Environment="no_proxy=169.254.169.254"
HTTPS 프록시 서버에 대한 예상 출력:
[Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=https://hostname:port" Environment="no_proxy=169.254.169.254"
Amazon Linux 2를 기반으로 하는 EC2 Linux 인스턴스
다음 명령을 입력하고 프록시 정보가 예시 예상 출력과 일치하는지 확인합니다. 자세한 내용은 프록시(systemd)를 사용하도록 SSM 에이전트 구성을 참조하세요.
중요: amazon-ssm-agent.override 파일을 업데이트하는 경우 파일을 편집한 후 SSM 에이전트를 다시 시작해야 합니다.
$ cat /etc/systemd/system/amazon-ssm-agent.service.d/override.conf
HTTP 프록시 서버에 대한 예상 출력:
[Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=http://hostname:port" Environment="no_proxy=169.254.169.254"
HTTPS 프록시 서버에 대한 예상 출력:
[Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=https://hostname:port" Environment="no_proxy=169.254.169.254"
다른 운영 체제를 기반으로 하는 EC2 Linux 인스턴스
다음 명령을 입력하고 프록시 정보가 예시 예상 출력과 일치하는지 확인합니다. 자세한 내용은 프록시(systemd)를 사용하도록 SSM 에이전트 구성을 참조하세요.
중요: amazon-ssm-agent.override 파일을 업데이트하는 경우 파일을 편집한 후 SSM 에이전트를 다시 시작해야 합니다.
$ cat /etc/systemd/system/amazon-ssm-agent.service.d/amazon-ssm-agent.override
HTTP 프록시 서버에 대한 예상 출력:
[Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=http://hostname:port" Environment="no_proxy=169.254.169.254"
HTTPS 프록시 서버에 대한 예상 출력:
[Service] Environment="http_proxy=http://hostname:port" Environment="https_proxy=https://hostname:port" Environment="no_proxy=169.254.169.254"
관련 정보

관련 콘텐츠
- 질문됨 2년 전lg...
- 질문됨 3일 전lg...
- AWS 공식업데이트됨 일 년 전
- AWS 공식업데이트됨 일 년 전