如何解决我在激活 Storage Gateway 时收到的内部错误?

3 分钟阅读
0

我想在 AWS Storage Gateway 上激活我的网关,但收到了内部错误。

解决方案

注意:

  • 确保使用最新的亚马逊机器映像 (AMI) 版本。如果您不使用最新的 AMI,则会收到内部错误。
  • 确保选择正确的网关类型。网关类型的 .ova 文件和 AMI 不同且不可互换。

公共端点

如果您使用公共端点激活网关,请执行以下操作来解决问题。

确认您已打开所需的端口

对于您在本地部署的网关,请检查本地防火墙上的端口是否处于打开状态。对于您在 Amazon Elastic Compute Cloud (Amazon EC2) 实例上部署的网关,请检查该实例的安全组上的端口是否处于打开状态。要确认端口已打开,请从 Storage Gateway 虚拟机本地控制台的命令提示符菜单中运行 ncport 命令。

以下示例 ncport 命令用于测试端口 443 上与所需端点的连接:

ncport -d d4kdq0yaxexbo.cloudfront.net -p 443
ncport -d storagegateway.region.amazonaws.com -p 443
ncport -d dp-1.storagegateway.region.amazonaws.com -p 443
ncport -d proxy-app.storagegateway.region.amazonaws.com -p 443
ncport -d client-cp.storagegateway.region.amazonaws.com -p 443
ncport -d anon-cp.storagegateway.region.amazonaws.com -p 443

**注意:**在前面的命令中,将 region 替换为要激活网关的 AWS 区域。

要确认网关可以到达端点,请访问网关的本地虚拟机控制台或使用 SSH 连接到网关的实例。然后,运行网络连接测试。确认所有端点的测试返回 [PASSED]

**注意:**网关本地控制台的默认用户名为 admin,默认密码为 password

确认防火墙安全措施不会修改从网关发送到公共端点的数据包

防火墙安全措施可能是 SSL 检查、深度数据包检查或其他类型的防火墙安全措施。如果您根据激活端点的期望修改 SSL 证书,则 SSL 握手将失败。

要确认 SSL 检查未在进行,请在主激活端点 anon-cp.storagegateway.region.amazonaws.com 上运行 sslcheck 命令。从虚拟机本地控制台的命令提示符菜单在端口 443 上运行该命令:

sslcheck -d anon-cp.storagegateway.region.amazonaws.com -p 443

**注意:**在前面的命令中,将 region 替换为要激活网关的区域。

如果 SSL 检查未在进行,则该命令将返回与以下示例类似的响应:

sslcheck -d anon-cp.storagegateway.us-east-1.amazonaws.com -p 443

subject=/CN=anon-cp.storagegateway.us-east-1.amazonaws.com
issuer=/C=US/O=Amazon/CN=Amazon RSA 2048 M02

如果 SSL 检查正在进行,则响应会显示更改的证书,类似于以下示例:

sslcheck -d anon-cp.storagegateway.us-east-1.amazonaws.com -p 443

subject=CN=anon-cp.storagegateway.us-east-1.amazonaws.com
issuer:/C=US/O=Company/CN=Admin

激活端点仅在识别 SSL 证书时才接受 SSL 握手。网关到端点的出站流量必须免于网络中防火墙执行的检查。

确认您的网关正确同步时间

时间偏差过大可能会导致 SSL 握手错误。使用网关的本地虚拟机控制台检查网关的时间同步。时间偏差不能大于 60 秒。要将网关虚拟机时间与 NTP 时间同步,网关虚拟机需要访问以下 NTP 服务器:

0.amazon.pool.ntp.org
1.amazon.pool.ntp.org
2.amazon.pool.ntp.org
3.amazon.pool.ntp.org

**注意:**System Time Management(系统时间管理)选项在 EC2 实例上托管的网关上不可用。

对于托管在 EC2 实例上的网关,请检查网关运行状况日志中是否存在 GatewayClockOutOfSync 错误。如果您看到此错误,请联系 AWS Support

Amazon VPC 端点

如果您使用 Amazon Virtual Private Cloud (Amazon VPC) 端点激活网关,请执行以下操作来解决问题。

确认您已打开所需的端口

确认您已在本地部署的网关的本地防火墙或在 Amazon EC2 中部署的网关的安全组中打开所需的端口。将网关连接到 Storage Gateway VPC 端点的端口不同于将网关连接到公共端点的端口。您必须使用端口 TCP 443、TCP 1026、TCP 1027、TCP 1028、TCP 1031 和 TCP 2222 连接到 Storage Gateway VPC 端点。

