【AWS】什么是AWS Systems Manager Session Manager
【AWS】什么是AWS Systems Manager Session Manager
AWS Systems Manager Session Manager 是一项完全托管的 AWS Systems Manager 功能,它允许您通过基于浏览器或 AWS CLI 的交互式一键式会话来管理您的 Amazon EC2 实例、本地实例和虚拟机 (VM)。
它提供安全且可审计的实例管理,而无需打开入站端口、管理 SSH 密钥或维护堡垒主机。
您可以将 AWS Systems Manager Session Manager 想象成一个**“安全的云端远程管理工具”**。它消除了传统远程访问方法(如 SSH 或 RDP)的复杂性、安全风险和管理开销,提供了一种更简单、更安全、更可审计的方式来连接和管理您的服务器。

AWS Systems Manager Session Manager 的核心功能和优势
Session Manager 旨在简化实例管理,提高安全性和合规性,并降低运营成本。
- 增强的安全性:无需打开入站端口: Session Manager 无需在您的实例上打开入站 SSH 端口 (22) 或 RDP 端口 (3389)。这显著减少了攻击面,因为恶意行为者无法通过这些端口访问您的实例。无需管理 SSH 密钥: 您无需分发、管理或轮换 SSH 密钥。用户通过 IAM 凭证进行身份验证,并获得对实例的授权访问。集中式访问控制: 通过 AWS Identity and Access Management (IAM) 精细控制哪些用户可以访问哪些实例,以及他们可以执行哪些操作。审计和合规性:会话日志记录: 所有会话活动都可以记录到 Amazon S3 或 Amazon CloudWatch Logs,包括命令输出。这提供了详细的审计跟踪,有助于满足合规性要求。CloudTrail 集成: 所有 Session Manager API 调用都会记录在 AWS CloudTrail 中,提供额外的审计和安全监控。
- 简化实例管理:基于浏览器的一键式访问: 提供一个直观的基于 Web 浏览器的界面,只需点击一下即可开始会话,无需安装任何客户端软件。AWS CLI 访问: 也支持通过 AWS CLI 进行会话,方便自动化和脚本化操作。无需堡垒主机: 消除了部署、配置和维护堡垒主机的需求,降低了复杂性和成本。跨平台支持: 支持 Linux、Windows 和 macOS 实例。
- 提高可管理性和可观测性:集中式管理: 在 Systems Manager 控制台中集中管理所有实例的会话。会话历史记录: 可以轻松查看所有会话的历史记录,包括谁连接了、连接了多长时间以及执行了哪些命令。命令共享: 可以在会话中共享命令,方便团队协作和故障排除。
- 成本效益:Session Manager 本身是 免费 的。您只需支付用于存储会话日志的 Amazon S3 或 CloudWatch Logs 费用。减少了管理 SSH 密钥、堡垒主机和开放端口相关的运营成本和安全风险。
AWS Systems Manager Session Manager 的工作原理
Session Manager 的核心是利用 Systems Manager Agent (SSM Agent) 在实例上运行,并通过 Systems Manager 服务进行通信,而不是直接通过开放的网络端口。
- SSM Agent:您的 EC2 实例、本地实例或 VM 上必须安装并运行 SSM Agent。大多数 AWS 提供的 AMI 都预装了 SSM Agent。SSM Agent 负责与 Systems Manager 服务进行通信,接收命令并执行它们。
- IAM 权限:用户需要拥有适当的 IAM 权限才能启动 Session Manager 会话(例如,ssm:StartSession)。实例也需要拥有适当的 IAM 角色,允许 SSM Agent 与 Systems Manager 服务进行通信(例如,AmazonSSMManagedInstanceCore 策略)。
- 启动会话:用户通过 AWS 控制台(浏览器)、AWS CLI 或 AWS SDK 启动一个 Session Manager 会话,指定要连接的实例 ID。用户的 IAM 凭证用于身份验证和授权。
- 安全通道建立:Systems Manager 服务通过安全的、加密的通道(基于 HTTPS)与实例上的 SSM Agent 建立连接。这个连接是出站的,这意味着实例上的 SSM Agent 主动连接到 Systems Manager 服务,因此不需要在实例的安全组中打开入站端口。
- 交互式会话:一旦连接建立,用户就可以在基于浏览器的终端或本地 CLI 终端中与实例进行交互,执行命令,就像传统的 SSH 会话一样。Session Manager 支持 shell 访问、PowerShell 访问和端口转发。
- 日志记录:会话的输入和输出可以实时流式传输到 Amazon CloudWatch Logs,也可以存储到 Amazon S3 存储桶中,提供详细的审计记录。
AWS Systems Manager Session Manager 的典型用例
- 安全远程访问: 替代传统的 SSH 和 RDP,提供更安全的实例远程管理方式,尤其是在需要严格合规性审计的环境中。
- 堡垒主机替代: 消除了部署和维护堡垒主机的需求,简化了网络架构和管理。
- 故障排除和诊断: 快速连接到问题实例进行故障排除,查看日志,执行诊断命令。
- 合规性审计: 记录所有实例访问和执行的命令,以满足 PCI DSS、HIPAA 等合规性要求。
- 团队协作: 多个用户可以同时连接到同一个会话,进行协作式故障排除或结对编程。
- 自动化脚本执行: 结合 Systems Manager Run Command,可以自动化在多个实例上执行脚本和命令。
- 管理本地服务器和 VM: 通过在本地服务器和 VM 上安装 SSM Agent,也可以使用 Session Manager 对其进行统一管理。
总结来说,AWS Systems Manager Session Manager 是一项强大且免费的服务,它通过提供安全、可审计、基于浏览器或 CLI 的交互式会话,极大地简化了 AWS 和混合环境中实例的远程管理,同时显著提高了安全性和合规性,并降低了运营成本。
过去考试题
ある会社は、Amazon EC2のインバウンドアクセスを制限することによって、セキュリティと監査態勢を改善したいと考えています。インバウンドSSHポートを開き、SSHキーを管理する代わりに、インスタンスにリモートでアクセスするために何を使用すべきでしょうか。
- Amazon S3
- Amazon RDS
- Amazon WorkSpaces
- AWS Systems Manager Session Manager
AWS Systems Manager Session Managerを使用すると、Amazon EC2インスタンスにリモートでセキュア接続できます。SSHポートを開く必要がなく、認証情報を管理する必要もありません。セキュリティを強化しながら、監査ログも提供されます。
C: Amazon WorkSpacesは仮想デスクトップサービスで、既存のEC2インスタンスへのアクセスには適していません。
关注
收藏
赞
踩