如何配置會話管理器(Session Manager) 通過控制台遠程連接實例
步驟
創建IAM角色
-
登錄 AWS 管理控制台 並通過以下網址打開 IAM 控制台 https://console.amazonaws.cn/iam/
-
在導航窗格中選擇 Policies,然后選擇 Create policy. (如果 Get Started 按鈕出現,選擇此按鈕,然后選擇 Create Policy.)
-
選擇 JSON 選項卡。
-
將默認內容替換為以下內容:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:UpdateInstanceInformation", "ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetEncryptionConfiguration" ], "Resource": "*" } ] }
-
選擇查看策略.
-
在 Review policy (查看策略) 頁面上,對於 Name (名稱),輸入內聯策略的名稱,例如
SessionManagerPermissions
. -
(可選)對於Description(描述), 輸入策略描述.
-
選擇 Create policy (創建策略).
-
在導航窗格中,選擇角色,然后選擇創建角色.
-
在創建角色頁面上,選擇 AWS 服務,然后從選擇將使用此角色的服務列表中,選擇 EC2.
-
選擇 Next: Permissions (下一步: 權限).
-
在 Attached permissions policy (附加的權限策略) 頁面上,選中剛剛創建的策略名稱左側的復選框,例如
SessionManagerPermissions
. -
選擇 Next: Review.
-
在 Review (審核) 頁面中,對於 Role name (角色名稱),輸入 IAM 實例配置文件的名稱,例如
MySessionManagerInstanceProfile
. -
對於 Role description (角色描述),輸入實例配置文件的描述.
-
選擇 Create role (創建角色).
為EC2實例掛載IAM實例配置文件
- 登錄EC2控制台,選中需要登錄的實例
- 點擊操作 -> 安全 -> 修改IAM角色
- 彈出的對話框中查詢
MySessionManagerInstanceProfile
並選擇保存
安裝amazon-ssm-agent服務
-
默認情況下,Amazon Linux和Amazon Linux 2已經預裝了amazon-ssm-agent服務,需要立即使配置生效可以重啟實例,或者在實例內部執行以下命令,重啟amazon-ssm-agent服務.
sudo systemctl restart amazon-ssm-agent
-
其他操作系統需要安裝amazon-ssm-agent后才能使用會話管理器,關於如何在操作系統中安裝amazon-ssm-agent服務,請參考文檔https://docs.amazonaws.cn/systems-manager/latest/userguide/sysman-manual-agent-install.html
-
安裝成功后,並且權限正確,可登錄EC2控制台,選中相關實例,點擊
連接
圖標。在新打開的頁面中,連接按鈕會亮起。如圖,
排錯
-
如果配置了實例配置文件,並且添加了合適的規則,並且重啟了amazon-ssm-agent服務后,仍不能正常使用會話管理器,需要訪問
/var/log/amazon/ssm/
目錄查看日志. 主要查看amazon-ssm-agent.log
以及errors.log
-
amazon-ssm-agent需要和終端節點
ssm.region.amazonaws.com.cn
,ssmmessages.region.amazonaws.com.cn
和ec2messages.region.amazonaws.com.cn
終端節點通信,實例必須要通過NAT網關或者Internet網關連接到公網。 -
如果實例 處於私網中,請參考鏈接https://docs.amazonaws.cn/systems-manager/latest/userguide/setup-create-vpc.html, 來創建VPC終端節點服務.