

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

# 对 SFTP 连接和传输问题进行故障排除
<a name="sftp-connectivity-issues"></a>

本节介绍了 SFTP 连接和文件传输问题的可能解决方案。

**Topics**
+ [对 SFTP 连接问题进行故障排除](#connection-issues)
+ [对 SFTP 客户端问题进行故障排除](#sftp-client-troubleshooting-issues)
+ [文件上传问题进行故障排除](#file-upload-issues)
+ [排除 VPC 出口类型 SFTP 连接器问题](#vpc-connector-connectivity-issues)

## 对 SFTP 连接问题进行故障排除
<a name="connection-issues"></a>

**描述**

您的 SFTP 客户端无法启动连接。此问题可能持续发生，也可能间歇性发生。例如，您可能会在 SFTP 客户端调试日志中看到以下事件序列：

```
sftp -vvv username@1.1.1.1
.................................
debug1: Local version string ...........
kex_exchange_identification: read: Connection reset by peer
Connection reset by 1.1.1.1 port 22
Connection closed.
```

**原因**

在极端情况下，零字节 TCP ACK（无数据的 ACK）（也称为三次握手）要么被丢弃，要么被延迟。

**解决方案**

作为一种解决方法，Transfer Family 提供了一种解决方案，该解决方案使用不同的配置来解决此问题，但可能会导致与旧客户端的兼容性问题。因此，此解决方案仅在端口 2223 上可用。

在 VPC 中创建 Transfer Family 服务器的过程中（[在虚拟私有云中创建服务器](create-server-in-vpc.md)），当您指定安全组时，请将 SSH 流量配置为使用端口 2223。

## 对 SFTP 客户端问题进行故障排除
<a name="sftp-client-troubleshooting-issues"></a>

中描述了 SFTP 客户端消息。[SFTP 消息](transfer-file.md#sftp-transfer-activity-types)解决 SFTP 客户端问题的最佳方法是查看 SFTP 客户端日志，如有必要，请联系您的网络管理员。

## 文件上传问题进行故障排除
<a name="file-upload-issues"></a>

本节介绍以下文件上传问题的可能解决方案。

**Topics**
+ [对 Amazon S3 文件上传错误进行故障排除](#random-access-writes-s3)
+ [对无法读取的文件名称进行故障排除](#non-utf8-issues)

### 对 Amazon S3 文件上传错误进行故障排除
<a name="random-access-writes-s3"></a>

**描述**

当您尝试使用 Transfer Family 将文件上传到 Amazon S3 存储空间时，您会收到如下错误消息：AWS Transfer 不支持对 S3 对象进行随机访问写入。

**原因**

当您使用 Amazon S3 作为服务器存储空间时，Transfer Family 不支持单次传输的多个连接。

**解决方案**

如果您的 Transfer Family 服务器使用 Amazon S3 进行存储，请禁用任何提及使用多个连接进行单次传输的客户端软件选项。

### 对无法读取的文件名称进行故障排除
<a name="non-utf8-issues"></a>

**描述**

您会在上传的某些文件中看到文件名已损坏。用户有时会在 FTP 和 SFTP 传输中遇到问题，这些问题会破坏文件名中的某些字符，例如变音符号、重音字母或某些脚本，例如中文或阿拉伯语。

**原因**

尽管 FTP 和 SFTP 协议允许客户端协商文件名的字符编码，但 Amazon S3 和 Amazon EFS 却不允许。相反，它们需要 UTF-8 字符编码。因此，某些字符无法正确呈现。

**解决方案**

要解决此问题，请查看您的客户端应用程序中的文件名字符编码，并确保将其设置为 UTF-8。

## 排除 VPC 出口类型 SFTP 连接器问题
<a name="vpc-connector-connectivity-issues"></a>

如果您在使用 VPC 出口类型 SFTP 连接器时遇到问题，请检查以下内容：

### 连接器状态为 “待定”
<a name="vpc-connector-pending-status"></a>

**描述**

您的 VPC 出口类型连接器在创建后的几分钟内仍处于待处理状态，并 TestConnection 返回 “连接器不可用”。

**原因**

VPC 连接器的 DNS 解析在创建后可能需要几分钟才能完成。

**解决方案**

在尝试传输文件之前，请等待连接器状态变为 “活动”。这是 VPC 出口类型连接器的正常行为。

### 连接超时
<a name="vpc-connector-timeouts"></a>

**描述**

尝试连接 SFTP 服务器时，您的 VPC 出口类型连接器超时。

**原因**

安全组可能不允许您的资源网关子网和目标 SFTP 服务器之间的端口 22 上的流量。

**解决方案**

确认安全组允许您的资源网关子网和目标 SFTP 服务器之间的端口 22 上的流量。

### 资源配置错误
<a name="vpc-resource-configuration-errors"></a>

**描述**

由于资源配置问题，您的 VPC 出口类型连接器无法连接。

**原因**

资源配置可能指向错误的 IP 地址或 DNS 名称，或者资源网关可能与您的 SFTP 服务器（用于私有终端节点）不在同一 VPC 中。

**解决方案**

确保您的资源配置指向正确的 IP 地址或 DNS 名称，并且资源网关与您的 SFTP 服务器（用于私有终端节点）位于同一个 VPC 中。有关更多信息，请参阅《Amazon VPC Lattice User Guide》**中的 [Resource configurations](https://docs.aws.amazon.com/vpc-lattice/latest/ug/resource-configuration.html)。

### 公共端点问题
<a name="vpc-public-endpoint-issues"></a>

**描述**

您的 VPC 出口类型连接器无法连接到公有 SFTP 终端节点。

**原因**

对于公共终端节点，您必须在资源配置中使用 DNS 名称（而不是 IP 地址），并且您的 VPC 必须具有用于出站互联网访问的 NAT 网关。

**解决方案**

确保您在资源配置中使用的是 DNS 名称，而不是 IP 地址。确认您的 VPC 具有用于出站互联网访问的 NAT 网关。

### 可用区问题
<a name="vpc-az-availability-issues"></a>

**描述**

由于可用区域限制，您无法创建资源网关。

**原因**

资源网关要求子网位于至少 2 个可用区，但并非所有可用区都支持 VPC Lattice。

**解决方案**

查看您所在地区的 VPC Lattice 支持的可用区，并确保您的子网位于至少 2 个支持的可用区。