**发布时间:** 2025-09-02
**厂商:** AWS
**类型:** BLOG
**原始链接:** https://aws.amazon.com/blogs/networking-and-content-delivery/aws-site-to-site-vpn-secure-pre-shared-key-psk-management-with-aws-secrets-manager/
---
<!-- AI_TASK_START: AI标题翻译 -->
[新产品/新功能] AWS Site-to-Site VPN 集成 AWS Secrets Manager,实现安全的预共享密钥 (PSK) 管理
<!-- AI_TASK_END: AI标题翻译 -->
<!-- AI_TASK_START: AI竞争分析 -->
# 产品功能分析
## 新功能/新产品概述
此功能是 **AWS Site-to-Site VPN** 与 **AWS Secrets Manager** 的原生集成。其核心目标是解决传统 **IPSec** 隧道中 **预共享密钥 (PSK)** 以明文形式存储所带来的安全与管理挑战。该功能允许用户在创建或修改 **Site-to-Site VPN** 连接时,选择将 **PSK** 存储在 **AWS Secrets Manager** 中,而不是直接存储在VPN服务内。VPN连接通过一个唯一的 **Amazon 资源名称 (ARN)** 来引用该密钥,在建立隧道时,VPN服务通过授权从 **Secrets Manager** 中安全地检索密钥值。该功能主要面向企业网络管理员、云安全工程师以及需要遵循严格合规性要求的组织,定位为一项安全增强型功能,旨在提升混合云网络连接的安全性、可管理性和可审计性。
## 关键客户价值
- **提升安全态势**
- 通过将 **PSK** 存储在 **Secrets Manager** 中,消除了密钥明文暴露的风险。密钥本身由 **AWS Key Management Service (AWS KMS)** 进行静态加密,提供了强大的安全保障。
- 相比于传统方式(如从配置文件中读取明文密钥),此举显著降低了凭证泄露的风险。
- **实现集中化密钥管理**
- 将分散在各个VPN连接中的 **PSK** 统一到 **Secrets Manager** 进行管理,简化了密钥的生命周期管理,包括轮换、更新和吊销。
- *差异化优势*:AWS 提供了原生无缝的集成体验,用户只需在控制台或CLI中选择一个选项即可。这相比于其他云平台可能需要手动或通过脚本实现的方案,极大地降低了操作复杂性和出错率。
- **增强访问控制与审计能力**
- 可利用 **AWS Identity and Access Management (IAM)** 策略,对 **PSK** 的访问权限进行精细化控制,明确定义谁可以查看或修改密钥。
- 所有对密钥的访问操作都会被 **AWS CloudTrail** 记录,为安全审计和合规性审查提供了不可篡改的证据链。
- **优化运维效率与实践**
- 支持将 **PSK** 管理无缝集成到现有的密钥轮换工作流中,帮助企业遵循安全最佳实践,定期更新凭证。
- 通过VPN服务创建的密钥存储在Secrets Manager中不产生额外费用,降低了企业采纳安全增强功能的成本门槛(*注:标准API调用费用依然适用*)。
## 关键技术洞察
- 该功能的核心是 _服务间的解耦与安全集成_。它将密钥的 **存储与管理** 职责从 **Site-to-Site VPN** 服务中剥离,并委托给专业的密钥管理服务 **AWS Secrets Manager**。
- 通过使用 **Amazon 资源名称 (ARN)** 作为凭证的引用指针,而不是直接存储凭证本身,实现了 **凭证的间接访问模式**。这是现代云安全架构的最佳实践,有效减少了敏感信息的暴露面。
- 此集成深度依赖于AWS内部的 **IAM 角色和服务权限** 机制。**Site-to-Site VPN** 服务通过一个预定义的、受信任的角色来获取访问 **Secrets Manager** 中特定密钥的临时权限,确保了整个密钥检索过程的安全可控。
## 其他信息
- **平滑迁移路径**
- AWS为现有VPN连接提供了明确的迁移方案,用户可以通过修改隧道选项,将已存在的 **PSK** 无缝迁移至 **Secrets Manager**。
- 迁移操作会导致隧道短暂中断,官方建议在维护窗口期进行,并采用逐个隧道迁移的策略以保证业务连续性。
- **多工具支持**
- 该功能同时支持通过 **AWS 管理控制台** 和 **AWS CLI** 进行配置和管理,满足了不同用户(如图形界面用户和自动化脚本开发者)的操作习惯。
<!-- AI_TASK_END: AI竞争分析 -->
<!-- AI_TASK_START: AI全文翻译 -->
# AWS Site-to-Site VPN: 使用 AWS Secrets Manager 进行安全的预共享密钥 (PSK) 管理
**原始链接:** [https://aws.amazon.com/blogs/networking-and-content-delivery/aws-site-to-site-vpn-secure-pre-shared-key-psk-management-with-aws-secrets-manager/](https://aws.amazon.com/blogs/networking-and-content-delivery/aws-site-to-site-vpn-secure-pre-shared-key-psk-management-with-aws-secrets-manager/)
**发布时间:** 2025-09-02
**厂商:** AWS
**类型:** BLOG
---
在这篇中级难度的文章中,我们将向网络管理员和安全专家展示如何利用新的 [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/) 与 [AWS Site-to-Site VPN](https://aws.amazon.com/vpn/site-to-site-vpn/) 的集成功能来增强您的安全态势。该功能消除了明文形式的 [预共享密钥 (pre-shared keys, PSKs)](https://docs.aws.amazon.com/vpn/latest/s2svpn/vpn-tunnel-authentication-options.html) ,帮助客户转向集中式密钥管理,从而提供更强的访问控制、通过 [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 实现的审计可见性以及更优的运营健康状况——所有这些都无需额外成本。
[AWS Site-to-Site VPN](https://aws.amazon.com/vpn/site-to-site-vpn/) 是一项完全托管的服务,它提供了一种安全可靠的方式,通过 IP Security (IPSec) 隧道将您的本地网络连接到 [Amazon Web Services](https://aws.amazon.com/es/free/?all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=categories%23compute&trk=21b6e339-0966-48d6-98dc-470e3727596c&sc_channel=ps&ef_id=Cj0KCQjwqebEBhD9ARIsAFZMbfwreOqzWMAgsrvAv59IIWisXMUCFv1k4fZLlLkT-_vNwuBfZJX76PMaArdPEALw_wcB:G:s&s_kwcid=AL!4422!3!664475618125!p!!g!!amazon%20cloud%20computing!20267313795!150259278956&gad_campaignid=20267313795&gbraid=0AAAAADjHtp9Njk6Y5OWOUYRHOAOo8pHJi&gclid=Cj0KCQjwqebEBhD9ARIsAFZMbfwreOqzWMAgsrvAv59IIWisXMUCFv1k4fZLlLkT-_vNwuBfZJX76PMaArdPEALw_wcB) (AWS) 环境。尽管 PSK 传统上用于身份验证,但它们常常给组织带来安全管理方面的挑战。
## 前提条件
在接下来的部分中,我们假设您熟悉 AWS 的基础网络服务,例如:
- [Amazon Virtual Private Cloud (VPC)](https://aws.amazon.com/vpc/): 一项允许您在逻辑隔离的虚拟网络中启动 AWS 资源的服务。
- AWS Site-to-Site VPN: 一项在您的网络和 Amazon VPC 之间创建加密连接的服务。
- [Secrets Manager](https://aws.amazon.com/secrets-manager/): 一项帮助您保护对应用程序、服务和 IT 资源的访问的服务。
## AWS Site-to-Site VPN 的主要变化
创建 Site-to-Site VPN 连接时,您需要为每个隧道提供一个 PSK,您可以自己提供,也可以由 AWS 为您生成。这些 PSK 直接存储在 Site-to-Site VPN 服务中。这项新功能使您可以选择存储这些密钥的位置:
1. 标准存储 (原始方法)
- 将 PSK 直接存储在 Site-to-Site VPN 服务中
- 为您的连接凭证提供基础安全性
2. Secrets Manager 存储 (新的增强选项)
- 将您的 PSK 安全地存储在 Secrets Manager 中
- 创建一个专用的 Secrets Manager [亚马逊资源名称 (Amazon Resource Name, ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)
- 通过更多安全功能实现集中式密钥管理
- 提供对 PSK 访问的审计功能
- 支持自动轮换策略 (在适用情况下)
## 工作原理
当您通过 [AWS Management Console](https://console.aws.amazon.com/) 创建新的 Site-to-Site VPN 连接时,现在可以为您的 PSK 选择存储选项。

*图 1: 控制台中的 PSK 存储选项*
如图 1 所示,您可以选择 **标准存储** (默认选项) 或 [**Secrets Manager**](https://aws.amazon.com/secrets-manager/) **存储**。当您选择 **Secrets Manager 存储** 时,AWS 会自动创建一个密钥并安全地存储您的 PSK 值。
使用 **Secrets Manager 存储** 创建 VPN 连接后,您可以在连接详情页面上查看生成的 ARN,如图 2 所示。

*图 2: VPN 连接详情页面中的密钥管理 ARN*
要查看实际的 PSK 值,请按照以下步骤操作:
1. 导航到 Secrets Manager 控制台
2. 从左侧导航面板中选择 **Secrets**
3. 在列表中找到您的 VPN PSK 密钥
4. 选择密钥名称以打开其详情页面
5. 选择 **Retrieve Secret Value** 按钮以显示 PSK 的值

*图 3: PSK 密钥值*
### 通过 AWS CLI 使用 Secrets Manager 创建 VPN 连接
新功能为 [create-vpn-connection](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/create-vpn-connection.html) 命令增加了一个 `pre-shared-key-storage` 参数。以下语法展示了如何使用 AWS CLI 在指定 PSK 的同时创建 VPN 连接。
```
create-vpn-connection \
--customer-gateway-id <customer-gateway-id>
--type <vpn-type>
[--vpn-gateway-id <vpn-gateway-id>]
[--transit-gateway-id <transit-gateway-id>]
**[--pre-shared-key-storage <key-storage-type>]**
```
**示例:使用 Secrets Manager 创建 VPN 连接**
此示例创建一个连接到虚拟专用网关 (Virtual Private Gateway, VGW) 的新 VPN 连接,并将 PSK 存储在 Secrets Manager 中。
```
aws create-vpn-connection \
--customer-gateway-id cgw-06fa98e11e66c3646 \
--type ipsec.1 \
--vpn-gateway-id vgw-0ae7deff670a92445 \
**--pre-shared-key-storage SecretsManager**
```
该命令返回一个包含 VPN 连接详细信息的 JSON 响应。其中最重要的元素如下:
1. **VpnConnectionId**,用于标识您的新连接
2. **State** 字段,显示连接状态
3. **CustomerGatewayConfiguration** 部分中被隐藏的 PSK
为简洁起见,我们省略了大部分输出。完整的响应包括两个 IPSec 隧道的配置详情。
### 通过 AWS CLI 查看 VPN 连接详情
要验证配置或检索关联密钥的 ARN,您可以使用 AWS CLI 命令 [describe-vpn-connection](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpn-connections.html) 来查看 VPN 连接。
```
describe-vpn-connections
[--vpn-connection-ids <value>**]**
```
**示例:查看 VPN 连接**
以下是一个示例命令,用于检索特定 VPN 连接的详细信息,例如对 Secrets Manager ARN 的引用。
```
describe-vpn-connections
[--vpn-connection-ids vpn-01d7549f4acca1f70]
```
此示例检索特定 VPN 连接的详细信息。请查找 `PreSharedKeyArn` 字段以确认 PSK 已存储在 Secrets Manager 中。
```json
{
"VpnConnections": [
{
...
"PreSharedKeyArn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:s2svpn-preprod!vpn-0074cc1c3ce9a041e-1Skga6-pevysO",
"VpnConnectionId": "vpn-0074cc1c3ce9a041e",
"State": "pending",
...
}
]
}
```
出于安全原因,无论采用何种存储方法,`CustomerGatewayConfiguration` 部分中的 PSK 始终会以 `*****REDACTED*****` 的形式隐藏。
## 从标准明文存储迁移到 Secrets Manager
如果您已经在 AWS 环境中设置了 Site-to-Site VPN 连接,那么 PSK 会存储在 Site-to-Site VPN 服务中。您可以通过下载配置文件或使用 AWS CLI 查看 VPN 连接来获取这些 PSK 值。

*图 4. 下载的配置文件中 PSK 的截图*
下图显示,使用明文 PSK 时,“密钥管理 ARN” 字段为空。

*图 5. VPN 连接详情页面中为空的密钥管理 ARN*
要将 PSK 迁移到 Secrets Manager,请导航至 VPN 控制面板并找到您的 Site-to-Site VPN 连接,如下图所示。选中后,打开 **Actions** 菜单并选择 **Modify VPN Tunnel Options**。

*图 6. 选中 VPN 连接后,在 Actions 菜单下的“修改 VPN 隧道选项”*
在 **Modify VPN Tunnel Options** 页面上,点击下拉列表并选择您的 VPN 隧道。

*图 7. “修改 VPN 隧道选项”下的 VPN 隧道*
在所选隧道的页面中,您现在可以选择 **Secrets Manager** 作为 PSK 存储方式,如下图所示。选择 **Secrets** **Manager** 后,点击 **Save Changes**。

*图 8. 在 Site-to-Site VPN 控制台中选择预共享密钥存储的选项*
此操作会创建一个 Secrets Manager 密钥,将现有的 PSK 存储在其中,并生成一个 ARN。

*图 9. 迁移到 Secrets Manager 存储的隧道的 Secrets Manager ARN*

*图 10. 为 PSK 新创建的 Site-to-Site VPN 密钥*
当该隧道恢复正常后,对第二个隧道重复此过程。
### 通过 AWS CLI 迁移到 Secrets Manager
如果您想将现有的 VPN 隧道迁移以使用 Secrets Manager 存储,[modify-vpn-tunnel-options](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/modify-vpn-tunnel-options.html) 命令可让您通过 AWS CLI 安全地切换 PSK 存储类型。
```
modify-vpn-tunnel-options
--vpn-connection-id <value>
--vpn-tunnel-outside-ip-address <value>
**[--pre-shared-key-storage <value>]**
[--tunnel-options '{}']
```
**示例:将隧道从标准存储迁移到 Secrets Manager**
此命令修改现有隧道的配置,将其 PSK 存储在 Secrets Manager 中。它会保留原始密钥,但会更改其存储位置。
```
modify-vpn-tunnel-options
--vpn-connection-id vpn-01d7549f4acca1f70 \
--vpn-tunnel-outside-ip-address 54.71.32.128 \
**--pre-shared-key-storage SecretsManager \**
--tunnel-options '{}'
```
隧道更新后,使用以下命令通过检查输出中的 `PreSharedKeyArn` 字段来确认 PSK 已移至 Secrets Manager。
```
describe-vpn-connections
[--vpn-connection-ids vpn-01d7549f4acca1f70]
```
在响应中需要关注的关键元素:
1. 包含 Secrets Manager ARN 的 `PreSharedKeyArn` 字段
2. 在迁移过程中显示 `modifying` 状态的 `State` 字段
3. 配置中被隐藏的 PSK
### 迁移规划
从标准存储迁移到 Secrets Manager 时,受影响的隧道会出现短暂的中断。我们建议:
- 在计划的维护窗口期间执行迁移
- 一次只迁移一个隧道
- 在对第二个隧道进行更改之前,确保第一个隧道已启动并正常运行
**注意事项**
在采用 AWS Secrets Manager 存储 Site-to-Site VPN 预共享密钥 (PSKs) 时,请注意以下几点:
- **安全优势**
- **集中管理** – 将所有 VPN PSK 的管理整合到一个单一、安全的服务中。
- **访问控制** – 应用精细的 [AWS Identity and Access Management (IAM)](https://aws.amazon.com/iam/) 策略来定义谁可以访问或更新您的 VPN PSK。
- **审计能力** – 通过 AWS CloudTrail 日志跟踪 PSK 的访问和使用情况。
- **加密** – 确保所有 PSK 都使用 [AWS Key Management Service (AWS KMS)](https://aws.amazon.com/kms/) 进行静态加密。
- **成本考量**
- 通过 Site-to-Site VPN 服务创建时,在 Secrets Manager 中存储 VPN PSK 无需额外费用。
- 如果您创建额外的密钥版本或频繁检索,则适用标准的 AWS Secrets Manager 定价。
- **运营影响**
- 更新操作流程,以包含 Secrets Manager 的监控和警报。
- 审查和调整 IAM 策略,以确保对 Secrets Manager 资源的访问权限级别适当。
- 考虑将 PSK 集成到您现有的密钥轮换工作流中。
**结论与后续步骤**
使用 AWS Secrets Manager 存储您的 Site-to-Site VPN PSK,可以通过降低暴露风险、实现集中式密钥管理和提供详细的审计跟踪来增强您的安全态势。此集成用 Secrets Manager ARN 替代了明文 PSK,有助于保护您的 VPN 基础设施,并且通过该服务使用时不会增加存储成本。
我们鼓励您立即开始将现有的 VPN 连接迁移到使用 Secrets Manager。这样做,您将受益于集中管理、改进的访问控制以及更有效地监控和轮换 PSK 的能力。利用这一增强功能,迈出加强组织网络安全态势的第一步。
## 关于作者

### Hoorang Broujerdi
Hoorang 是 AWS 企业支持团队的一名高级技术客户经理,在 IT 领域拥有超过二十年的行业和学术经验。他帮助企业构建弹性、安全、高效的云环境,指导他们应对复杂的网络挑战和大规模基础设施转型。凭借深厚的技术专长和对企业优先事项的清晰理解,他为云采用旅程的每个阶段提供战略指导和实践解决方案。作为一名经验丰富的网络、安全和云专家,他通过有针对性的优化、稳健的架构和最佳实践的实施,帮助众多组织提升了其云运营水平。

### Ankush Goyal
Ankush Goyal 是 AWS 企业支持团队的一名高级技术客户经理,专注于帮助旅游和酒店行业的客户优化其云基础设施。他拥有超过 20 年的 IT 经验,致力于利用 AWS 网络服务来提高运营效率和推动云采用。Ankush 热衷于提供有影响力的解决方案,并帮助客户简化其云运营。
<!-- AI_TASK_END: AI全文翻译 -->