故障排除:在 Storage Gateway 激活期间收到内部错误 - Amazon Storage Gateway
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon S3 文件网关文档已移至什么是 Amazon S3 文件网关?

Amazon FSx 文件网关文档已移至什么是 Amazon FSx 文件网关?

磁带网关文档已移至什么是磁带网关?

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

故障排除:在 Storage Gateway 激活期间收到内部错误

Storage Gateway 激活请求会通过两条网络路径传输。客户端发送的传入激活请求通过端口 80 连接到网关的虚拟机 (VM) 或亚马逊弹性计算云 (Amazon EC2) 实例。如果网关成功收到激活请求,则网关将与 Storage Gateway 端点通信以接收激活密钥。如果网关无法到达 Storage Gateway 终端节点,则网关会向客户端发送一条内部错误消息。

使用以下疑难解答信息来确定在尝试激活时收到内部错误消息时该怎么做 Amazon Storage Gateway。

注意
  • 请务必使用最新的虚拟机映像文件或 Amazon 系统映像 (AMI) 版本部署新的网关。如果您尝试激活使用过时 AMI 的网关,则会收到内部错误。

  • 在下载 AMI 之前,请务必选择要部署的正确网关类型。每种网关类型的.ova 文件和 AMI 都不同,并且不可互换。

解决使用公共终端节点激活网关时出现的错误

要解决使用公共终端节点激活网关时的激活错误,请执行以下检查和配置。

检查所需的端口

对于本地部署的网关,请检查本地防火墙上的端口是否已打开。对于部署在 Amazon EC2 实例上的网关,请检查实例安全组上的端口是否已打开。要确认端口已打开,请从服务器在公共端点上运行 telnet 命令。此服务器必须与网关位于同一个子网中。例如,以下 telnet 命令测试与端口 443 的连接:

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

要确认网关本身是否可以到达终端节点,请访问网关的本地虚拟机控制台(适用于本地部署的网关)。或者,您可以通过 SSH 连接到网关的实例(适用于部署在 Amazon EC2 上的网关)。然后,运行网络连接测试。确认测试已返回[PASSED]。有关更多信息,请参阅 net 的连接

注意

网关控制台的默认登录用户名为admin,默认密码为password

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

SSL 检查、深度数据包检查或其他形式的防火墙安全措施可能会干扰从网关发送的数据包。如果 SSL 证书的修改与激活端点的预期不同,SSL 握手就会失败。要确认没有正在进行的 SSL 检查,请在端口 443 的主激活端点 (anon-cp.storagegateway.region.amazonaws.com) 上运行 OpenSSL 命令。您必须从与网关位于同一子网的计算机上运行以下命令:

$ openssl s_client -connect anon-cp.storagegateway.region.amazonaws.com:443 -servername anon-cp.storagegateway.region.amazonaws.com
注意

区域替换为你的 Amazon Web Services 区域。

如果没有正在进行的 SSL 检查,则该命令将返回类似于以下内容的响应:

$ openssl s_client -connect anon-cp.storagegateway.us-east-2.amazonaws.com:443 -servername anon-cp.storagegateway.us-east-2.amazonaws.com CONNECTED(00000003) depth=2 C = US, O = Amazon, CN = Amazon Root CA 1 verify return:1 depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazon verify return:1 depth=0 CN = anon-cp.storagegateway.us-east-2.amazonaws.com verify return:1 --- Certificate chain 0 s:/CN=anon-cp.storagegateway.us-east-2.amazonaws.com i:/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon 1 s:/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon i:/C=US/O=Amazon/CN=Amazon Root CA 1 2 s:/C=US/O=Amazon/CN=Amazon Root CA 1 i:/C=US/ST=Arizona/L=Scottsdale/O=Starfield Technologies, Inc./CN=Starfield Services Root Certificate Authority - G2 3 s:/C=US/ST=Arizona/L=Scottsdale/O=Starfield Technologies, Inc./CN=Starfield Services Root Certificate Authority - G2 i:/C=US/O=Starfield Technologies, Inc./OU=Starfield Class 2 Certification Authority ---

如果正在进行 SSL 检查,则响应会显示证书链已更改,如下所示:

