如何在 SFTP 服务器与 Azure Blob 之间传输数据?

How to transfer data between SFTP server to Azure Blob?

我在 SFTP 服务器 A 上有数据,第二个服务器 B 是 Azure Blob 存储。我想将数据从服务器A传输到服务器B,请问如何实现?我可以使用 Azcopy 之类的工具来执行此操作吗?

您可以使用 SFTP 客户端连接到 Azure 存储帐户的 Blob 存储端点,然后上传和下载文件。

先决条件:

  • 标准通用 v2 或高级块 blob 存储帐户,冗余选项设置为 LRS 或 ZRS。

  • 如果您从本地网络连接,请确保打开端口 22。

注册功能:

在启用 SFTP 支持之前,您必须通过订阅注册 SFTP 功能。

  1. 登录Azure portal

  2. 打开您订阅的配置页面。

  3. 设置下,select 预览功能

  4. 预览功能页面中,select SFTP 支持 Azure Blob 存储 功能,然后 select 注册.

验证功能注册:

在继续本文中的其他步骤之前,验证该功能是否已注册。

  1. 打开您订阅的预览功能页面。

  2. 找到 SFTP 对 Azure Blob 存储的支持 功能并确保 Registered 出现在 状态列。

启用 SFTP 支持:

  1. Azure portal 中,导航到您的存储帐户。

  2. 设置下,select SFTP.

注意: 仅当帐户的分层命名空间功能已启用时才会出现此选项。要启用分层命名空间功能,请参阅 here

  1. Select 启用 SFTP.

注意: 如果 SFTP 配置页面中没有出现本地用户,您需要至少添加其中一个用户,方法如下:

  1. Azure portal 中,导航到您的存储帐户。

  2. 设置下,selectSFTP,然后select添加本地用户.

  1. 添加本地用户配置窗格中,添加用户名,然后select您希望将哪些身份验证方法与该本地用户相关联.您可以关联密码和/或 SSH 密钥。

  1. Select 下一步 打开配置窗格的 容器权限 选项卡和 select 您希望此本地用户可用的容器。

  2. 然后,select你想让这个本地用户执行哪些类型的操作。

  3. Select 添加按钮 添加本地用户。

连接 SFTP 客户端:

您可以使用任何 SFTP 客户端进行安全连接,然后传输文件。以下屏幕截图显示了一个 Windows PowerShell 会话,它使用 Open SSH 和密码身份验证进行连接,然后上传名为 logfile.txt.

的文件

传输完成后,您可以在 Azure 门户中查看和管理文件。