此外,请检查连接到您的 Storage Gateway VPC 端点的安全组。默认安全组可能不允许所需的端口。创建新的安全组,允许来自网关 IP 地址范围的流量通过所需端口。然后,将新的安全组连接到 VPC 端点。

**注意:**要验证连接到 VPC 端点的安全组,请打开 Amazon VPC 控制台,然后选择 Security Groups(安全组)选项卡。

要确认所需的端口已打开,请在 Storage Gateway VPC 端点上运行 ncport 命令。从 Storage Gateway 虚拟机本地控制台的命令提示符菜单中运行该命令。对第一个未指定可用区的 DNS 名称进行测试。

以下示例 ncport 命令用于测试 DNS 名称为 vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 的所需端口连接:

ncport -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 443
ncport -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1026
ncport -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1027
ncport -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1028
ncport -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1031
ncport -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 2222

确认网关可以在所需端口上到达 VPC 端点。访问网关的本地虚拟机控制台或使用 SSH 连接到网关的实例。然后,运行网络连接测试。确认所有端点的测试返回 [PASSED]

**注意:**网关本地控制台的默认用户名为 admin,默认密码为 password

确认防火墙安全措施不会修改从网关发送到 Storage Gateway VPC 端点的数据包

防火墙安全措施可能是 SSL 检查、深度数据包检查或其他类型的防火墙安全措施。如果您根据激活端点的期望修改 SSL 证书,则 SSL 握手将失败。

要确认 SSL 检查未在进行,请在您的 Storage Gateway VPC 端点上运行 OpenSSL 命令。您必须在与网关位于同一子网的计算机上运行该命令。为每个所需端口运行命令:

sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 443
sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1026
sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1027
sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1028
sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 1031
sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.region.vpce.amazonaws.com -p 2222

如果 SSL 检查未在进行,则该命令将返回与以下示例类似的响应:

sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com -p 1027

subject=/CN=storagegateway.us-east-1.amazonaws.com
issuer=/C=US/O=Amazon/CN=Amazon RSA 2048 M02

如果 SSL 检查正在进行,则响应会显示更改的证书链,类似于以下示例:

sslcheck -d vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com -p

subject=CN=anon-cp.storagegateway.us-east-1.amazonaws.com
issuer:/C=US/O=Company/CN=Admin

激活端点仅在识别 SSL 证书时才接受 SSL 握手。网关通过所需端口流向您的 VPC 端点的出站流量免于网络防火墙执行的检查。

确认您的网关正确同步时间

时间偏差过大可能会导致 SSL 握手错误。使用网关的本地虚拟机控制台检查网关的时间同步。时间偏差不能大于 60 秒。要将网关虚拟机时间与 NTP 时间同步,网关虚拟机需要访问以下 NTP 服务器:

0.amazon.pool.ntp.org
1.amazon.pool.ntp.org
2.amazon.pool.ntp.org
3.amazon.pool.ntp.org

**注意:**System Time Management(系统时间管理)选项在 EC2 实例上托管的网关上不可用。

对于托管在 EC2 实例上的网关,请检查网关运行状况日志中是否存在 GatewayClockOutOfSync 错误。如果您看到此错误,请联系 AWS Support

检查您是否已在 Amazon EC2 上配置 HTTP 代理

激活之前,使用本地网关虚拟机检查您是否已将 Amazon EC2 上的 HTTP 代理配置为端口 3128 上的 Squid 代理。连接到 Amazon EC2 上的 HTTP 代理的安全组必须有入站规则。入站规则必须允许来自网关虚拟机的 IP 地址的 3128 端口上的 Squid 代理流量。连接到 Storage Gateway VPC 端点的安全组也必须具有入站规则。入站规则必须允许来自 Amazon EC2 上 HTTP 代理的 IP 地址的端口 1026-1028、1031、2222 和 443 上的流量。

在同一 VPC 中具有 Storage Gateway VPC 端点的公共端点

确认您的 Storage Gateway VPC 端点上的 Enable Private DNS Name(启用私有 DNS 名称)设置已关闭。如果启用此设置,则无法激活从 VPC 到公共端点的网关。

要关闭私有 DNS 名称选项,请完成以下步骤:

  1. 打开 Amazon VPC 控制台
  2. 在导航窗格中,选择 Endpoints(端点)。
  3. 选择您的 Storage Gateway VPC 端点。
  4. 选择 Actions(操作),然后选择 Manage Private DNS Names(管理私有 DNS 名称)。
  5. 对于 Enable Private DNS Name(启用私有 DNS 名称),清除 Enable for this Endpoint(为此端点启用)。
  6. 选择 Modify Private DNS Names(修改私有 DNS 名称)以保存设置。

相关信息

使用接口 VPC 端点访问 AWS 服务

AWS 官方
AWS 官方已更新 3 个月前