0Pricing
AWS Security Academy · 课时

无需开放端口的会话管理器

通过 SSM 访问实例,完全无需入站访问。

无需开放端口的会话管理器 是 CoddyKit 上的免费 AWS Security Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AWS Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AWS Security Academy 课程共包含 4 节课。

Shell 访问,无需开门

Session Manager 是 AWS Systems Manager (SSM) 的一项功能,可以在不开放任何入站端口的情况下,为 EC2 实例和本地服务器提供交互式 Shell 访问。准确理解它的实现方式是考试中的高价值知识点,因为它是现代无堡垒主机管理的基础。

SSM Agent

这一机制始于 SSM Agent。该软件预装在大多数 AWS AMI(Amazon Machine Images)中。Agent 运行在实例上,并主动向 Systems Manager 服务端点建立出站连接。由于是实例主动连接外部,因此完全不需要入站规则,安全组可以阻止所有入站流量。

实例角色

要使 SSM 正常工作,实例需要一个IAM 角色(通过其实例配置文件)来授予 Systems Manager 权限,通常使用托管策略 AmazonSSMManagedInstanceCore。如果没有此角色,Agent 就无法注册。因此,当实例未显示为受管节点时,第一项排查工作就是附加正确的角色。

arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore

无需公有 IP

即使实例位于没有公有 IP 的私有子网中,Session Manager 也能正常工作。Agent 可以通过 NAT 网关,或更安全地通过用于 ssm、ssmmessages 和 ec2messages 的 VPC 接口端点(PrivateLink)访问 SSM。端点会使所有流量留在 AWS 网络中,不接触互联网。

启动会话

获得授权的用户可以从控制台、CLI 或 SDK 启动会话。下面的命令会在受管实例上打开 Shell,整个过程不涉及 SSH 客户端、密钥或开放端口。IAM 决定用户是否拥有启动会话的权限。

aws ssm start-session --target i-0abcd1234efgh5678

IAM 控制访问

谁可以打开会话,完全由 IAM 策略对 ssm:StartSession 操作的授权决定。您可以按标签将访问范围限制到特定实例,限制哪些用户可以连接,甚至限制他们可以使用哪些 SSM 文档(会话类型)。这用集中且可审计的 IAM 控制取代了 SSH 密钥分发。

基于标签的限制

一种强大的模式是通过实例标签限定会话访问范围。策略可以仅允许对带有 Environment=Dev 标签的实例执行 ssm:StartSession,这样开发人员可以访问开发环境主机,但永远无法访问生产环境。此基于属性的控制方式易于扩展,无需为每个实例配置策略即可执行最小权限原则。

传输中加密

会话数据使用 TLS 进行传输中加密,您还可以要求会话通道使用 KMS 加密,以获得更高保障。结合不开放端口这一特点,这意味着管理流量既不会暴露在互联网上,又能得到端到端保护,从而满足严格的合规要求。

端口转发

Session Manager 还支持端口转发,通过安全的 SSM 通道,将您计算机上的端口隧道连接到实例上的端口(或更远端的端口)。这样,您无需公开暴露 RDP 或数据库端口即可访问它们,也就不再需要为了这一目的保留堡垒主机。

为什么它很安全

这种安全模型非常有吸引力:没有可供攻击的入站端口,没有可能泄露的SSH 密钥,采用基于 IAM 的访问控制,可选用私有端点,并且全程加密。传统远程访问的每个弱点都得到了解决,因此考试会将 Session Manager 视为安全管理的默认答案。

整合起来

Session Manager 使用出站 SSM Agent,并结合带有 AmazonSSMManagedInstanceCore 的实例角色,在不需要入站端口、公有 IP 或密钥的情况下提供 Shell 访问。访问由 IAM(ssm:StartSession)控制,按标签限定范围,在传输中加密,并可通过 VPC 端点私下访问。它还支持安全的端口转发。

快速检查

测试您对 Session Manager 工作机制的理解。

回顾

Session Manager 通过出站 SSM Agent 和实例角色(AmazonSSMManagedInstanceCore)提供 Shell 访问,无需入站端口、公有 IP 或密钥。访问由 IAM(ssm:StartSession)控制,按标签限定范围,使用 TLS/KMS 加密,并可通过用于 ssm、ssmmessages 和 ec2messages 的 VPC 端点私下工作。它还支持安全的端口转发。

常见问题解答

「无需开放端口的会话管理器」课时是免费的吗?

是的 — 「无需开放端口的会话管理器」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AWS Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 AWS Security Academy 课程共包含 4 节课。

「无需开放端口的会话管理器」这节课中我会学到什么?

通过 SSM 访问实例,完全无需入站访问。 你通过在浏览器中直接运行的动手代码来练习 AWS Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AWS Security Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AWS Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「无需开放端口的会话管理器」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AWS Security Academy 课中编写并运行代码吗?

能。每节 AWS Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 堡垒主机为何会增加风险
  2. 无需开放端口的会话管理器
  3. 审计并记录管理员会话
  4. 加固端点和补丁管理器
← 返回 AWS Security Academy