$ openssl s_client -connect anon-cp.storagegateway.ap-southeast-1.amazonaws.com:443 -servername anon-cp.storagegateway.ap-southeast-1.amazonaws.com CONNECTED(00000003) depth=0 DC = com, DC = amazonaws, OU = AWS, CN = anon-cp.storagegateway.ap-southeast-1.amazonaws.com verify error:num=20:unable to get local issuer certificate verify return:1 depth=0 DC = com, DC = amazonaws, OU = AWS, CN = anon-cp.storagegateway.ap-southeast-1.amazonaws.com verify error:num=21:unable to verify the first certificate verify return:1 --- Certificate chain 0 s:/DC=com/DC=amazonaws/OU=AWS/CN=anon-cp.storagegateway.ap-southeast-1.amazonaws.com i:/C=IN/O=Company/CN=Admin/ST=KA/L=New town/OU=SGW/emailAddress=admin@company.com ---

激活端点仅在识别 SSL 证书时才接受 SSL 握手。这意味着网关到终端节点的出站流量必须免受网络中防火墙的检查。这些检查可能是 SSL 检查或深度数据包检查。

检查网关时间同步

时间偏差过大可能会导致 SSL 握手错误。对于本地网关,您可以使用网关的本地虚拟机控制台来检查网关的时间同步。时间偏差不应大于 60 秒。有关更多信息,请参阅。

系统时间管理选项在 Amazon EC2 实例上托管的网关上不可用。要确保 Amazon EC2 网关能够正确同步时间,请确认 Amazon EC2 实例可以通过端口 UDP 和 TCP 123 连接到以下 NTP 服务器池列表:

  • 0.amazon.pool.ntp.org

  • 1.amazon.pool.ntp.org

  • 2.amazon.pool.ntp.org

  • 3.amazon.pool.ntp.org

解决使用 Amazon VPC 终端节点激活网关时出现的错误

要解决使用亚马逊虚拟私有云(Amazon VPC)终端节点激活网关时出现的激活错误,请执行以下检查和配置。

检查所需的端口

确保本地防火墙(对于本地部署的网关)或安全组(对于部署在 Amazon EC2 中的网关)中的所需端口已打开。将网关连接到 Storage Gateway VPC 终端节点所需的端口与将网关连接到公共终端节点时所需的端口不同。连接到 Storage Gateway VPC 终端节点需要以下端口:

  • TCP 443

  • TCP 1026

  • TCP 1027

  • TCP 1028

  • TCP 1031

  • TCP 2222

有关更多信息,请参阅为 Storage Gatew ay 创建 VPC 终端节点

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

注意

使用 Amazon VPC 控制台验证连接到 VPC 终端节点的安全组。从控制台查看您的 Storage Gateway VPC 终端节点,然后选择安全组选项卡。

要确认所需端口已打开,您可以在 Storage Gateway VPC 终端节点上运行 telnet 命令。您必须从与网关位于同一子网的服务器上运行这些命令。您可以对第一个未指定可用区域的 DNS 名称进行测试。例如,以下 telnet 命令使用 DNS 名称 vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 测试所需的端口连接:

telnet vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 443 telnet vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 1026 telnet vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 1027 telnet vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 1028 telnet vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 1031 telnet vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com 2222

确保防火墙安全不会修改从网关发送到您的 Storage Gateway Amazon VPC 终端节点的数据包

SSL 检查、深度数据包检查或其他形式的防火墙安全措施可能会干扰从网关发送的数据包。如果 SSL 证书的修改与激活端点的预期不同,SSL 握手就会失败。要确认没有正在进行的 SSL 检查,请在您的 Storage Gateway VPC 终端节点上运行 OpenSSL 命令。您必须从与网关位于同一子网的计算机上运行此命令。为每个必需的端口运行命令:

$ openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:443 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com $ openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:1026 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com $ openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:1027 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com $ openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:1028 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com $ openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:1031 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com $ openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:2222 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com

如果没有正在进行的 SSL 检查,则该命令将返回类似于以下内容的响应:

openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:1027 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com CONNECTED(00000005) depth=2 C = US, O = Amazon, CN = Amazon Root CA 1 verify return:1 depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazon verify return:1 depth=0 CN = anon-cp.storagegateway.us-east-1.amazonaws.com verify return:1 --- Certificate chain 0 s:CN = anon-cp.storagegateway.us-east-1.amazonaws.com i:C = US, O = Amazon, OU = Server CA 1B, CN = Amazon 1 s:C = US, O = Amazon, OU = Server CA 1B, CN = Amazon i:C = US, O = Amazon, CN = Amazon Root CA 1 2 s:C = US, O = Amazon, CN = Amazon Root CA 1 i:C = US, ST = Arizona, L = Scottsdale, O = "Starfield Technologies, Inc.", CN = Starfield Services Root Certificate Authority - G2 3 s:C = US, ST = Arizona, L = Scottsdale, O = "Starfield Technologies, Inc.", CN = Starfield Services Root Certificate Authority - G2 i:C = US, O = "Starfield Technologies, Inc.", OU = Starfield Class 2 Certification Authority ---

如果正在进行 SSL 检查,则响应会显示证书链已更改,如下所示:

openssl s_client -connect vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com:1027 -servername vpce-1234567e1c24a1fe9-62qntt8k.storagegateway.us-east-1.vpce.amazonaws.com CONNECTED(00000005) depth=2 C = US, O = Amazon, CN = Amazon Root CA 1 verify return:1 depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazon verify return:1 depth=0 DC = com, DC = amazonaws, OU = AWS, CN = anon-cp.storagegateway.us-east-1.amazonaws.com verify error:num=21:unable to verify the first certificate verify return:1 --- Certificate chain 0 s:/DC=com/DC=amazonaws/OU=AWS/CN=anon-cp.storagegateway.us-east-1.amazonaws.com i:/C=IN/O=Company/CN=Admin/ST=KA/L=New town/OU=SGW/emailAddress=admin@company.com ---

激活端点仅在识别 SSL 证书时才接受 SSL 握手。这意味着,网关通过所需端口到您的 VPC 终端节点的出站流量不受网络防火墙的检查。这些检查可能是 SSL 检查或深度数据包检查。

检查网关时间同步

时间偏差过大可能会导致 SSL 握手错误。对于本地网关,您可以使用网关的本地虚拟机控制台来检查网关的时间同步。时间偏差不应大于 60 秒。有关更多信息,请参阅。

系统时间管理选项在 Amazon EC2 实例上托管的网关上不可用。要确保 Amazon EC2 网关能够正确同步时间,请确认 Amazon EC2 实例可以通过端口 UDP 和 TCP 123 连接到以下 NTP 服务器池列表:

  • 0.amazon.pool.ntp.org

  • 1.amazon.pool.ntp.org

  • 2.amazon.pool.ntp.org

  • 3.amazon.pool.ntp.org

检查 HTTP 代理并确认相关的安全组设置

在激活之前,请检查您是否在本地网关虚拟机上将 Amazon EC2 上的 HTTP 代理配置为端口 3128 上的 Squid 代理。在这种情况下,请确认以下内容:

  • 附加到 Amazon EC2 上的 HTTP 代理的安全组必须具有入站规则。此入站规则必须允许来自网关 VM 的 IP 地址的 Squid 代理流量通过端口 3128。

  • 连接到 Amazon EC2 VPC 终端节点的安全组必须具有入站规则。这些入站规则必须允许来自亚马逊 EC2 上 HTTP 代理 IP 地址的端口 1026-1028、1031、2222 和 443 上的流量。

解决使用公有终端节点激活网关且同一 VPC 中有 Storage Gateway VPC 终端节点时出现的错误

要解决在同一 VPC 中有 Amazon Virtual Private Cloud (Amazon VPC) 终端节点时使用公共终端节点激活网关时出现的错误,请执行以下检查和配置。

确认您的 Storage Gateway VPC 终端节点上未启用 “启用私有 DNS 名称” 设置

如果启用了启用私有 DNS 名称,则无法激活从该 VPC 到公有终端节点的任何网关。

要禁用私有 DNS 名称选项,请执行以下操作:
  1. 打开 Amazon VPC 控制台

  2. 在导航窗格中,选择端点

  3. 选择您的 Storage Gateway VPC 终端节点。

  4. 选择操作

  5. 选择 “管理私有 DNS 名称”。

  6. 在 “启用私有 DNS 名称” 中,清除 “为此端点启用”。

  7. 选择修改私有 DNS 名称以保存设置。