

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 故障診斷：閘道啟用期間的內部錯誤
<a name="troubleshooting-gateway-activation"></a>

Storage Gateway 啟用請求會周遊兩個網路路徑。用戶端傳送的傳入啟用請求會透過連接埠 80 連線至閘道的虛擬機器 (VM) 或 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。如果閘道成功接收啟用請求，閘道會與 Storage Gateway 端點通訊，以接收啟用金鑰。如果閘道無法連線到 Storage Gateway 端點，閘道會以內部錯誤訊息回應用戶端。

使用以下疑難排解資訊，判斷在嘗試啟用 時，如果收到內部錯誤訊息該怎麼辦 AWS Storage Gateway。

**注意**  
請務必使用最新的虛擬機器映像檔案或 Amazon Machine Image (AMI) 版本部署新的閘道。如果您嘗試啟用使用過期 AMI 的閘道，將會收到內部錯誤。
下載 AMI 之前，請務必選取您要部署的正確閘道類型。每個閘道類型的 .ova 檔案和 AMIs 不同，且不可互換。

## 解決使用公有端點啟用閘道時的錯誤
<a name="w2ab1c40c15b9"></a>

若要解決使用公有端點啟用閘道時的啟用錯誤，請執行下列檢查和組態。

### 檢查所需的連接埠
<a name="w2ab1c40c15b9b5"></a>

對於內部部署的閘道，請檢查本機防火牆上的連接埠是否已開啟。對於部署在 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
```

若要確認閘道本身可以到達端點，請存取閘道的本機 VM 主控台 （適用於內部部署的閘道）。或者，您可以 SSH 到閘道的執行個體 （適用於部署在 Amazon EC2 上的閘道）。然後，執行網路連線測試。確認測試傳回 `[PASSED]`。如需詳細資訊，請參閱[測試您的閘道連線至網際網路](https://docs.aws.amazon.com/storagegateway/latest/vgw/manage-on-premises-common.html#MaintenanceTestGatewayConnectivity-common)。

**注意**  
閘道主控台的預設登入使用者名稱為 `admin`，預設密碼為 `password`。

### 確保防火牆安全不會修改從閘道傳送至公有端點的封包
<a name="w2ab1c40c15b9b7"></a>

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
```

**注意**  
將*區域*取代為您的 AWS 區域。

如果沒有進行中的 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 檢查或深度封包檢查。

### 檢查閘道時間同步
<a name="w2ab1c40c15b9b9"></a>

時間過長可能會導致 SSL 交握錯誤。對於內部部署閘道，您可以使用閘道的本機 VM 主控台來檢查閘道的時間同步。時間扭曲不應大於 60 秒。如需詳細資訊，請參閱[ your Gateway VM Time](https://docs.aws.amazon.com/storagegateway/latest/vgw/MaintenanceTimeSync-hyperv.html)。

**系統時間管理**選項不適用於在 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 端點啟用閘道時的錯誤
<a name="w2ab1c40c15c11"></a>

若要解決使用 Amazon Virtual Private Cloud (Amazon VPC) 端點啟用閘道時的啟用錯誤，請執行下列檢查和組態。

### 檢查所需的連接埠
<a name="w2ab1c40c15c11b5"></a>

確定本機防火牆 （適用於內部部署的閘道） 或安全群組 （適用於 Amazon EC2 中部署的閘道） 內的必要連接埠已開啟。將閘道連線至 Storage Gateway VPC 端點所需的連接埠，與將閘道連線至公有端點時所需的連接埠不同。連線至 Storage Gateway VPC 端點需要下列連接埠：
+ TCP 443
+ TCP 1026
+ TCP 1027
+ TCP 1028
+ TCP 1031
+ TCP 2222

如需詳細資訊，請參閱建立 Storage Gateway 的 VPC 端點[建立 Storage Gateway 的 VPC 端點](https://docs.aws.amazon.com/storagegateway/latest/vgw/gateway-private-link.html#create-vpc-endpoint)。

此外，請檢查連接至 Storage Gateway VPC 端點的安全群組。連接至端點的預設安全群組可能不允許必要的連接埠。建立新的安全群組，允許來自閘道 IP 地址範圍的流量通過所需的連接埠。然後，將該安全群組連接到 VPC 端點。

**注意**  
使用 [Amazon VPC 主控台](https://console.aws.amazon.com//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 端點的封包
<a name="w2ab1c40c15c11b7"></a>

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 檢查或深度封包檢查。

### 檢查閘道時間同步
<a name="w2ab1c40c15c11b9"></a>

時間過長可能會導致 SSL 交握錯誤。對於內部部署閘道，您可以使用閘道的本機 VM 主控台來檢查閘道的時間同步。時間扭曲不應大於 60 秒。如需詳細資訊，請參閱[ your Gateway VM Time](https://docs.aws.amazon.com/storagegateway/latest/vgw/MaintenanceTimeSync-hyperv.html)。

**系統時間管理**選項不適用於在 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 代理並確認相關聯的安全群組設定
<a name="w2ab1c40c15c11c11"></a>

啟用之前，請檢查 Amazon EC2 上的 HTTP 代理是否已在內部部署閘道 VM 上設定為連接埠 3128 上的 Squid 代理。在此情況下，請確認下列事項：
+ 連接至 Amazon EC2 上 HTTP 代理的安全群組必須具有傳入規則。此傳入規則必須允許來自閘道 VM IP 地址之連接埠 3128 上的 Squid 代理流量。
+ 連接至 Amazon EC2 VPC 端點的安全群組必須具有傳入規則。這些傳入規則必須允許連接埠 1026-1028、1031、2222 和 443 上來自 Amazon EC2 上 HTTP 代理的 IP 地址的流量。

## 解決使用公有端點啟用閘道，且相同 VPC 中有 Storage Gateway VPC 端點時的錯誤
<a name="w2ab1c40c15c13"></a>

若要解決在相同 VPC 中有 Amazon Virtual Private Cloud (Amazon VPC) 點時，使用公有端點啟用閘道時的錯誤，請執行下列檢查和組態。

### 確認 Storage Gateway VPC 端點上未啟用**啟用私有 DNS 名稱**設定
<a name="w2ab1c40c15c13b5"></a>

如果啟用**私有 DNS 名稱**已啟用，您就無法啟用從該 VPC 到公有端點的任何閘道。

**若要停用私有 DNS 名稱選項：**

1. 開啟 [Amazon VPC 主控台](https://console.aws.amazon.com//vpc/)。

1. 在導覽窗格中選擇**端點**。

1. 選擇 Storage Gateway VPC 端點。

1. 選擇**動作**。

1. 選擇**管理私有 DNS 名稱**。

1. 針對**啟用私有 DNS 名稱**，清除**此端點的啟用**。

1. 選擇**修改私有 DNS 名稱**以儲存設定。