本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定SSM Agent為在 Linux 節點上使用代理伺服器
您可以將 AWS Systems Manager 代理程式 (SSM Agent) 設定為透過 HTTP Proxy 進行通訊,方法是建立覆寫組態檔並將http_proxy
https_proxy
、和no_proxy
設定新增至檔案。如果您安裝較新或較舊版本的 SSM Agent,覆寫檔案也會保留代理設定。本節包括在 upstart 和 systemd 環境中建立覆寫檔案的程序。如果您打算使用Session Manager,請注意不支持HTTPS代理服務器。
將 SSM Agent設定為使用代理 (upstart)
使用下列程序可建立 upstart
環境的覆寫組態檔案。
設定 SSM Agent 以使用代理 (upstart)
-
連線至安裝 SSM Agent 所在的受管執行個體。
-
打開一個簡單的編輯器VIM,例如,根據您使用的是HTTP代理服務器還是HTTPS代理服務器,添加以下配置之一。
對於HTTP代理服務器:
env http_proxy=http://
hostname
:port
env https_proxy=http://hostname
:port
env no_proxy=IP address for instance metadata services (IMDS)
對於HTTPS代理服務器:
env http_proxy=http://
hostname
:port
env https_proxy=https://hostname
:port
env no_proxy=IP address for instance metadata services (IMDS)
重要
將
no_proxy
設定新增至檔案並指定 IP 位址。的 IP 位址no_proxy
是 Systems Manager 的執行個體中繼資料服務 (IMDS) 端點。如果未指定no_proxy
,則呼叫「Systems Manager」會從 Proxy 服務取得身分識別 (如果已啟用IMDSv1後援),或呼叫「Systems Manager」會失敗 (如果強制執行IMDSv2的話)。-
對於IPv4,指定
no_proxy=169.254.169.254
。 -
對於IPv6,指定
no_proxy=[fd00:ec2::254]
。執行個體中繼資料服務的IPv6位址與IMDSv2指令相容。該IPv6地址只能在 AWS Nitro 系統上構建的實例上訪問。如需詳細資訊,請參閱 Amazon EC2 使用者指南中的執行個體中繼資料服務第 2 版的運作方式。
-
-
在下列位置使用名稱
amazon-ssm-agent.override
儲存檔案:/etc/init/
-
使用下列命令停止和重新啟動 SSM Agent:
sudo service stop amazon-ssm-agent sudo service start amazon-ssm-agent
注意
如需有關在 Upstart 環境中使用 .override
檔案的詳細資訊,請參閱 init:Upstart init 協助程式任務組態
將 SSM Agent設定為使用代理 (systemd)
使用以下程序來設定 SSM Agent,以使用 systemd
環境中的代理。
注意
此程序中的某些步驟包含 Ubuntu Server 執行個體的明確指示,以使用 Snap 安裝 SSM Agent。
-
連接到其中安裝 SSM Agent 的執行個體。
-
根據作業系統類型,執行以下其中一個命令。
-
在 Ubuntu Server 執行個體上,使用 Snap 安裝 SSM Agent︰
sudo systemctl edit snap.amazon-ssm-agent.amazon-ssm-agent
在其他作業系統中:
sudo systemctl edit amazon-ssm-agent
-
-
打開一個簡單的編輯器VIM,例如,根據您使用的是HTTP代理服務器還是HTTPS代理服務器,添加以下配置之一。
請確定您在註解上方輸入
### Lines below this comment will be discarded
「」的資訊,如下圖所示。對於HTTP代理服務器:
[Service] Environment="http_proxy=http://
hostname
:port
" Environment="https_proxy=http://hostname
:port
" Environment="no_proxy=IP address for instance metadata services (IMDS)
"對於HTTPS代理服務器:
[Service] Environment="http_proxy=http://
hostname
:port
" Environment="https_proxy=https://hostname
:port
" Environment="no_proxy=IP address for instance metadata services (IMDS)
"重要
將
no_proxy
設定新增至檔案並指定 IP 位址。的 IP 位址no_proxy
是 Systems Manager 的執行個體中繼資料服務 (IMDS) 端點。如果未指定no_proxy
,則呼叫「Systems Manager」會從 Proxy 服務取得身分識別 (如果已啟用IMDSv1後援),或呼叫「Systems Manager」會失敗 (如果強制執行IMDSv2的話)。-
對於IPv4,指定
no_proxy=169.254.169.254
。 -
對於IPv6,指定
no_proxy=[fd00:ec2::254]
。執行個體中繼資料服務的IPv6位址與IMDSv2指令相容。該IPv6地址只能在 AWS Nitro 系統上構建的實例上訪問。如需詳細資訊,請參閱 Amazon EC2 使用者指南中的執行個體中繼資料服務第 2 版的運作方式。
-
-
儲存您的變更。根據作業系統類型,系統會自動建立下列其中一個檔案。
-
在 Ubuntu Server 執行個體上,使用 Snap 安裝 SSM Agent︰
/etc/systemd/system/snap.amazon-ssm-agent.amazon-ssm-agent.service.d/override.conf
-
在 Amazon Linux 2 和 Amazon Linux 2023 執行個體上:
/etc/systemd/system/amazon-ssm-agent.service.d/override.conf
-
在其他作業系統中:
/etc/systemd/system/amazon-ssm-agent.service.d/amazon-ssm-agent.override
-
-
根據作業系統類型,使用下列其中一個命令,重新啟動 SSM Agent。
-
在使用 Snap 安裝的 Ubuntu Server 執行個體上︰
sudo systemctl daemon-reload && sudo systemctl restart snap.amazon-ssm-agent.amazon-ssm-agent
-
在其他作業系統中:
sudo systemctl daemon-reload && sudo systemctl restart amazon-ssm-agent
-
注意
如需有關在 systemd 環境中使用 .override
檔案的詳細資訊,請參閱 Red Hat Enterprise Linux 7 系統管理員指南中的修改現有單元檔案