AWS Systems Manager
集中管理 EC2 实例和本地服务器运维的服务,无需 SSH 即可安全执行补丁应用、命令执行、参数管理和会话连接
概述
AWS Systems Manager 是一项集中管理 EC2 实例和本地服务器运维的服务。通过安装在实例上的 SSM Agent,无需开放 SSH 端口即可远程执行命令、应用补丁、管理配置参数和建立安全会话。Session Manager、Parameter Store、Patch Manager、Run Command 等多个功能模块覆盖日常运维的各个方面。
Session Manager - 无需 SSH
Session Manager 允许通过浏览器或 AWS CLI 建立与实例的交互式 Shell 会话,无需开放入站端口、管理 SSH 密钥或设置堡垒机。所有会话活动记录到 CloudTrail 和 S3/CloudWatch Logs,实现完整的审计追踪。IAM 策略控制谁可以连接哪些实例,比传统 SSH 密钥管理更精细。端口转发功能可安全访问私有子网中的 RDS 或 ElastiCache 等服务,无需 VPN。会话数据通过 KMS 加密传输。实务中,Session Manager 完全替代堡垒机,消除了堡垒机本身的安全风险和运维成本。
Parameter Store 与 Secrets Manager 的选择
Parameter Store 存储配置值和密钥,支持明文(String)、字符串列表(StringList)和加密字符串(SecureString,KMS 加密)三种类型。免费层支持最多 10,000 个参数,高级层支持更大值和更高吞吐。Secrets Manager 专注于密钥管理,提供自动轮换功能(RDS、Redshift、DocumentDB 密钥可一键配置自动轮换)。选择标准:需要自动轮换或跨账户共享密钥用 Secrets Manager;存储应用配置、功能开关或不需要轮换的值用 Parameter Store(成本更低)。两者都支持版本管理和 IAM 精细权限控制。
实务中的活用模式
Patch Manager 按计划自动扫描和应用 OS 补丁,补丁基线定义哪些补丁自动批准、哪些需要手动审批。维护窗口确保补丁在业务低峰期应用。Run Command 向数百台实例并行执行命令(安装软件、收集日志、重启服务),无需逐台 SSH。State Manager 确保实例持续符合期望配置(如确保特定代理始终运行)。Automation 文档定义多步骤运维流程(如 AMI 创建:停止实例→创建镜像→启动实例→验证),支持审批步骤和条件分支。Inventory 自动收集实例的软件清单、网络配置和 Windows 更新状态,与 Config 集成实现合规审计。